Abfrage, ob Forum oder Topic angezeigt wird

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.
bud
Mitglied
Beiträge: 17
Registriert: 10.07.2012 15:15

Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von bud »

Hallo zusammen

Ich bin daran, mein Forum zu überarbeiten.

Um die Meta-Tags zu optimieren, brauche ich Unterstützung bei der Programmierung.

Die Punkte im Detail:

Wie kann ich abfragen, ob die Index-Seite, ein Forum oder ein Topic angezeigt wird? Die Abfrage

Code: Alles auswählen

<!-- IF S_IS_FORUM -->
scheint nicht zu funktionieren...

Wie kann ich eine dynamische Sprachvariable mit der Foren-ID generieren? Der Code

Code: Alles auswählen

{L_META_DESC_F{FORUM_ID}}
führt nicht zum erwünschten Ergebnis...

Bin für jede Hilfe dankbar
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von Pyramide »

bud hat geschrieben:Wie kann ich eine dynamische Sprachvariable mit der Foren-ID generieren? Der Code

Code: Alles auswählen

{L_META_DESC_F{FORUM_ID}}
führt nicht zum erwünschten Ergebnis...
Ich würde hier in der Sprachdatei ein Array definieren (ähnlich wie beim Datumsformat) und dann in der viewforum.php/viewtopic.php im $template->assign_vars-Block die Template-Variable manuell zuweisen ('L_META_DESC' => $user->lang['meta_desc'][$forum_id],)
KB:knigge
bud
Mitglied
Beiträge: 17
Registriert: 10.07.2012 15:15

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von bud »

Vielen Dank für den Hinweis.

Werde das mal austesten
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von Miriam »

bud hat geschrieben:Wie kann ich abfragen, ob die Index-Seite, ein Forum oder ein Topic angezeigt wird? Die Abfrage

Code: Alles auswählen

<!-- IF S_IS_FORUM -->
scheint nicht zu funktionieren...
nimm SCRIPT_NAME

Konstrukt in der Template Datei (z.B. overall_header.html):
  • Code: Alles auswählen

    <!-- IF SCRIPT_NAME eq 'index' -->bla
    <!-- ELSEIF SCRIPT_NAME eq 'viewtopic' -->blub
    <!-- ELSEIF SCRIPT_NAME eq 'viewforum' -->blablub
    <!-- ELSE -->alle anderen
    <!-- ENDIF -->
Index angezeigt: index.php => index
Forum angezeigt: viewforum.php => viewforum
Topic angezeigt: viewtopic.php => viewtopic
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
bud
Mitglied
Beiträge: 17
Registriert: 10.07.2012 15:15

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von bud »

@Miriam: Vielen Dank für die Info

Ich habe das ganze jetzt so eingebunden und es funktioniert auch grösstenteils.

Leider gibt er mir bei der Ansicht einer Kategorie als Variable "array" aus...

Wie muss ich den Teil

Code: Alles auswählen

=> $user->lang['meta_desc'][$forum_id],
anpassen, damit auch die Kategorie als Foren ID ausgegeben wird?
bud
Mitglied
Beiträge: 17
Registriert: 10.07.2012 15:15

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von bud »

Hier noch der Fehler im Detail:

Der Code in der viewforum.php

Code: Alles auswählen

'L_SEO_TITLE_F'	=> $user->lang['SEO_TITLE_F'][$forum_id],
Der Code in der viewtopic.php

Code: Alles auswählen

'L_SEO_TITLE_T'	=> $user->lang['SEO_TITLE_T'][$topic_id],
Der Code in der overall_header.html

Code: Alles auswählen

<!-- IF SCRIPT_NAME eq 'portal' --><title>Dart-Forum.ch - Neues Schweizer Dart Forum</title>
<!-- ELSEIF SCRIPT_NAME eq 'viewforum' --><title>{L_SEO_TITLE_F}</title>
<!-- ELSEIF SCRIPT_NAME eq 'viewtopic' and TOPIC_ID eq '7' or '10' --><title>{L_SEO_TITLE_T}</title>
<!-- ELSE -->
<title>{PAGE_TITLE}<!-- IF S_IN_MCP --> &bull; {L_MCP}<!-- ELSEIF S_IN_UCP --> &bull; {L_UCP}<!-- ENDIF --></title>
<!-- ENDIF -->
Die Fehler:
Beim Aufruf einer Kategorie wird

Code: Alles auswählen

<title>Array</title>
ausgegeben
Beim Aufruf eines Topics (7 und 10 funktionieren) wird das gleiche ausgegeben.

