2010-04-28 51 views
11

我一直在使用標題爲網站創建模板。 這很簡單,調試非常方便。WebDesign:標題文件,但帶有自定義頁面標題?

我現在面臨使用頭部但與自定義頁面標題的問題。 如果這是我的的header.php>

<html> 
    <head> 
     <title> My Site : ??? </html> 
    </head> 
<body> 


</body> 
</html> 

我需要???爲每個頁面替換。

這可能嗎?如果是這樣,怎麼樣?謝謝。 :)

回答

18

不知道更多關於你的文件包含方案,最簡單的方法是:

使page2.php

<?php 
$pageTitle = 'Page 2'; 
include 'header.php'; 
?> 

<div>My content</div> 

<?php include 'footer.php'; ?> 

的header.php

<html> 
    <head> 
     <title> My Site : <?php echo $pageTitle ?> </title> 
    </head> 
<body> 

footer.php

</body> 
</html> 
+0

哦修正1級小的錯誤,我想我慢熱型...:) – Bojack 2010-04-28 19:05:41

0

,你可以查詢數據庫的頁面的標題,然後使用PHP :)打印

編輯:

的問題回首,這取決於你如何有你的網站設計了這個可能不是最簡單的解決方案。但是如果您已經在使用某種身份識別系統,這應該很容易。

1

如果我在包含標題之前添加一些代碼,它會有幫助嗎?

<?php 
    $currentPage = "Random Page Title"; 
    include "header.php"; 
?> 

然後使用header.php中的值打印頁面標題?

+0

是的,但如果你將當前頁面定義爲「隨機頁面標題」,它將是「隨機頁面」標題「,或者你將不得不編輯你想要標題的每一頁......從長遠來看,這是不好的。使用數據庫將有助於您選擇頁面標題。 – ChelseaStats 2012-08-15 10:39:24

2

webbiedave的答案是完全正常的,但是從長遠來看,你應該學會使用一個體面的模板語言(Smarty的,Twig),或具有它自己的模板一個PHP框架。 Kohana和Codeigniter都很容易進入。

+0

同意。隨着他的經驗和需求的進步,他應該跨越。我的回答只是一個簡單的起點。 – webbiedave 2010-04-28 19:25:41

0

是的,它肯定會有幫助。但是你需要做一些定製。

首先,如果要從數據庫查詢/獲取數據,請確保連接到數據庫。爲了實現這種情況,在腳本的開頭部分包含「config.php」頁面,其中將顯示數據庫連接邏輯。

然後,編寫您的查詢以從該數據庫獲取數據,並將該值分配給所需的變量以在標題頁中使用它。

最後,包含您的「header.php」頁面。

對於 「config.php中」 頁: -

數據庫連接的邏輯,如利用的 「的mysql_connect()」 & 「mysql_select_db()」 函數。

對於「定製。PHP」頁面: -

<?php 
    include "config.php"; 

    $sql = "SELECT pageTitle FROM db_table WHERE condition = 'something'"; 
    $sql_exe = mysql_query($sql) or die("Error in Fetching Page Title"); 
    if(mysql_num_rows($sql_exe)) { 
    $currentPage = mysql_result($sql_exe, 0, 0); 
    } 
    else { 
    $currentPage = "Random Page Title"; 
    } 
    mysql_free_result($sql_exe); 

    include "header.php"; 
?> 

另外,如果你願意,你可以隨時使用一些類MySQL連接&查詢,獲取數據,但是這是怎麼總是工作

0

你可以調用JavaScript。更改動態頁面的標題,這是一個更好的解決方案,如果你有一個調用其他所有包括

0

你也可以使用類似這樣的高手index.php文件:

,如果你娶了你的PHP文件名與您的網頁標題

例如,您可以使用explode或str替換以使其更易於用戶替換逗號或下劃線。

<?php 
    echo basename($_SERVER['REQUEST_URI']); 
    ?> 

<?php 
    // my_page_title.php 
    $var=basename($_SERVER['REQUEST_URI']); 
    $pagetitle=str_replace("_"," ",$var); 

    // my page title 
    ?>  
    <title> My Site : <?php echo $pagetitle; ?> </title> 
0

在Webbiedave的header.php文件條目

</html> should be </title> 

<html> 
    <head> 
     <title> My Site : <?php echo $pageTitle ?> </title> 
    </head> 
<body> 
相關問題