Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Eigene Templates in bestehende einbauen???
#1
Hallo,

ich bin neu hier und habe mich nun etwas intensiver mit dem - nun ja - ungewöhnlichem Template-Handling (mix aus XML-Input/Datenbank/PHP-Code) beschäftigt.

Ich denke, ich hab's einigermassen kapiert, nachdem ich das Forum durchstöbert habe, und finde es inzwischen ganz ok.

Nun möchte ich aber ein eigenes Template in einem anderen Template einbinden (also wie z.B. header in index drinsteckt möchte ich gerne ein weiteres header-Template hinzubauen).

Habe versuch ueber Templates->Add ein neues anzulegen (z.B. mit Namen "headerlogo").

Nun möchte ich es im Standard-header Template mit "$headerlogo" einfügen (so hatte ich das bei anderen Standard-Templates auch gesehen).

Das Template, dass ich neu angelegt habe wird auch in der Datenbank angelegt, aber ich kann scheinbar nicht darauf zugreifen, um es im Code einzubinden.

Was habe ich falsch gemacht bzw. wie kann ich eigene Templates einbinden?

Vielen Dank im voraus,
Gruss

Zorro

Zitieren
#2
Du musst für die Variable erst in der entsprechenden PHP-Datei das Template laden:
PHP-Code:
eval("\$headerlogo = \"".$templates->get("headerlogo")."\";"); 

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#3
In diesem Fall in die global.php.
Zitieren
#4
Hallo Leute,

sehr gut. Vielen Dank, das geht nun.

Ich habe mir nun so geholfen, dass ich nicht den vorgeschlagenen code direkt in die Datei global.php eingetragen habe, sondern das Ganze ueber ein Inlcude mache (etwa bei Zeile 154):

PHP-Code:
.....
// Load Main Templates and Cached Templates

@include ('get_custom_templates.inc.php');  // neu von mir

if($templatelist)
{
..... 

und in get_custom_templates.inc.php:

PHP-Code:
$custom_template_reg 
    array(
            
"headerlogo",
        );

if (isset(
$custom_template_reg)) {
    foreach (
$custom_template_reg as $add_template) {
        eval(
"\$".$add_template." = \"".$templates->get($add_template)[code]."\";");        
    }    


So kann ich die Templates registrieren oder auch wieder abmelden und ich musste in global.php nur eine Zeile hinzufügen.

Ich weiss nicht, ob das die beste Lösung ist, aber das tut's erstmal.

Vielen Dank nochmal,

Zorro
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Templates in Templates einbinden Frido 3 2.738 11.01.2009, 14:41
Letzter Beitrag: StefanT
Question Forum in bestehende Seite einbinden RoninF 16 7.333 21.05.2006, 14:32
Letzter Beitrag: Michael