Programmierung von Style

Alles zu Styles, Templates, Icons und Smilies für phpBB 2.0, sowie allgemeine Designfragen zur Integration von phpBB in bestehende Websites.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
higidi
Mitglied
Beiträge: 6
Registriert: 23.09.2003 20:03
Wohnort: Grefrath, Germany
Kontaktdaten:

Programmierung von Style

Beitrag von higidi »

Hallo Leute,

hab ein kleines Problem. Möchte für mein Forum ein eingenes Layout (Style) entwickeln. Habe mich jetzt ein klein wenig in
PHPbb
eingearbeitet. Unter dem Ordner Template, gibt es dann in weiteren Ordner die ganzen Templates. Momentan bin ich dabei, die Dateien von einem Template zu verändern, um ein andere Strukturieren hin zu bekommen! Meine Frage ist jetzt. Ich habe unter dem Hauptverzeichnis den Ordner "language" gefunden, wo einzelne Sätze der Sprache angepasst sind. Das alles ist ein Array. Diese einzelen Arrays werden immer wieder in den Templates angesprochen bzw. ausgegeben.

Code: Alles auswählen

{TOTAL_POSTS}
Dies nur als Beispiel. Diese einträge findet man dann auch in der Datei
./language/german/lang_main.php
wieder mit der Bezeichnung. Nur manchmal werden die mit einem
L_*
davor aufgerufen.
Wollte fragen, was genau der Unterschied dabei ist und ob es da vielleicht eine Regel zu gibt, die ich alleine aus dem Code heraus nicht erkennen kann (vielleicht weil ich dann doch zu wenig Ahnung davon habe). Gibt es überhaupt eine Doku dazu, wie das Forum programmiert ist oder wie man ein eingenes Layout erstellt?

Kann mir da von euch vielleicht einer weiter helfen???
#############################
Was hat ein Pinguin und Linux gemeinsam?
Signaturen dürfen maximal 3 Zeilen lang sein
Benutzeravatar
Schumi
Ehemaliges Teammitglied
Beiträge: 4925
Registriert: 07.10.2002 12:37

Re: Programmierung von Style

Beitrag von Schumi »

Zunächst mal ein Grundkurs, wie du Variablen ins Template integrieren kannst.

Code: Alles auswählen

$template->assign_vars(array(
		'TOTAL_POSTS' => $total_posts, 
		
		'L_IRGENDWAS' => $lang['wie_auch_immer'])
	);
{TOTAL_POSTS} ist also die in der zugehörigen php-Datei zugeordnete Variable.
Das der language-Array immer mit {L_xxxx} angesprochen wird, ist nur eine Sache der Übersichtlichkeit.
higidi
Mitglied
Beiträge: 6
Registriert: 23.09.2003 20:03
Wohnort: Grefrath, Germany
Kontaktdaten:

Beitrag von higidi »

Und wo finde ich die Dateien, wo man dieser Variablen definiert? Alle Einträge mit einem

Code: Alles auswählen

L_xxx_xxx
finde ich also in einer der Languade Dateien und wo finde ich alle anderen Variablen. Wo werden diese definiert?
#############################
Was hat ein Pinguin und Linux gemeinsam?
Signaturen dürfen maximal 3 Zeilen lang sein
Benutzeravatar
Schumi
Ehemaliges Teammitglied
Beiträge: 4925
Registriert: 07.10.2002 12:37

Beitrag von Schumi »

Alle Variablme werden mit

Code: Alles auswählen

$template->assign_vars
gesetzt und zwar in der entsprechenden .php-Datei. Für die Mitgliederliste also z.B. memberlist.php.
und wo finde ich alle anderen Variablen
Alle Variablen musst du erst selbst erstellen, also z.B.

Code: Alles auswählen

$user_posts = $userdata['user_posts'];
Alle Einträge mit einem L_xxx_xxx
finde ich also in einer der Languade Dateien
Das L_ ist nicht festgelegt, du kannst die Templatevariablen auch anders nennen.
higidi
Mitglied
Beiträge: 6
Registriert: 23.09.2003 20:03
Wohnort: Grefrath, Germany
Kontaktdaten:

Beitrag von higidi »

Gibet hier irgendwann auch mal nee Doku zu???
#############################
Was hat ein Pinguin und Linux gemeinsam?
Signaturen dürfen maximal 3 Zeilen lang sein
higidi
Mitglied
Beiträge: 6
Registriert: 23.09.2003 20:03
Wohnort: Grefrath, Germany
Kontaktdaten:

Beitrag von higidi »

Jetzt habe ich das alles soweit kapiert. Hier meine letzte Frage:

Code: Alles auswählen

