PHP code im Header und Footer

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
modr
Mitglied
Beiträge: 5
Registriert: 28.11.2006 21:16

PHP code im Header und Footer

Beitrag von modr »

Hi Folks,

also nach einigem Lesen habe ich inzwischen geblickt, wie ich theoretisch meine Homepage ins Board integriere (also nicht das Board in die HP ;-)).

Allerdings habe ich eine Problem:

In meinem Header und footer sollen einige dinge via PHP generiert werden (z.B. im <head> ... head ... </head> - Bereich) und ausserdem wird mein Menue nach bestimmten Bedingungen via PHP generiert.

Ich habe gelesen, dass das dann irgenwie in page_header.php und logischer weise nicht in die overall_header.tpl soll.

Soll ich dann die overall_header.tpl dann "leer machen" und alles via "echo" in der page_header.php ausgeben lassen?

Was ist dann mit den ganzen Variablen, die dem SMARTY-Template zugewiesen werden?

$template->assign_vars(array(
'SITENAME' => $board_config['sitename'],
'SITE_DESCRIPTION' => $board_config['site_desc'],
....
...

Koennt Ihr mir einen Tip geben, wie ich das umsetzen soll?

Dank im Voraus

Julian
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Wenn du die overall_header.tpl nicht brauchst, wäre die einfachste Lösung, in includes/page_header.php diese Zeile zu löschen/auszukommentieren:

Code: Alles auswählen

$template->pparse('overall_header');
KB:knigge
modr
Mitglied
Beiträge: 5
Registriert: 28.11.2006 21:16

Beitrag von modr »

Pyramide hat geschrieben:Wenn du die overall_header.tpl nicht brauchst, wäre die einfachste Lösung, in includes/page_header.php diese Zeile zu löschen/auszukommentieren:

Code: Alles auswählen

$template->pparse('overall_header');
Ja schon klar, aber werden die ganzen variablen nur in das overall_header-Template gefuettert, falls sie vielleicht mal benutzt werden, oder werden sie noch irgendwo ander benoetigt?

Kann ich also einfach overall_header weglassen und alles in der page_header.php machen?

Ach ja, und was ist dann mit den CSS-Definitionen im overall_header.tpl? Muss ich diese ganzen Platzhalter {KEYWORD} durch variablen ersetzen?

Danke im Voraus

Gruss

Julian
Zuletzt geändert von modr am 28.11.2006 22:34, insgesamt 1-mal geändert.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Also die ganzen assign_vars Blöcke würde ich drin lassen, da diverse Sachen auch woanders verwendet werden. Spontan fallen mir da z.B. die Sprachvariablen und die whoisonline Infos ein.
KB:knigge
modr
Mitglied
Beiträge: 5
Registriert: 28.11.2006 21:16

Beitrag von modr »

Pyramide hat geschrieben:Also die ganzen assign_vars Blöcke würde ich drin lassen, da diverse Sachen auch woanders verwendet werden. Spontan fallen mir da z.B. die Sprachvariablen und die whoisonline Infos ein.
Ok, danke, ich glaube langsam habe ich eine klarere Vorstellung.

Und auf die Variablen aus den assign_vars-Bloecken kann ich dann so:

z.B.
$template->_tpldata['.'][0][U_INDEX];
fuer
"index.php" also index und extension

zugreifen, oder?

danke

Julian
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Ich glaube nicht, Julian. 8)

Schau Dir mal die Funktion an --->

Code: Alles auswählen

        function assign_vars($vararray)
        {
                reset ($vararray);
                while (list($key, $val) = each($vararray))
                {
                        $this->_tpldata['.'][0][$key] = $val;
                }

                return true;
        }
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
modr
Mitglied
Beiträge: 5
Registriert: 28.11.2006 21:16

Beitrag von modr »

Miriam hat geschrieben:Ich glaube nicht, Julian. 8)

Schau Dir mal die Funktion an --->
[/code]
Doch doch,

funktioniert genau so. Habe es inzwischen probiert.

Habe nur z.Z. das problem, dass wen ich mich als admin einlogge, dass er dann subsilver und nicht mein eigenes Template aufruft und nicht mein "neues". Da ich aber nun aber auch page_header modifiziere (die wird ja von beiden Templates verwendet) kommt es zu problemen... grr.

Kann man ein fragen, wer sich einloggt? Dann koennte ich in der page_header.php folgendes machen:

if (admin_loggt_sich_ein) {
einstellungen fuer subsilver
} else {
einstellungen fuer mein neues Plugin
}

???

danke im Voraus

Julian
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Ich meinte auch, dass Du mit

Code: Alles auswählen

$template->_tpldata['.'][0][U_INDEX];
nicht auf alle Werte des Arrays zugreifen kannst, sondern nur auf einen.. Da habe ich wohl was falsch gelesen.

Anyway.


So, und was willst Du jetzt konkret machen? Templates umschalten?
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
modr
Mitglied
Beiträge: 5
Registriert: 28.11.2006 21:16

Beitrag von modr »

Miriam hat geschrieben: So, und was willst Du jetzt konkret machen? Templates umschalten?
Sorry dass ich mich so lange nicht gemeldet habe. Habe viel gearbeitet.

Das war mein Fehler. Ich habe einen Falschen Verweiss auf die Sylesheets gesetzt.

Danke

Julian
Antworten

Zurück zu „Coding & Technik“