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

  • Include in Template

    Hallo

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

  • #2
    Hallo robydog,

    was bezeichnest du als ein Template?

    Kommentar


    • #3
      bei einem wbb forum hat es templates

      das ganze forum ist in templates aufegebaut.

      headerinclude.tpl

      dieses wird im header.tpl geladen

      und wird im thread.php aufgerufen

      nun möchte ich im headinclude eine php datei laden

      Hoffe das war verständlich

      Kommentar


      • #4
        Warum sollte es nicht funktionieren? Was klappt denn nicht?

        Kommentar


        • #5
          Durch die Endung *.tpl wird in den Dateien kein PHP-Code ausgeführt. Zum einbinden einer weiteren Datei musst die die Syntax der Template-Engine benutzen.

          Kommentar


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

            Kommentar


            • #7
              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.

              Kommentar


              • #8
                und wie kann ich das herausfinden?

                Kommentar


                • #9
                  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 ...

                  Kommentar


                  • #10
                    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.

                    Kommentar


                    • #11
                      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;
                       }
                      }
                      ?>

                      Kommentar


                      • #12
                        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!

                        Kommentar


                        • #13
                          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';"

                          Kommentar


                          • #14
                            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?

                            Kommentar


                            • #15
                              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';?>
                              "

                              Kommentar

                              Lädt...
                              X