如何在&lt; head&gt;?</title>中移动<title>

时间:2014-05-05 14:32:37

标签: php html

在我的网站中,我对所有页面都有相同的标题。所以我使用include函数作为标题。这包括所有<head></head>

由于<title>根据页面而变化,因此我将其放在<body>之后。

我知道这是错的。如何解决此问题并将变量<title>移到标准<head>

谢谢

8 个答案:

答案 0 :(得分:6)

在标题中包含的代码中,使用占位符作为标题:

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

然后,在页面特定的代码中,在include语句之前,填充$pageTitle变量:

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

为了使您所包含的代码更加健壮,请考虑设置默认标题,如果没有提供:

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

答案 1 :(得分: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>

答案 2 :(得分:1)

在标题文件的头文件中添加一个变量,然后在包含标题之前在页面中定义该值:

在您的内容中包含:

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

在主文件中:

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

答案 3 :(得分:1)

使您所包含的文件仅包含<head>标记的内容,而不包含标记本身。

这样,您可以在<head></head>代码之间加入文件,并且每个页面的标题也不同。

答案 4 :(得分:0)

可能将页面标题设置在include之前的变量中,并将其放在头部:

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

答案 5 :(得分:0)

您可以在标题包含上添加一个PHP变量,例如

$title = 'test page';

然后在标题中使用

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

答案 6 :(得分:0)

根据您设置的方式,您可能必须在调用include之前设置标题。

<强> PHP:

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

你的标题看起来就像这样:

<强> PHP:

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

或者,如果你使用框架(例如codeigniter)你可以使用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>

答案 7 :(得分: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 -->