Seite 1 von 2

Mehrere Templates - Auswahl aber beschränkt

Verfasst: 23.07.2003 10:57
von RogerM
Ich habe mich gefragt, ob es möglich ist, dass die User bei der Registration z.B. ihr Land angeben müssen und aufgrund dieser Angabe dann bei den Templates aus einer Gruppe auswählen können. Pro Land (CH, D, AT) gäbe es dann jeweils zwei Templates. (Die anderen Länder-Templates können dann jeweils nicht ausgewählt werden.)

Oder gibt es eine einfachere Möglichkeit, den Usern jeweils zu ihrem Land passende Banner anzuzeigen?

Oder ist diese Idee zu abwägig?

(Falls im falschen Forum, sorry. Falls schonmal gefragt, sorry ;-))

Verfasst: 23.07.2003 11:02
von Acid
Beides wäre möglich.. ersteres wäre aber ein grösserer Aufwand.

Willst du jetzt nur verschiedene Banner pro User/land einstellen ? Welche Banner ?

Verfasst: 23.07.2003 11:09
von RogerM
Acid hat geschrieben:Willst du jetzt nur verschiedene Banner pro User/land einstellen ? Welche Banner ?
Wir haben in unserem Forum einen Werbebanner (Partnerprgramm) eingebaut. Nun würde ich halt gerne, dass bei einem User aus Österreich ein Partnerprogramm aus Österreich zum Zuge kommt. (Oder ein von uns speziell eingerichteter Banner gezeigt wird) Wie man das genau umsetzen müsste, wäre mir egal. Es ist auch nur so eine spontane Idee, da unser Forum hauptsächlich User aus CH, DE, AT hat und wir für die versch. Länder bereits unterschiedliche Hauptseiten haben. (Das Forum aber gemeinsam unter einer .net Domain genutzt wird)

Verfasst: 23.07.2003 11:14
von Acid
Naja, du könntest das Bannerscript, das ja sicherlich in overall_header.tpl (oder einer anderen tpl) eingetragen ist, mit einer Konstanten ersetzen (z.B. {BANNER}), die dann z.B. in der page_header.php definiert wird ('Banner' => $bannerscript,). Vor dem templatearray setzt du jetzt eine Abfrage ein, die je nach User verschiedene Banner anzeigt..
if ( $userdata['?'] == ? )
{
$bannerscript = AUT Banner;
}
else if ( $userdata['?'] == ? )
{
$bannerscript = CH Banner;
}
else if ( $userdata['?'] == ? )
{
$bannerscript = DE Banner;
}
else
{
$bannerscript = allgemeiner Banner;
}
Ich hab da jetzt Fragezeichen eingetragen, weil ich nicht genau weiss, was du abfragen willst. Hast du bereits ein Ländernamen-Feld ins Profil eingetragen ?

Verfasst: 23.07.2003 11:18
von RogerM
Acid hat geschrieben:Hast du bereits ein Ländernamen-Feld ins Profil eingetragen ?
Ich habe noch nichts gemacht, da ich mich 1. nicht so gut damit auskenne und 2. die Idee erst gerade hatte.

Aber für das Ländernamen-Feld gibt es ja meines Wissens einen Mod, den man sicher dazu brauchen könnte. Wichtig wäre einfach, dass es sich um ein obligatorisches Feld handelt. (Am Besten mit Auswahl CH DE AT Rest) Aber das sollte doch das kleinere Problem sein. (Hoffentlich)

Verfasst: 23.07.2003 11:21
von Acid
www.acidjunky.de/extra/add_x_to_profile.zip
..versuch´s ma mit der Dropdown Variante (addfield_121.zip).
Zuerst die addfield_german.txt abarbeiten und dann noch die "dropdown" Anleitung.

Wenn´s Probleme gibt oder du nicht weiter weisst, melde dich wieder hier.. :)

Verfasst: 23.07.2003 11:22
von RogerM
Acid hat geschrieben:www.acidjunky.de/extra/add_x_to_profile.zip
..versuch´s ma mit der Dropdown Variante (addfield_121.zip).
Zuerst die addfield_german.txt abarbeiten und dann noch die "dropdown" Anleitung.

Wenn´s Probleme gibt oder du nicht weiter weisst, melde dich wieder hier.. :)
Vielen Dank, das werde ich mal heute abend ausprobieren.

Verfasst: 23.07.2003 16:24
von RogerM
Acid hat geschrieben:Vor dem templatearray setzt du jetzt eine Abfrage ein, die je nach User verschiedene Banner anzeigt..
ähm, sorry, wo genau?
Acid hat geschrieben:
if ( $userdata['?'] == ? )
{
$bannerscript = AUT Banner;
}
else if ( $userdata['?'] == ? )
{
$bannerscript = CH Banner;
}
else if ( $userdata['?'] == ? )
{
$bannerscript = DE Banner;
}
else
{
$bannerscript = allgemeiner Banner;
}
Ich habe nun ein DropDown Menü mit folgenden Einträgen: Leer, Deutschland, Österreich, Schweiz, Rest der Welt. Das Feld heisst jeweils anstelle von Music (wie in der Mod) "Country".

-->
if ( $userdata['Country'] == Österreich )
{
$bannerscript = AUT Banner;

...
?

Sorry, ich weiss ich bin nicht so bewandert in der ganzen Sache.

Verfasst: 24.07.2003 13:07
von Acid
Also das neue Feld in der "users" Tabelle heisst ja sicherlich user_country oder?
Die Eintragungen werden in dem Feld nicht als "Österreich", "Deutschland" usw. gespeichert, sondern als "3", "2" usw.

page_header.php
++FINDE++
$template->assign_vars(array(
'SITENAME' => $board_config['sitename'],
++DAVOR EINFÜGEN EINFÜGEN++
if ( $userdata['user_country'] == '2' ) //deutschland?
{
$banner = 'deutschland banner';
}
else if ( $userdata['user_country'] == '3' ) //österreich?
{
$banner = 'österreich banner';
}
else
{
$banner = 'banner der für gäste und für user die kein land ausgewählt haben angezeigt werden soll';
}
++FINDE++
$template->assign_vars(array(
'SITENAME' => $board_config['sitename'],
++DARUNTER EINFÜGEN++
'BANNER' => $banner,
Wenn du Probleme beim Eintragen des Banners hast (Fehlermeldungen), dann poste mal wie solch ein Bannerbefehl aussehen würde.

Verfasst: 24.07.2003 13:41
von RogerM
Acid hat geschrieben:Also das neue Feld in der "users" Tabelle heisst ja sicherlich user_country oder?
Die Eintragungen werden in dem Feld nicht als "Österreich", "Deutschland" usw. gespeichert, sondern als "3", "2" usw.
Dann muss ich aber beim einbauen etwas falsch gemacht haben. Denn ich habe bei einem Testuser einmal die Schweiz als Land eingestellt:

phpMyAdmin:

user_country: Schweiz

(bei den Usern die vor dem Einbau des Mod sich registrierten steht NULL, bei denen danach einfach nichts . (Die User können das Feld noch nicht sehen und somit auch noch nicht ausfüllen)

Ansonsten scheint es nun zu funktionieren. (Also jedenfalls wurde ein Banner angezeigt, wie er sollte. Nun muss ich wenn ich dazu komme nur noch das mit den verschiedenen Banner ansehen. Es sollte aber problemlos funktionieren.)

Vielen Dank Acid für deine Hilfe. Ich hoffe, dass ich nun bis auf weiteres alleine zurecht komme.