Menubar-Links im Header (subSilver2 basiert)

Alles zu Styles, Templates, Icons und Smilies für phpBB 3.0.x, sowie allgemeine Designfragen zur Integration von phpBB in bestehende Websites.
phpBB Styles Demo
Forumsregeln
Bei Style spezifischen Fragen ist der Stylename und die Downloadquelle des Styles erforderlich, besser noch die URL vom betroffenen Forum.
Antworten
Benutzeravatar
Jadoo
Mitglied
Beiträge: 54
Registriert: 27.01.2006 20:29
Kontaktdaten:

Menubar-Links im Header (subSilver2 basiert)

Beitrag von Jadoo »

Hallo,

ich konnte über die Suche zwar diverse Themen finden, jedoch keine passende Antwort bzw. Richtung zur Lösung meines aktuellen Problems.

Ich nutze in meinem derzeitigen Forum ein Template basierend auf SubSilver - habe lediglich einige Grafiken und Farben geändert. Dasselbe bastel ich gerade für ein Style basierend auf subSilver2 (da ich vorhabe, auf phpBB3 zu wechseln). So weit so gut, bin ich nun bei der Bearbeitung der overall_header angelangt.

Ich bin auch schon so weit gekommen, alles meinen Wünschen entsprechend abzuändern. Was mir allerdings noch Probleme bereitet ist folgende Tabelle:

Code: Alles auswählen

	<div id="menubar">
		<table width="100%" cellspacing="0">
		<tr>
			<td class="genmed">
<!-- IF not S_IS_BOT --><a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_LOGIN_LOGOUT}</a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF U_RESTORE_PERMISSIONS --><a href="{U_RESTORE_PERMISSIONS}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_RESTORE_PERMISSIONS}</a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF S_BOARD_DISABLED and S_USER_LOGGED_IN --><span style="color: red;">{L_BOARD_DISABLED}</span>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF S_USER_LOGGED_IN --><a href="{U_PROFILE}"><img src="{T_THEME_PATH}/images/icon_mini_profile.gif" width="12" height="13" alt="*" /> {L_PROFILE}</a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF not S_IS_BOT --><!-- IF S_USER_LOGGED_IN --><!-- IF S_DISPLAY_PM --><a href="{U_PRIVATEMSGS}"><img src="{T_THEME_PATH}/images/icon_mini_message.gif" width="12" height="13" alt="*" /> {PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- ELSEIF S_REGISTER_ENABLED --><a href="{U_REGISTER}"><img src="{T_THEME_PATH}/images/icon_mini_register.gif" width="12" height="13" alt="*" /> {L_REGISTER}</a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF not S_IS_BOT --><!-- IF S_DISPLAY_MEMBERLIST --><a href="{U_MEMBERLIST}"><img src="{T_THEME_PATH}/images/icon_mini_members.gif" width="12" height="13" alt="*" /> {L_MEMBERLIST}</a>&nbsp;&nbsp;<!-- ENDIF -->

<a href="{U_FAQ}"><img src="{T_THEME_PATH}/images/icon_mini_faq.gif" width="12" height="13" alt="*" /> {L_FAQ}</a>

				<!-- ENDIF -->
			</td>
			<td class="genmed" align="{S_CONTENT_FLOW_END}">
<!-- IF S_DISPLAY_SEARCH -->&nbsp;&nbsp;<a href="{U_SEARCH}"><img src="{T_THEME_PATH}/images/icon_mini_search.gif" width="12" height="13" alt="*" /> {L_SEARCH}</a><!-- ENDIF -->

				<!-- ENDIF -->
			</td>
		</tr>
		</table>
	</div>
Wie man sehen kann, habe ich die Reihenfolge der einzelnen Links schon etwas abgeändert. Die gewünschte Reihenfolge wäre allerdings folgende:

Eingeloggt:

Persönlicher Bereich - Nachrichten - Mitglieder - FAQ - Suche - hier evtl. eigene Links

und ganz rechts soll der Link zum Ausloggen hin.

Ausgeloggt:

FAQ - Suche - hier evtl. eigene Links

und ganz rechts Login + Registrieren

