Ankündigung

Einklappen
Keine Ankündigung bisher.

Include in Template

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • robydog
    hat ein Thema erstellt Include in Template.

    Include in Template

    Hallo

    Kann mir jemand sagen ob es möglich ist in einem Template ein include zu machen einer php datei?

  • dr.e.
    antwortet
    Zitat von robydog Beitrag anzeigen
    und was kann ich dann machen damit ich das trotzdem irgendwie hin bekomme?
    Sorry, wenn ich mich wiederhole (und fett markierte Schrift benutze), aber: Verwende einfach eine fertige Lösung, die das Inkludieren von Templates out-of-the-box beherrscht und versuche das Rad nicht zum 1000sten Mail neu zu erfinden. Darüber haben sich genug Leute schon den Kopf zerbrochen und gute Lösungen implementiert.

    Einen Kommentar schreiben:


  • David
    antwortet
    Du kannst das PHP Skript vor dem template ausführen lassen. Genauso wie es die Boardsoftware auch macht. Erst alles Werte (vermutlich in einem Feld) zusammenfassen, dem Template zuweisen und dann das Template "ausführen" lassen. Aber nicht "im" Template noch Skripte ausführen lassen.
    Wie WBB im Einzelnen funktioniert, weiss ich nicht. Aber Du könntest mal auf der Projektseite nach Inforamtionen oder Support suchen. WoltLab® GmbH | Startseite

    Einen Kommentar schreiben:


  • robydog
    antwortet
    und was kann ich dann machen damit ich das trotzdem irgendwie hin bekomme?

    Einen Kommentar schreiben:


  • Chriz
    antwortet
    Warum brauchst du 2 Seiten um uns diesen Code zu posten?

    Wir kennen deine Template-Syntax nicht, PHP-Tags sind offenbar nicht erlaubt.

    Einen Kommentar schreiben:


  • robydog
    antwortet
    ich hab im template file folgendes eingefügt

    PHP-Code:
    <meta name="keywords" content="include 'keywords.php';" 
    im quelltext steht dann
    <meta name="keywords" content="include 'keywords.php';"

    ich habs auch versucht mit content="<?php include 'keywords.php';?>"
    Passiert auch nix im Quelltext steht dann
    <meta name="keywords" content="<?php include 'keywords.php';?>
    "

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Zitat von robydog Beitrag anzeigen
    sorry hab ich ganz vergessen ich habs schon ausprobiert bevor ich nachgefragt hab

    hab versucht ohne <?php ?> und einmal mit

    kam folgendes
    <meta name="keywords" content="include 'keywords.php';"
    Gibts diese Aussage auch in allgemeinverständlich?

    Einen Kommentar schreiben:


  • robydog
    antwortet
    sorry hab ich ganz vergessen ich habs schon ausprobiert bevor ich nachgefragt hab

    hab versucht ohne <?php ?> und einmal mit

    kam folgendes
    <meta name="keywords" content="include 'keywords.php';"

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    Was ist so schwer daran es einfach auszuprobieren??? Probier doch einfach mal ne PHP Datei zu includen. Dann wirst du schon sehen obs funktioniert oder nicht!

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Nö. Indem man anfängt, Spezifikationen und Dokumenationen zu lesen. Wenn das nicht ein totales Murx Forum ist, sollte für die Template-Engine eine Doc zu finden sein. Vielleicht baut es auch auf einer etablierten Template-Engine auf, dann mußt Du da schauen.

    Einen Kommentar schreiben:


  • robydog
    antwortet
    Da ich nicht so ein Genie bin in php hab ich hier mal die class_tpl_file Datei

    Vielleicht kann mir jemand helfen

    PHP-Code:
    <?php
    class tpl {

     var 
    $templates   = array();
     var 
    $subvariablepackid 0;
     var 
    $templatefolder "";

     
    /* constuctor */
     
    function tpl($templatepackid=0,$subvariablepackid=1,$prefix="") {
      
    $this->subvariablepackid $subvariablepackid;
      
    $this->templatefolder $prefix."templates";
     }

     
    /* get template */
     
    function get($templatename) {
      if(!isset(
    $this->templates[$templatename])) {
       if(
    file_exists($this->templatefolder."/$templatename.tpl")) $this->templates[$templatename]=str_replace("\"","\\\"",implode("",file($this->templatefolder."/$templatename.tpl")));
      }
      return 
    $this->templates[$templatename];
     }

     
    /* print template */
     
    function output($template) {
      
    headers::send();
      
    $template $this->replacevars($template);
      print(
    $template);
     }

     
    /* replace vars */
     
    function replacevars($template) {
      global 
    $db$n$pmpopup$PHP_SELF;

      
    $hash="";
      if(
    strstr($template,"<title>")) {

       
    $hash md5(uniqid(microtime()));
       
    $x strpos($template,"<title>");
       
    $y strpos($template,"</title>");

       
    $temp substr($template,$x,$y-$x+8);
       
    $template substr($template,0,$x) . $hash substr($template,$y+8);
      }

      
    $result $db->query("SELECT variable,substitute FROM bb".$n."_subvariables WHERE subvariablepackid = '".$this->subvariablepackid."'");
      while(
    $row $db->fetch_array($result)) {
          if(isset(
    $row['variable']) && $row['variable'] && isset($row['substitute'])
          && 
    $row['substitute']) {
              switch(
    $row['variable']) {
                case 
    "<body"
                
    $template $this->str_replace($row['variable'],$row['substitute'],$template); break;
                case 
    "{css}"
                
    $template $this->str_replace($row['variable'],$row['substitute'],$template); break;
                case 
    "{cssfile}"
                
    $template $this->str_replace($row['variable'],$row['substitute'],$template); break;
                case 
    "{imagelogo}"
                
    $template $this->str_replace($row['variable'],$row['substitute'],$template); break;
                case 
    "{!DOCTYPE}"
                
    $template $this->str_replace($row['variable'],$row['substitute'],$template); break;
                default: 
                
    $template str_replace($row['variable'],$row['substitute'],$template);
               }
           }
      }

      if(
    $hash!=""$template str_replace($hash,$temp,$template);
      return 
    $template;
     }

     function 
    str_replace($search,$replace,$text) {
      if(
    strstr($text,$search)) {
       
    $x strpos($text,$search);
       return 
    substr($text,0,$x) . $replace substr($text,$x+strlen($search));
      }
      else return 
    $text;
     }
    }
    ?>

    Einen Kommentar schreiben:


  • tomtaz
    antwortet
    Ich nehme mal an, indem man sich die Template Dateien zur Rate zieht und sich dabei überlegt wie der Entwickler das gemacht, würde ich mal meinen ...

    Einen Kommentar schreiben:


  • robydog
    antwortet
    und wie kann ich das herausfinden?

    Einen Kommentar schreiben:


  • nikosch
    antwortet
    Aber anderes herum wird kein Schuh draus: <??> Tags in einemn .jpg werden nur interpretiert, wenn der Webserver explizit darauf eingestellt ist.

    Um es nochmal auf den Punkt zu bringen - @robydog: Wenn Deine Templateengine das zuläßt, kannst Du andere Scripte einbinden. Dafür werden zumeist spezielle Syntaxelemente verwendet, die Du für Dein wbb forum vorher ermitteln mußt.

    Einen Kommentar schreiben:


  • Chriz
    antwortet
    Alles was du mit include einbindest und mit <?php Tags ?> daherkommt wird als PHP interpretiert, kannst das Ding auch mit JPG enden lassen ..

    Einen Kommentar schreiben:

Lädt...
X