2014-12-02 95 views
0

我正在嘗試移動doctype,head,scripts等,並將body標籤打開到header.php包含文件。我爲頁面標題等設置了php變量。添加額外的腳本到header.php包含文件的頁面?

所有頁面使用相同的腳本,除了需要額外腳本的腳本。

我無法解決如何做到這一點?

如何向使用頁眉模板的頁面添加額外的標籤?

感謝您的幫助!

+1

而是包括在頭額外的腳本有條件,爲什麼不把它包含在你需要的頁面上呢? – APAD1 2014-12-02 16:45:06

+0

header.php擴展到開始的身體標記。如果我只是將它包含在該頁面中,它將不在頭部分中? – 2014-12-02 16:50:04

+0

爲什麼它需要在頭上? – APAD1 2014-12-02 16:59:04

回答

1

簡單的解決方案:

需要額外位的腳本:

$show_extra = TRUE; 
include('header.php'); 

的header.php

<html> 
<head> 
if (isset($show_extra) && ($show_extra)) { 
    ... output extra bits 
} 
</head> 
etc... 
+0

無法開始工作 - <?php if(isset($ gmap_api)&&($ gmap_api)){}?>腳本標記周圍有什麼括號? – 2014-12-02 17:19:54

+0

你已經在你的PHP中直接使用html。這是一個語法錯誤。你需要回顯腳本,或者「<?如果(...){?>' – 2014-12-02 17:53:37

+0

謝謝,我已經在您的幫助下修復了代碼。這一切都工作:) – 2014-12-05 15:43:18

1

你可以有一個標題($ array_scripts)功能,可顯示您的頭文件和裏面的所有腳本。

比方說,你的腳本是CSS文件,你的文件組織這樣:

/www 
---- /css 
    ---- script1.css 
    ---- script2.css 
---- index.php 
---- header.php 

在您的網頁的index.php:

include_once("header.php"); 
$scripts = array("script1.css", "script2.css"); 
header($scripts); 
// Rest of the code : <body> 

而在你的header.php文件:

function header($array_scripts) 
{ 
    // display everything, like <!doctype HTML>, <head> tag... 
    foreach($array_scripts as $script) 
    { 
    echo '<script src="css/'.$script.'">'; 
    } 
    // close tags like </head> 
} 

你甚至可以給你的標題,描述,...作爲你的頭函數的參數。 例如,如果你的頭函數有這個原型:

header($title, $array_scripts); 

您將能夠顯示標題中的header.php有:

// <head> ... 
echo '<title>' . $title . '</title>'; 
+0

我喜歡這個答案,但它對我來說有點太複雜:)不能讓我的頭圍繞它。 – 2014-12-02 17:12:02

+0

我已經編輯了答案,我希望現在有點更清楚了......如果您對理解有困難,請告訴我; – johnkork 2014-12-03 09:15:57

+0

謝謝您的幫助:) – 2014-12-05 15:42:39