Seite 1 von 1

Problem mit Template: $lang-Variabeln werden nicht ersetzt

Verfasst: 29.09.2003 23:09
von mad-boy
Hi,
ich verstehe bei dem Templatesystem momentan leider nur Bahnhof und finde mich nur mühselig zurecht. Nun habe ich das Problem eine Seite einbauen zu müssen die mit diesem Template funktioniert und vor allem eben auch Multilingual ist.
Ich habe das ganze nun soweit das ich das Template habe und der Header und Footer wird richtig angezeigt. Der Mainteil des Templates wird zwar angezeigt, aber anstelle der Spacer {...} wird einfach garnichts angezeigt, der entsprechende Teil meines Scripts lautet wie folgt:

Code: Alles auswählen

if($mode=="concept") {
 global $userdata, $template, $lang, $phpbb_root_path, $phpEx;

 $template->set_filenames(array(
  'body' => 'aboutconcept.tpl')
 );
 $template->assign_vars(array(
  'own_CONCEPTHEAD' => $lang['own_concepthead'],
  'own_CONCEPTTEXT' => $lang['own_concepttext'])
 );
 $template->pparse('body');
}
Was ist daran falsch? Habe ich was vergessen?

Außerdem habe ich noch ein Problem mit $userdata = session_pagestart($user_ip, "0"); da wo ich jetzt "0" stehen habe kommt ja die PageID hin, da ich aber ja nun eine komplett neue Page habe, gibts da auch keine ID, wo muss ich diese definieren und wie binde ich die richtig ein?

Danke schonmal für eure Hilfe!

Gruss, mad-boy

Verfasst: 29.09.2003 23:15
von PhilippK
Um das Prob etwas einzugrenzen, versuch mal folgenden Code:

Code: Alles auswählen

 $template->assign_vars(array( 
  'own_CONCEPTHEAD' => 'text1', 
  'own_CONCEPTTEXT' => 'text2') 
 );
Bei der PageID lässt du am besten die 0 stehen - das passt für den Anfang.

Gruß, Philipp

Verfasst: 29.09.2003 23:24
von Gast
Hi,
tatsache, mit der direkten Variante funktionierts! Muss ich die $lang Variabeln noch irgendwo includen? Oder muss ich ihm irgendwo sagen auf welches Lang-File er zugreifen soll? (also main o.ä.)

Verfasst: 29.09.2003 23:34
von PhilippK
Normalerweise sollten die Sprachvariablen in den Zeilen

Code: Alles auswählen

$userdata = session_pagestart($user_ip, 0);
init_userprefs($userdata);
geladen werden.

Gruß, Philipp

Verfasst: 29.09.2003 23:41
von Gast
OK, das war der Fehler! Ich habe "0" anstatt einfach 0 geschrieben, also ich hab ihm die 0 als ein String übergeben! Geht jetzt, danke! :)