Ich gehe davon aus, dass es etwas mit den ganzen Forks (IF ... ) zu tun hat und man dort vorsichtig mit der Reihenfolge sein muss, um nichts durcheinanderzubringen (ansonsten erscheint immer nur eine Fehlermeldung:)
Parse error: syntax error, unexpected $end in .../includes/template.php(614) : eval()'d code on line 189
Für den eingeloggten Bereich habe ich es schon fast geschafft mit der Reihenfolge. Alles hat gut ausgesehen, bis ich mich mal ausgeloggt habe. Da gab es auf einmal nur noch den Link zur Registrierung ganz links. Zur Veranschaulichung hier mal Screens dazu:

[ externes Bild ]

[ externes Bild ]

Und so sieht der Code aus, bei dem das obige Problem auftritt:

Code: Alles auswählen

	<div id="menubar">
		<table width="100%" cellspacing="0">
		<tr>
			<td class="genmed">

<!-- IF U_RESTORE_PERMISSIONS --><a href="{U_RESTORE_PERMISSIONS}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_RESTORE_PERMISSIONS}</a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF S_BOARD_DISABLED and S_USER_LOGGED_IN --><span style="color: red;">{L_BOARD_DISABLED}</span>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF S_USER_LOGGED_IN --><a href="{U_PROFILE}"><img src="{T_THEME_PATH}/images/icon_mini_profile.gif" width="12" height="13" alt="*" /> {L_PROFILE}</a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- IF not S_IS_BOT --><!-- IF S_USER_LOGGED_IN --><!-- IF S_DISPLAY_PM --><a href="{U_PRIVATEMSGS}"><img src="{T_THEME_PATH}/images/icon_mini_message.gif" width="12" height="13" alt="*" /> {PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a>&nbsp;&nbsp;<!-- ENDIF -->



<!-- IF not S_IS_BOT --><!-- IF S_DISPLAY_MEMBERLIST --><a href="{U_MEMBERLIST}"><img src="{T_THEME_PATH}/images/icon_mini_members.gif" width="12" height="13" alt="*" /> {L_MEMBERLIST}</a>&nbsp;&nbsp;<!-- ENDIF -->

<a href="{U_FAQ}"><img src="{T_THEME_PATH}/images/icon_mini_faq.gif" width="12" height="13" alt="*" /> {L_FAQ}</a>

<!-- IF S_DISPLAY_SEARCH -->&nbsp;&nbsp;<a href="{U_SEARCH}"><img src="{T_THEME_PATH}/images/icon_mini_search.gif" width="12" height="13" alt="*" /> {L_SEARCH}</a><!-- ENDIF -->

				<!-- ENDIF -->
			</td>
			<td class="genmed" align="{S_CONTENT_FLOW_END}">
			
<!-- IF not S_IS_BOT --><a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_LOGIN_LOGOUT}</a>&nbsp;&nbsp;<!-- ENDIF -->
			
<!-- ELSEIF S_REGISTER_ENABLED --><a href="{U_REGISTER}"><img src="{T_THEME_PATH}/images/icon_mini_register.gif" width="12" height="13" alt="*" /> {L_REGISTER}</a>&nbsp;&nbsp;<!-- ENDIF -->

				<!-- ENDIF -->
			</td>
		</tr>
		</table>
	</div>
Weiß jemand woran das liegt bzw. was ich machen könnte?
LG Jadoo
Benutzeravatar
Jadoo
Mitglied
Beiträge: 54
Registriert: 27.01.2006 20:29
Kontaktdaten:

Re: Menubar-Links im Header (subSilver2 basiert)

Beitrag von Jadoo »

Hallo zusammen,

ich versuche jetzt schon eine ganze Weile, diesen Tabellenblock anzupassen. Ganz vorsichtig jeden Eintrag an eine andere Position, dann habe ich es auch mal mit einem komplett neuen Block versucht. Es haut nicht hin, ständig die bereits oben genannte Fehlermeldung mit jeweils anderer Zeilen-Nr.

Habe sowohl dieses Forum als auch das Englische auf phpBB.com durchstöbert, jedoch keinerlei passenden Hinweise.

