Neuigkeiten:

moziloCMS verwendet Cookies. Wenn Sie auf unserer Seite weitersurfen, stimmen Sie der Cookie-Nutzung zu Datenschutzerklärung
moziloCMS Layouts
moziloCMS Plugins

Hauptmenü

Webseiten-Titel modifizieren

Begonnen von Samson, 29. Juli 2010, 12:24:00

« vorheriges - nächstes »

Samson

Ich möchte in meinem Plugin den Titel der Webseite ändern. In den mozilo-Einstellungen kann man die Reihenfolge/Anzeige von "Ttel der Website", "Kategorie" und "Inhaltsseite" anpassen. Mich interessiert, welche Variablen ich ändern muß. $WEBSITE_NAME für "Ttel der Website" funktioniert ja bestens. $PAGE_REQUEST_URL scheint aber nicht die richtige Variable für "Inhaltsseite" zu sein. Welche ist es dann? Und für "Kategorie"?

Samson

#1
Ich gebe die Antwort mal selbst, nachdem ich den Code durchgegangen bin. "Kategorie" und "Inhaltsseite" stehen in den Variablen $cattitle und $pagetitle. Wenn man diese Variablen im Plugin als global konfiguriert, ist das aber nur die halbe Miete. Das Problem: beide Variablen sind für das Plugin unsichtbar, weil die Globalisierung in der Funktion readTemplate von mozilo fehlt.

Ab Zeile 197 index.php im Webroot:
   function readTemplate() {
        global $CSS_FILE;
        global $HTML;
        global $FAVICON_FILE;
        global $LAYOUT_DIR_URL;
        global $TEMPLATE_FILE;
        global $USE_CMS_SYNTAX;
        global $WEBSITE_NAME;
ändern z.B. in (erste beiden Variablen beachten):
   function readTemplate() {
        global $pagetitle;
        global $cattitle;
        global $CSS_FILE;
        global $HTML;
        global $FAVICON_FILE;
        global $LAYOUT_DIR_URL;
        global $TEMPLATE_FILE;
        global $USE_CMS_SYNTAX;
        global $WEBSITE_NAME;
Danach stehen Kategoriename und Inhaltsseitenname im Plugin zur Verfügung und können geändert werden. Ich hoffe, daß ist eine Anregung für den Einbau in die nächste mozilo-Version. Ich werde das jedenfalls schon mal in meinem News-Plugin, an dem ich gerade code, berücksichtigen.

azett

#2
Wenn ichs richtig verstanden habe, willst du das <title>-Tag manuell befüllen. Warum baust du dafür nicht einfach die CMS-Variablen ins Template ein? ;)

template.html:

...
<
head>
<
title>{WEBSITE_NAME} {CATEGORY_NAME} {PAGE_NAME}</title>
</
head>
...
 

Samson

#3
Das ist natürlich auch eine Möglichkeit. Die zweite Variante (meine) wäre die Einstellung im Adminbereich unter "Einstellungen" -> "Wählen Sie aus, welches der vorgegebenen Formate die Titelleiste des Browsers haben soll".

Und was bitte hat das mit dem Plugin zu tun? Wenn ich {PAGE_NAME} ins Seitentemplate schreibe, ist $pagetitle dann in Plugins verfügbar? Oder steht dann eine andere Variable zur Verfügung, die ich dann modifizieren kann und von $pagetitle später nicht überschrieben wird?

Ich will je nach Ausgabe des Plugins (verschiedene Artikel mit jeweils eigenem Titel) den Seitentitel mit dem Artikeltitel überschreiben. Eine Einmischung in die Template-Struktur des Anwenders soll dabei unterbleiben. Deshalb kann ich nicht einfach das Template ändern.

M.E. sollte doch der Seitentitel (und Kategoriename) in Plugins für die Modifizierung zur Verfügung stehen.