$template->assign_vars(array(
	'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
	'L_EMAIL' => $lang['Email'],
	'L_WEBSITE' => $lang['Website'],
	'L_FROM' => $lang['Location'],
	'L_ORDER' => $lang['Order'],
	'L_SORT' => $lang['Sort'],
	'L_SUBMIT' => $lang['Sort'],
	'L_AIM' => $lang['AIM'],
	'L_YIM' => $lang['YIM'],
	'L_MSNM' => $lang['MSNM'],
	'L_ICQ' => $lang['ICQ'], 
	'L_JOINED' => $lang['Joined'], 
	'L_POSTS' => $lang['Posts'], 
	'L_PM' => $lang['Private_Message'], 

	'S_MODE_SELECT' => $select_sort_mode,
	'S_ORDER_SELECT' => $select_sort_order,
	'S_MODE_ACTION' => append_sid("memberlist.$phpEx"))
);
Das hier ist z.B. der Code für das definieren von Variablen aus der memberlist.php. Links steht der Name mit der man das bestimmte Array ansprechen kann, aber woher weiß ich was rechts vom pfeil stehen muss, gibet da eine liste mit funktionen.
Vielleicht sollte ich dir auch mal mein Problem beschreiben. Ich wollte die Onlinetext (da wo angezeigt wird, wieviel einträge insgesamt, wieviel user online, wer ist online, usw.) abändern. Hab die entsprechenden Dateíen gefunden. Anscheind werden da aber nicht nur die Zahlen ausgegeben, sondern der komplette Text mit Zahlen ausgegeben. Jetzt wollte ich den Text verändern. Hier mal ein kleiner Auschnitt von dieser Online Geschichte:

Code: Alles auswählen

<table width="100%" cellpadding="3" cellspacing="1" border="0" class="forumline">
  <tr> 
	<td class="catHead" colspan="2" height="28"><span class="cattitle"><a href="{U_VIEWONLINE}" class="cattitle">{L_WHO_IS_ONLINE}</a></span></td>
  </tr>
  <tr> 
	<td class="row1" align="center" valign="middle" rowspan="2"><img src="templates/subSilver/images/whosonline.gif" alt="{L_WHO_IS_ONLINE}" /></td>
	<td class="row1" align="left" width="100%"><span class="gensmall">{TOTAL_POSTS}<br />{TOTAL_USERS}<br />{NEWEST_USER}</span>
	</td>
  </tr>
  <tr> 
	<td class="row1" align="left"><span class="gensmall">{TOTAL_USERS_ONLINE} &nbsp; [ {L_WHOSONLINE_ADMIN} ] &nbsp; [ {L_WHOSONLINE_MOD} ]<br />{RECORD_USERS}<br />{LOGGED_IN_USER_LIST}</span></td>
  </tr>
</table>
Hier stehen nur diese
{L_WHO_IS_ONLINE}
Teil drin und halt die ohne (
{TOTAL_POSTS}
). Meine Frage, ist jetzt noch einmal ganz genau, wo kann ich den Inhalt ändern (von beiden Typen)!

Danke schon einmal im vorraus!
#############################
Was hat ein Pinguin und Linux gemeinsam?
Signaturen dürfen maximal 3 Zeilen lang sein
Benutzeravatar
Schumi
Ehemaliges Teammitglied
Beiträge: 4925
Registriert: 07.10.2002 12:37

Beitrag von Schumi »

higidi hat geschrieben:aber woher weiß ich was rechts vom pfeil stehen muss, gibet da eine liste mit funktionen.
Das ist in jeder Datei unterschiedlich. Falls du nicht genau weißt, was du genau ändern möchtest, gibt es aber eigentlich keinen Grund, dort etwas zu ändern.
Meine Frage, ist jetzt noch einmal ganz genau, wo kann ich den Inhalt ändern (von beiden Typen)!
Falls du nur den Text ändern willst, suchst du einfach in der /language/lang_german/lang_main.php nach dem Text und änderst ihn dort. Suche in der .php-Datei (in diesem Fall index.php) nach

Code: Alles auswählen

L_WHO_IS_ONLINE
und du findest rechts vom => die language-Variable.
higidi
Mitglied
Beiträge: 6
Registriert: 23.09.2003 20:03
Wohnort: Grefrath, Germany
Kontaktdaten:

Beitrag von higidi »

Aha,

vielen Dank, das hat mir sehr weiter geholfen!
#############################
Was hat ein Pinguin und Linux gemeinsam?
Signaturen dürfen maximal 3 Zeilen lang sein
higidi
Mitglied
Beiträge: 6
Registriert: 23.09.2003 20:03
Wohnort: Grefrath, Germany
Kontaktdaten:

Beitrag von higidi »

Jo, hat auch soweit funktioniert. Is zwar ein bisle dumm immer nach den einträgen durch die dateien zu suchen, aber et geht. nur jetzt hab ich mal neen problem. kann folgenden aufruf in den templates in keiner datei finden:

Code: Alles auswählen

{TOTAL_USERS_ONLINE}
Das muss auch irgend etwas zusammengestricktes sein, weil das sin eigentlich zwei dinge auf einmal!
#############################
Was hat ein Pinguin und Linux gemeinsam?
Signaturen dürfen maximal 3 Zeilen lang sein
Antworten

Zurück zu „phpBB 2.0: Styles, Templates und Grafiken“