Diese ganzen Abfragen, z.B.

Code: Alles auswählen

<!-- IF not S_IS_BOT -->


oder

Code: Alles auswählen

<!-- IF S_USER_LOGGED_IN -->
sind ja eigentlich nicht viel anders als im phpBB2. Logisch sind sie auch, aber trotzdem verstehe ich nicht, warum die Reihenfolge nur so akzeptiert wird, wie im Standard subSilver2. Das Kuriose ist ja, dass es bei meiner Modifikation, siehe oben, klappt wenn man eingeloggt ist. Erst nach dem ausloggen tritt der Fehler auf, dass nur der Link zum Registrieren angezeigt wird.

Was ich rein aus Neugier mal getestet habe: Den ganzen Tabellenblock habe ich mal entfernt. Dem Template schadet das nicht, sondern es wird einfach nur kein Navigationsmenü angezeigt. Dann habe ich noch versucht, eine Zeile der Tabelle zu entfernen, und zwar diese hier:

Code: Alles auswählen

         <td class="genmed" align="{S_CONTENT_FLOW_END}">

<!-- IF not S_IS_BOT --><a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_LOGIN_LOGOUT}</a>&nbsp;&nbsp;<!-- ENDIF -->

<!-- ELSEIF S_REGISTER_ENABLED --><a href="{U_REGISTER}"><img src="{T_THEME_PATH}/images/icon_mini_register.gif" width="12" height="13" alt="*" /> {L_REGISTER}</a>&nbsp;&nbsp;<!-- ENDIF -->

            <!-- ENDIF -->
         </td>
Dann taucht wieder die Fehlermeldung auf:
Parse error: syntax error, unexpected $end in .../includes/template.php(614) : eval()'d code on line 189
Es ist zum Verzweifeln :-?
Benutzeravatar
Derky
phpBB.com
Beiträge: 5
Registriert: 24.03.2007 14:34
Wohnort: Niederlande
Kontaktdaten:

Re: Menubar-Links im Header (subSilver2 basiert)

Beitrag von Derky »

Versuchen Sie diese:

Code: Alles auswählen

	<div id="menubar">
		<table width="100%" cellspacing="0">
		 <tr>
		  <td class="genmed">
			<!-- IF S_USER_LOGGED_IN and not S_IS_BOT -->
				<a href="{U_PROFILE}"><img src="{T_THEME_PATH}/images/icon_mini_profile.gif" width="12" height="13" alt="*" /> {L_PROFILE}</a>&nbsp;&nbsp;
				<!-- IF S_DISPLAY_PM --><a href="{U_PRIVATEMSGS}"><img src="{T_THEME_PATH}/images/icon_mini_message.gif" width="12" height="13" alt="*" /> {PRIVATE_MESSAGE_INFO}<!-- IF PRIVATE_MESSAGE_INFO_UNREAD -->, {PRIVATE_MESSAGE_INFO_UNREAD}<!-- ENDIF --></a>&nbsp;&nbsp;<!-- ENDIF -->
				<!-- S_DISPLAY_MEMBERLIST--><a href="{U_MEMBERLIST}"><img src="{T_THEME_PATH}/images/icon_mini_members.gif" width="12" height="13" alt="*" /> {L_MEMBERLIST}</a>&nbsp;&nbsp;<!-- ENDIF -->
				<!-- IF S_BOARD_DISABLED --><span style="color: red;">{L_BOARD_DISABLED}</span>&nbsp;&nbsp;<!-- ENDIF -->
				<!-- IF U_RESTORE_PERMISSIONS --><a href="{U_RESTORE_PERMISSIONS}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_RESTORE_PERMISSIONS}</a>&nbsp;&nbsp;<!-- ENDIF -->
			<!-- ENDIF -->
			<a href="{U_FAQ}"><img src="{T_THEME_PATH}/images/icon_mini_faq.gif" width="12" height="13" alt="*" /> {L_FAQ}</a>
			<!-- IF S_DISPLAY_SEARCH -->&nbsp;&nbsp;<a href="{U_SEARCH}"><img src="{T_THEME_PATH}/images/icon_mini_search.gif" width="12" height="13" alt="*" /> {L_SEARCH}</a>&nbsp;&nbsp;<!-- ENDIF -->
			<a href="link.php"><img src="{T_THEME_PATH}/images/icon_mini_faq.gif" width="12" height="13" alt="*" /> Extra link</a>
		  </td>
          <td class="genmed" align="{S_CONTENT_FLOW_END}">
			<!-- IF not S_IS_BOT -->
				<a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_LOGIN_LOGOUT}</a>&nbsp;&nbsp;
				<!-- IF not S_USER_LOGGED_IN and S_REGISTER_ENABLED --><a href="{U_REGISTER}"><img src="{T_THEME_PATH}/images/icon_mini_register.gif" width="12" height="13" alt="*" /> {L_REGISTER}</a>&nbsp;&nbsp;<!-- ENDIF -->
			<!-- ENDIF -->
          </td>
		 </tr>
		</table>
	</div>
