2016-05-04 10 views
0

Ich habe eine Website, die ich eingerichtet habe mit umfasst, so dass seine Vorlagen. Kann ich Informationen von einer Seite an die enthaltene Datei weitergeben? Hier ist die Situation, ich habe eine header.php Ich setzte an der Spitze von ihnen page.php Datei. Header enthält all die guten Dinge wie die head und nav ich brauche auf jeder Seite, aber wie kann ich auf die Header.php Seite spezifische Informationen für bessere SEO wie OG-Tag Sachen und Seitentitel Zeug übergeben?Informationen zurück in enthaltene Datei übergeben

Header.php

<!DOCTYPE HTML> 

<html lang="en"> 

    <head> 
     <?php require 'head.php'; ?> 
    </head> 

    <body id="app"> 

     <div id="page" class="page"> 
      <div id="wrap-header" class="wrap-header"> 
       <header id="masthead" class="site-header"> 

       <?php require 'app-menu.php'; ?> 

       </header> 

      </div> 

      <div id="wrap-main" class="wrap-main"> 

page.php

<?php require 'layouts/header.php'; 

<!-- Page specific content pulled in here --> 

<?php require 'layouts/footer.php'; ?> 
+0

Sie können nur überschreiben, was aufgenommen wurde, gibt es kein Konzept von 'zurück' hier. Das Einschließen von etwas macht es zu einem Teil von etwas, das nicht mehr um Argumente willen getrennt ist. –

+1

PHP REQUIRE oder INCLUDE Dateien in der Reihenfolge, in der sie aufgerufen werden, in dieser Reihenfolge. Sie können nicht in ein zuvor enthaltenes Skript "zurückgehen" und den ausgegebenen HTML-Code ändern. – Webomatik

+0

Ya das ist, was ich dachte, ich versuchte herauszufinden, wie Wordpress es tut. Sie haben einen Include-Header, aber es zieht bestimmte Seiteninhalte für den Kopf für SEO und Sharing. – Packy

Antwort

0

Anstatt nur Ausgabe erzeugt in den Include-Dateien, sollten Sie Funktionen definieren. Hier ist ein einfaches Beispiel.

header.php:

<?php 
function show_header($title) { 
    ?> 
    <!DOCTYPE HTML> 

    <html lang="en"> 

     <head> 
      <title><?php echo $title ?></title> 
      <?php require 'head.php'; ?> 
     </head> 

     <body id="app"> 

      <div id="page" class="page"> 
       <div id="wrap-header" class="wrap-header"> 
        <header id="masthead" class="site-header"> 

        <?php require 'app-menu.php'; ?> 

        </header> 

       </div> 

       <div id="wrap-main" class="wrap-main"> 
    <?php 
} 

Dann Ihrer Hauptseite tun würde:

<?php 
require('header.php'); 
show_header("My Home Page"); 
Verwandte Themen