【问题标题】:Title tags in body (php) [closed]正文中的标题标签(php)[关闭]
【发布时间】:2011-07-14 09:52:40
【问题描述】:

目前我的网站页脚中有标题标签。 这是因为标题是动态的,如果我把它放在头部,那么它就是空白的,因为标题内容直到正文才会加载。

我的问题是,对于 SEO 而言,标题标签位于页脚而不是页眉中是否重要?

【问题讨论】:

    标签: php html header title footer


    【解决方案1】:

    目前我的网站页脚中有标题标签。

    这是无效的。标题标签must be in the <head> section:

    每个 HTML 文档必须HEAD 部分有一个 TITLE 元素。

    此外,它可能会给现实世界带来问题。我从未见过页面页脚中使用title 标签,我希望它们会被那里的搜索引擎忽略。

    您应该更改 PHP 脚本的底层架构,以便在页面启动时知道标题。

    参考:

    【讨论】:

    • 无效是什么意思?它似乎完成了这项工作,即。显示我想要的标题。以及在复制链接时在论坛上显示标题。虽然我确实怀疑它不能很好地与 SEO 一起使用。
    • @Michael HTML 有规则。如果你不遵守这些规则,你就没有写出有效的 HTML。尽管如此,浏览器渲染它并不重要。标题不属于页脚。
    【解决方案2】:

    "if I place it in the head then it's blank, as the title content doesn't get loaded until the body." - 这意味着您的网站设计错误

    您应该使用模板和正确的页面布局。
    实际上,您的页面代码应该输出nothing,但只输出所需的数据,然后抛出错误或调用模板

    一个简洁的例子:

    页面调用links.php:

    <?
    //include our settings, connect to database etc.
    include dirname($_SERVER['DOCUMENT_ROOT']).'/cfg/settings.php';
    //getting required data
    $DATA=dbgetarr("SELECT * FROM links");
    $pagetitle = "Links to friend sites";
    //etc
    //and then call a template:
    $tpl = "links.php";
    include "template.php";
    ?>
    

    现在template.php 是您的主要网站模板,由您的页眉和页脚组成:

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>My site. <?=$pagetitle?></title>
    </head>
    <body>
    <div id="page">
    <? include $tpl ?>
    </div>
    </body>
    </html>
    

    links.php 是实际的页面模板:

    <h2><?=$pagetitle?></h2>
    <ul>
    <? foreach($DATA as $row): ?>
    <li><a href="<?=$row['link']?>" target="_blank"><?=$row['name']?></a></li>
    <? endforeach ?>
    <ul>
    

    简单、干净且可维护。

    【讨论】:

      【解决方案3】:

      我对 Col. 使用了一种类似的方法,但是这个方法会采用您的文件名,即 (my_contact_form.php) 并将其更改为“我的联系表”作为您的页面标题。不完全是你需要的,但我只是想给你另一种选择。

      我有一个名为 config.php 的文件,其中包含我的函数等。

      <?php
      // dynamic page titles
      
      $page = basename($_SERVER['SCRIPT_FILENAME']);
      $page = str_replace('_',' ',$page);
      $page = str_replace('.php','',$page);
      $page = ucwords($page); 
      

      ?>

      现在我只是将页面包含在我想要替换标题的任何页面上

      <?php  require("config.php")  ?>
      

      并使用如下标题

      <title>Your Site Name &raquo; <?php echo $page; ?></title>
      

      【讨论】:

        猜你喜欢
        • 2019-05-09
        • 2016-07-26
        • 1970-01-01
        • 1970-01-01
        • 2016-03-04
        • 2023-03-09
        • 2013-08-05
        • 2014-03-20
        • 1970-01-01
        相关资源
        最近更新 更多