In speziellen Foren Button "neues Thema" umlenken

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Lenchen
Mitglied
Beiträge: 108
Registriert: 20.01.2009 23:20

In speziellen Foren Button "neues Thema" umlenken

Beitrag von Lenchen »

Hallo
Da ich es jetzt dank eurer Hilfe hinbekommen habe meine Postings über ein externes Formular einzufügen (Danke nochmal!) tut sich jetzt ein weiteres Problem auf :oops: Ich möchte in einigen Foren neue Beiträge ausschließlich über dieses Formular eintragen lassen.
Die Idee ist folgenden Code einzufügen:

Code: Alles auswählen

If ($forum_id ==3 OR $forum_id==4 OR $forum_id==5)
{
Hier kommt dann der Code für den Button mit anderem Ziel
}
else
{
Hier der originalcode
}
 
Jetzt ist meine Frage: Wo finde ich den Code, der den Button generiert?
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: In speziellen Foren Button "neues Thema" umlenken

Beitrag von gn#36 »

Der Code dürfte sich im Template befinden, dort wird mittels <!-- IF S_irgendeinrecht --> der Button ein oder ausgeblendet. An genau der Stelle würde ich auch einen entsprechenden Switch ansetzen. Füge in der viewforum.php folgendes ein:

Code: Alles auswählen

$template->assign_var('S_FORUM_ID', $forum_id); 
(das muss passieren nachdem die Variable $forum_id gefüllt wurde, also nicht direkt in der ersten Zeile, aber nach $forum_id = request_var('f', 0); oder sowas sollte das gehen.)

Danach fügst du in deinem Template einen Switch ein. Du suchst in der viewforum_body.html nach dem Code für den Button (ich würde nach {U_NEW oder sowas suchen), dann baust du einen Switch nach dem folgenden Muster:

Code: Alles auswählen

<!-- IF S_FORUM_ID == 1 -->
HTML CODE
<!-- ELSE -->
Original HTML Code
<!-- ENDIF -->
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Lenchen
Mitglied
Beiträge: 108
Registriert: 20.01.2009 23:20

Re: In speziellen Foren Button "neues Thema" umlenken

Beitrag von Lenchen »

Mal wieder vielen vielen Dank dir :)
Ich betrachte gerade die viewforum_body.html und habe folgenden Code gefunden.

Code: Alles auswählen

<!-- IF not S_IS_BOT and S_DISPLAY_POST_INFO -->
		<div class="buttons">
			<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->post-icon<!-- ENDIF -->"><a href="{U_POST_NEW_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF --></a></div>
		</div>
	<!-- ENDIF -->
Wenn ich dich richtig verstanden habe *hoff* kann ich den durch folgendes ersetzen?

Code: Alles auswählen

<!-- IF S_FORUM_ID == 4 OR  S_FORUM_ID == 5 OR S_FORUM_ID == 6-->
<!-- IF not S_IS_BOT and S_DISPLAY_POST_INFO -->

		<div class="buttons">
			<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->post-icon<!-- ENDIF -->"><a href="pfad/zum/formular.php" title="<!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF --></a></div>
		</div>
	<!-- ENDIF -->
<!-- ELSE -->
<!-- IF not S_IS_BOT and S_DISPLAY_POST_INFO -->
		<div class="buttons">
			<div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->post-icon<!-- ENDIF -->"><a href="{U_POST_NEW_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF --></a></div>
		</div>
<--! ENDIF -->
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: In speziellen Foren Button "neues Thema" umlenken

Beitrag von gn#36 »

Genau. Nur die PHP Code Änderung nicht vergessen und nach der Änderung im Template den Cache löschen, sonst wirst du keine Änderung feststellen.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Lenchen
Mitglied
Beiträge: 108
Registriert: 20.01.2009 23:20

Re: In speziellen Foren Button "neues Thema" umlenken

Beitrag von Lenchen »

Nochmal DANKE.
Jetzt bekomme ich allerdings eine Fehlermeldung beim Aufrufen von Foren:
Parse error: syntax error, unexpected T_VARIABLE in /usr/export/www/vhosts/funnetwork/hosting/fantasybasteln/Motorrad/Forum/cache/tpl_proFormell_viewforum_body.html.php on line 28
Dabei habe ich in Zeile 28 gar nichtd verändert :(
Der Code: (Zeile 28 ist hier die 1 .)

Code: Alles auswählen

<!-- IF S_HAS_SUBFORUM -->
<!-- IF not S_IS_BOT and U_MARK_FORUMS -->
<ul class="linklist">
	<li class="rightside"><a href="{U_MARK_FORUMS}">{L_MARK_FORUMS_READ}</a></li>
</ul>
<!-- ENDIF -->
	<!-- INCLUDE forumlist_body.html -->
<!-- ENDIF -->

<!-- IF S_DISPLAY_POST_INFO or PAGINATION or TOTAL_POSTS or TOTAL_TOPICS -->
	<div class="topic-actions" <!-- IF S_HAS_SUBFORUM -->style="margin-top: 2em;"<!-- ENDIF -->>

	    <!-- IF S_FORUM_ID == 4 OR  S_FORUM_ID == 5 OR S_FORUM_ID == 6-->
    <!-- IF not S_IS_BOT and S_DISPLAY_POST_INFO -->

          <div class="buttons">
             <div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->post-icon<!-- ENDIF -->"><a href="pfad/zum/formular.php" title="<!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF --></a></div>
          </div>
       <!-- ENDIF -->
    <!-- ELSE -->
    <!-- IF not S_IS_BOT and S_DISPLAY_POST_INFO -->
          <div class="buttons">
             <div class="<!-- IF S_IS_LOCKED -->locked-icon<!-- ELSE -->post-icon<!-- ENDIF -->"><a href="{U_POST_NEW_TOPIC}" title="<!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF -->"><span></span><!-- IF S_IS_LOCKED -->{L_FORUM_LOCKED}<!-- ELSE -->{L_POST_TOPIC}<!-- ENDIF --></a></div>
          </div>
    <!-- ENDIF -->

Lenchen
Mitglied
Beiträge: 108
Registriert: 20.01.2009 23:20

Re: In speziellen Foren Button "neues Thema" umlenken

Beitrag von Lenchen »

Hat vielleicht noch jemand eine Idee, wie es zu dieser Fehlermeldung kommen kann bzw wie ich den Fehler beheben kann?
JFooty
Ehemaliges Teammitglied
Beiträge: 1868
Registriert: 02.10.2007 11:46

Re: In speziellen Foren Button "neues Thema" umlenken

Beitrag von JFooty »

Auch wenn es nur ein Code-Ausschnitt ist, aber zähle vorsichtshalber mal die "IF" und die "ENDIF".
Kein Support per PN!
Lenchen
Mitglied
Beiträge: 108
Registriert: 20.01.2009 23:20

Re: In speziellen Foren Button "neues Thema" umlenken

Beitrag von Lenchen »

Da hat tatsächlich eins gefehlt... Leider kommt auch mit dem zusätzlichen endif noch der Fehler :(
Hier ein Link zum ganzen Code: http://fantasybasteln.fa.funpic.de/self ... _body.html
In Zeile 28 gibt er mir den Fehler aus. Die Zeilen 37-54 habe ich verändert. Wenn ich die Änderung rückgängig mache geht es wieder, obwohl ich mit der zeile 28 wie gesagt gar nichts mache/gemacht hab :(
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“