Jemand eine Idee, woran das liegen könnte?
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von Pyramide »

Wie sehen denn die Einträge in der language-Datei aus?
KB:knigge
bud
Mitglied
Beiträge: 17
Registriert: 10.07.2012 15:15

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von bud »

Code in der common.php:

Code: Alles auswählen

'SEO_TITLE_F'	=> array (
		'1'	=> 'Dart-Forum.ch - News & Aktuelles Schweizer Dartsport',
		'2'	=> 'Dart-Forum.ch - News & Aktuelles SDA Swiss Dart Association',
		'3'	=> 'Dart-Forum.ch - News & Aktuelles VFC Verband zur Förderung von Compactsportarten',
		'4'	=> 'Dart-Forum.ch - News & Aktuelles CSS Compact Sport Schweiz',
		'5'	=> 'Dart-Forum.ch - News & Aktuelles Schweizer Dart Verbände',
		'6'	=> 'Dart-Forum.ch - Schweizer Dart Turnierkalender',
		'7'	=> '',
		'8'	=> 'Dart-Forum.ch - Schweizer Dart Mannschafts-/Spielersuche',
		'9'	=> 'Dart-Forum.ch - News & Aktuelles internationaler Dartsport',
		'10'	=> 'Dart-Forum.ch - News & Aktuelles PDC Professional Darts Corporation',
		'11'	=> 'Dart-Forum.ch - News & Aktuelles WDF/BDO World Darts Federation',
		'12'	=> 'Dart-Forum.ch - News & Aktuelles PDC Europe',
		'13'	=> 'Dart-Forum.ch - News & Aktuelles EDU European Darts Union',
		'14'	=> 'Dart-Forum.ch - News & Aktuelles internationale Dart Verbände',
		'15'	=> 'Dart-Forum.ch - Internationaler Turnierkalender',
		'16'	=> 'Dart-Forum.ch - Dart allgemeine Foren',
		'17'	=> 'Dart-Forum.ch - Dart allgemeine Informationen',
		'18'	=> 'Dart-Forum.ch - Steel-Dart allgemeine Informationen',
		'19'	=> 'Dart-Forum.ch - E-Dart allgemeine Informationen',
		'20'	=> 'Dart-Forum.ch - Off-Topic Bereich',
		'21'	=> 'Dart-Forum.ch - Informationen über Dart-Forum.ch',
		'22'	=> 'Dart-Forum.ch - Off-Topic Forum',
	),
		
	'SEO_TITLE_T'	=> array (
		'7'	=> 'Dart-Forum.ch - Dart Checkout Tabellen Double Out und Master Out',
		'10'	=> 'Dart-Forum.ch - PDC Darts World Matchplay 2012',
	),
bud
Mitglied
Beiträge: 17
Registriert: 10.07.2012 15:15

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von bud »

Hat hier wirklich niemand eine Idee, was das Problem verursachen könnte?
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Abfrage, ob Forum oder Topic angezeigt wird

Beitrag von Miriam »

overall_header.html:

Code: Alles auswählen

<!-- IF SCRIPT_NAME eq 'index' --><title>Dart-Forum.ch - Neues Schweizer Dart Forum</title>
<!-- ELSEIF SCRIPT_NAME eq 'viewforum' --><title>{L_SEO_TITLE_F}</title>
<!-- ELSEIF SCRIPT_NAME eq 'viewtopic' and ((TOPIC_ID eq '7') or (TOPIC_ID eq '10')) --><title>{L_SEO_TITLE_T}</title>
<!-- ELSE -->
<title>{PAGE_TITLE}<!-- IF S_IN_MCP --> &bull; {L_MCP}<!-- ELSEIF S_IN_UCP --> &bull; {L_UCP}<!-- ENDIF --></title>
<!-- ENDIF -->
viewforum.php:
finde:

Code: Alles auswählen

$template->assign_vars(array(
    'U_VIEW_FORUM'            => append_sid("{$phpbb_root_path}viewforum.$phpEx", "f=$forum_id" . (($start == 0) ? '' : "&start=$start")),
tausche aus gegen:

Code: Alles auswählen

$template->assign_vars(array(
    'U_VIEW_FORUM'            => append_sid("{$phpbb_root_path}viewforum.$phpEx", "f=$forum_id" . (($start == 0) ? '' : "&start=$start")),
    'L_SEO_TITLE_F'            => $user->lang['SEO_TITLE_F'][$forum_id],
Der Rest kann so bleiben.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Antworten

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