2

我有一个独特的情况,其中我有几个页面在多个页面中“分页”(通过 WordPress“下一页”功能)。相同的内容,分布在两个或多个页面上,如下所示:

http://mysite.com/mypage/
http://mysite.com/mypage/2
http://mysite.com/mypage/3

因此,页面本身有一个 html 页面标题标签<title>My Page</title>,但由于它分布在多个页面上,我必须创建脚本来为每个页面添加唯一的 html 标题标签,以便让谷歌对它们进行索引。

为此,我正在使用

$exploded = explode("/",$_SERVER['REQUEST_URI']);

if( is_numeric( $exploded[sizeof($exploded)-2] ) && !is_archive())
{
    $title = $title." (Page ".$exploded[sizeof($exploded)-2].")";
}

它为每个“分页”页面创建了唯一的页面标题,如下所示:

<title>mypage</title>
<title>mypage (page 2)</title> 
<title>mypage (page 3)</title>

现在,我遇到了一种情况,我试图稍微增强这一点,以用更具描述性的标题替换(第 X 页)。

因此,在我的标记中,当页面像这样被分页时,我包含了一个包含页面目录的 html“详细信息”元素,如下所示:

<details class="myEl" open="open">
    <summary>In this article</summary>
    <ol>
        <li><a href="post-slug/">Introduction</a></li>
        <li><a href="post-slug/2/" class="active">Title for the second page</a></li>
        <li><a href="post-slug/3/">Title for the third page</a></li>
    </ol>
</details>

为了尝试将 TOC 的标题复制到标题标签中(以替换“Page X”标题),我正在尝试使用这个 jQuery 脚本(它可以完美地更改“计算”源的标题):

<script>
    jQuery(document).ready(function(){
        var title = jQuery('.myEl').find('a.active').text();
        jQuery('title').text(title);
    });
</script>

但是,当我使用Google Structured data testing tool测试这些页面时,标题与“(Page X)”语法保持不变。就好像 Google 正在解析原始 html 源而不是计算源。

这可以确认吗?

4

1 回答 1

2

虽然一些爬虫能够运行 JS 并访问呈现的页面,但大多数都不能。因此,它们都基于原始 HTML 的信息,并使用呈现的页面(如果可用)来检测黑帽 SEO 策略(隐藏关键字填充、链接更改、js 重定向等)。

如果您希望 Google(和其他搜索引擎)使用您改进的标题,则必须将其发送到 HTML 中,而不是在页面加载后对其进行修改。

于 2013-06-21T19:00:02.010 回答