2014-05-05 34 views
-1

在我的網站中,所有頁面都有相同的標題。所以我使用include函數作爲頭文件。這包括所有<head></head>如何在<head>內移動<title>?

由於<title>因頁面而異,所以我在<body>之後。

我知道這是錯誤的。我該如何解決這個問題並將標準<head>內的變量<title>移動?

謝謝

回答

2

包括頭前設置標題變量:

$title = 'Whatever you want'; 
include('header.php'); 
//rest of your page 

header.php

<head> 
    <title><?php echo $title ?></title> 
    <!-- the rest of your stuff --> 
</head> 
0

可能設置頁面標題中的變量未來的你有,並有這在腦袋裏:

<title><?php echo htmlspecialchars($pageTitle, ENT_QUOTES); ?></title> 
6

在您包含組頭的代碼,使用一個佔位符標題:

<head> 
<title><?php echo $pageTitle; ?></title> 
... 
</head> 

然後,在特定頁面的代碼,就在include語句之前,填充$pageTitle變量:

$pageTitle = "Your Title"; 
include... 

爲了使您的包括代碼更健壯,考慮設置一個默認的標題。如果沒有提供:

<title><?php echo isset($pageTitle)? $pageTitle: 'Default Title'; ?></title> 
1

把一個變量的頭文件裏爲你的標題,然後之前定義你的頁值您包含頭:

內,您的包括:

<html> 
<head> 
<title><?= $page_title; ?></title> 

內,您的主文件:

<?php 
$page_title = 'My page title'; 
include('header.php'); 
0

可以添加頭之上的PHP變量包括諸如

$title = 'test page'; 

然後在標題中使用

<title>Main site title | <?php isset($title) ? $title : 'No title set' ?> 
1

讓你的包含文件只包含內容<head>標籤,而不是標籤本身。

這樣你可以包含<head></head>標籤之間的文件,並且每個頁面的標題也不相同。

0

根據您設置的方式,您可能必須在調用包含之前設置標題。

PHP:

<?php 
$title = "My Page Title"; 
include('path-to-your-header.php); 

你的頭會是這個樣子,那麼:

PHP:

<html> 
<head> 
<title="<?php echo($title); ?>"> 
... 
</head> 

或者,如果您使用的是框架(笨的例如)你可以使用tempalte - 然後在你的控制器方法中你可以設置頁面標題即

PHP:

<?php 
// Controller 
public function index() 
{ 
    $data['page_title'] = 'Your Page Title'; 
    $data['main_content'] = 'home'; // page content 
    $this->load->view('templates/public', $data); // page template 
} 

// Tempalte 
<html> 
    <head> 
     <title><?php echo ($page_title !== '') ? $page_title . ' | ' . SITE_NAME : '' . SITE_NAME; ?></title> 
... 
</head> 
<body> 
    <?php echo $this->load->view('header'); ?> 
    <?php echo $this->load->view($main_content); ?> 
    <?php echo $this->load->view('footer'); ?> 
</body> 
0

在page.php文件

<?php  
$title = 'This title'; 
include('header.php'); 
?> 

中的header.php

<html> 
<head> 
<title><?php echo isset($title) ? $title : '' ?></title> 
</head> 
<!-- rest of code goes below here --> 
相關問題