MyBB.de Forum
Frage: eigenes Template System (wie MyBB) - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html)
+--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html)
+--- Thema: Frage: eigenes Template System (wie MyBB) (/thread-12185.html)



Frage: eigenes Template System (wie MyBB) - sebastian3288 - 23.01.2009

Guten Abend,

was mir am MyBB besonders gut gefällt, ist das Template System.
Für ein Projekt ohne MyBB Anbindung, hätte ich allerdings auch gerne so ein Templatesystem. Allerdings komm ich da nicht ganz weiter und würd mich über Hilfe eurerseits freuen.
Hier sind mal die Funktionen, die ich bisher habe:
PHP-Code:
function get_template($template)
{
$pfad 'templates/';
$endung '.tpl';
$f file_get_contents($pfad.$template.$endung);
$f str_replace('"','\"',$f);
}
function 
insert($template)
{
echo 
$template;

Beim aufrufen hakts dann bei mir (also eval() ):
PHP-Code:
$template = eval (get_template('header')); 
insert($template);[/php]


RE: Frage: eigenes Template System (wie MyBB) - sevildevil - 24.01.2009

Hi,
mit eval kannst du nicht auf die Variable $f aus der Funktion get_template() zurückgreifen. Versuche es mal lieber mit einem return-Wert:
PHP-Code:
<?php
function get_template($template){
  
$pfad 'templates/';
  
$endung '.tpl';
  
$f file_get_contents($pfad.$template.$endung);
  
$f str_replace('"','\"',$f);
  return 
$f;
}

function 
insert($template)
{
echo 
$template;
}

insert(get_template('header'));
?>

Viel Spaß dann noch mit deinem Templatesystem Smile
Sevil


RE: Frage: eigenes Template System (wie MyBB) - StefanT - 24.01.2009

Du musst die eval-Zeile schon so machen, wie beim MyBB. Sonst geht es nicht.


RE: Frage: eigenes Template System (wie MyBB) - sevildevil - 24.01.2009

(24.01.2009, 13:48)Dragon schrieb: Du musst die eval-Zeile schon so machen, wie beim MyBB. Sonst geht es nicht.
Er will ja nur ein Templatesystem ähnlich dem vom MyBB aufbauen, nicht das ganze nachbauen (ansonsten wär der Ansatz mit den Templates auch schon falsch).
Frage an dich: warum sollte es nicht funktionieren? Ich habe mein Skript die Nacht getestet Wink

LG,
Sevil


RE: Frage: eigenes Template System (wie MyBB) - StefanT - 25.01.2009

Wie lautet denn jetzt der gesamte Code?


RE: Frage: eigenes Template System (wie MyBB) - sebastian3288 - 25.01.2009

Also mein Code lautet:
PHP-Code:
function get_template($template)
{
$pfad 'templates/';
$endung '.tpl';
$f file_get_contents($pfad.$template.$endung);
$f str_replace('"','\"',$f);
return 
$f;
}
function 
insert($template)
{
echo 
$template;
}

eval(
$template .= get_template('header'););
insert_template($template); 



RE: Frage: eigenes Template System (wie MyBB) - StefanT - 26.01.2009

So macht es schon eher Sinn. Wink