Seite 5 von 5

Re: Profilfeld

Verfasst: 19.06.2009 02:19
von blablubbb
Also ich finde das nicht so schön, wie ihr das alle regelt. Der name mit dem ihr vergleicht ist sprachspezifisch, das heißt automatisch, dass euer Forum nicht mehrsprachig sein kann und dass ihr Probleme mit Umlauten und ähnlichem bekommt. Hier eine sauberere Lösung:
Nehmen wir an, die Feld-Kennung heitßt "geschlecht" (nicht name!, der ist "Geschlecht"
für de und "Gender" für en...). Nun können wir folgendes machen:

Code: Alles auswählen

<!-- IF postrow.S_PROFILE_GESCHLECHT -->...
Die php-Funktion erzeugt immer die Feldkennung in Grußbuchstaben. Will man den Feldnamen oder den Wert, so kann man einfach im Template

Code: Alles auswählen

{postrow.S_PROFILE_GESCHLECHT_NAME}
und

Code: Alles auswählen

{postrow.S_PROFILE_GESCHLECHT_VALUE}
verwenden. Zusätzlich gibt es noch

Code: Alles auswählen

{postrow.S_PROFILE_GESCHLECHT_TYPE}
und

Code: Alles auswählen

{postrow.S_PROFILE_GESCHLECHT_EXPLAIN}
und wenn man den Inhalt verarbeiten will, so kann man in includes/functions_profile_fields.php eine Funktion definieren, und dann bei etwa Zeile 400 die Funktion einbinden, indem man nach

Code: Alles auswählen

$tpl_fields['row'] += array(
					'PROFILE_' . strtoupper($ident) . '_VALUE'	=> $value,
					'PROFILE_' . strtoupper($ident) . '_TYPE'	=> $ident_ary['data']['field_type'],
					'PROFILE_' . strtoupper($ident) . '_NAME'	=> $ident_ary['data']['lang_name'],
					'PROFILE_' . strtoupper($ident) . '_EXPLAIN'=> $ident_ary['data']['lang_explain'],
dann einfach etwas einfügt wie z.B.:

Code: Alles auswählen

					'PROFILE_' . strtoupper($ident) . '_MEINEAUSGABE'	=> meinefunktion($value),
Dann kann beispielsweise

Code: Alles auswählen

{postrow.S_PROFILE_GESCHLECHT_MEINEAUSGABE}
ein irgendwie verarbeiteter Wert sein (beispielsweise auch über eine DB-Abfrage) und den Bildnamen oder den kompletten html-code für das Bild oder was man auch immer haben will enthalten... (z.B.: Vereinslogo bei Fußballverein aus DB raussuchen)

Ich schweife ein wenig ab, aber prinzipiell sollte jetzt klar sein, wie man solche Sachen regeln kann, wenn man ein mehrsprachiges Forum hat.

Re: Profilfeld

Verfasst: 21.07.2009 15:45
von arty4u
Gibt es nun eine Fertigen Code den man übernehmen kann?