Vor eine <!-- ELSEIF xxx --> kommt KEINE <!-- ENDIF --> ;)
Benutzeravatar
Jadoo
Mitglied
Beiträge: 54
Registriert: 27.01.2006 20:29
Kontaktdaten:

Re: Menubar-Links im Header (subSilver2 basiert)

Beitrag von Jadoo »

Vielen lieben Dank! Es funktioniert!

Es scheint aber doch an der Reihenfolge der <!--IF --> gelegen zu haben. Werde beide Tabellen mal in Ruhe vergleichen, um mir den Unterschied anzusehen. Auf dem ersten Blick fällt mir auf, dass anstatt

Code: Alles auswählen

<!-- IF not S_IS_BOT --><a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_LOGIN_LOGOUT}</a>&nbsp;&nbsp;<!-- ENDIF -->
         
<!-- ELSEIF S_REGISTER_ENABLED --><a href="{U_REGISTER}"><img src="{T_THEME_PATH}/images/icon_mini_register.gif" width="12" height="13" alt="*" /> {L_REGISTER}</a>&nbsp;&nbsp;<!-- ENDIF -->
hier folgendes verwendet wurde:

Code: Alles auswählen

         <!-- IF not S_IS_BOT -->
            <a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_LOGIN_LOGOUT}</a>&nbsp;&nbsp;
            <!-- IF not S_USER_LOGGED_IN and S_REGISTER_ENABLED --><a href="{U_REGISTER}"><img src="{T_THEME_PATH}/images/icon_mini_register.gif" width="12" height="13" alt="*" /> {L_REGISTER}</a>&nbsp;&nbsp;<!-- ENDIF -->
         <!-- ENDIF -->
An diesem Stück lag vorher das Problem. Wie ich eben mal getestet habe, nutzte es allerdings nichts, wenn ich nur das ENDIF vor der ELSEIF rausgenommen habe. Da trat nämlich trotzdem diese Fehlermeldung auf. Ich denke der Trick liegt hier bei folgendem:

1. Abfrage, ob User kein Bot ist - dann darf er sich an-/abmelden.
2. Abfrage, ob User ausgeloggt und Registrierung möglich - in dem Fall dann Registrieren
3. Beide Abfrage beenden.

So wie ich es verstehe, ist hier die Abfrage ob Bot oder nicht wichtig, da die nächsten Abfragen innerhalb dieser folgen.

Nochmal vielen Dank!
Benutzeravatar
Derky
phpBB.com
Beiträge: 5
Registriert: 24.03.2007 14:34
Wohnort: Niederlande
Kontaktdaten:

Re: Menubar-Links im Header (subSilver2 basiert)

Beitrag von Derky »

Jadoo hat geschrieben:1. Abfrage, ob User kein Bot ist - dann darf er sich an-/abmelden.
2. Abfrage, ob User ausgeloggt und Registrierung möglich - in dem Fall dann Registrieren
3. Beide Abfrage beenden.

So wie ich es verstehe, ist hier die Abfrage ob Bot oder nicht wichtig, da die nächsten Abfragen innerhalb dieser folgen.
Richtig. :)
Antworten

Zurück zu „[3.0.x] Styles, Templates und Grafiken“