Ion*_*zău 15 html javascript php seo
我有一个php页面,可以写一本100页的书.每个页面都有一个特定的URL(例如/my-book/page-one,/my-book/page-two等).
翻页时,我使用历史记录API更改网址url.js.
由于所有书籍内容都是从服务器端呈现的,问题是内容是由搜索引擎索引的(特别是我指的是谷歌),但网址是错误的(例如,它找到了一个片段,page-two但网址是page-one) .
如何阻止搜索引擎(至少谷歌)索引页面上的所有内容,但只索引可见的书页?
如果我以不同的方式呈现内容,它会工作吗:例如,<div data-page-number="1" data-content="Lorem ipsum..."></div>然后在JavaScript端以所需格式更改内容?这会使页面变慢,实际上我不确定Google是否不会通过JavaScript索引更改的内容.
代码如下所示:
<div data-page="1">Page 1</div>
<div data-page="2">Page 2</div>
<div data-page="3" class="current-page">Page 3</div>
<div data-page="4">Page 4</div>
<div data-page="5">Page 5</div>
Run Code Online (Sandbox Code Playgroud)
然后只有可见的div就是那个.current-page.相同的内容在多个URL上提供,因为这是必需的,因此用户可以在页面之间切换.
例如,/book/page/3渲染这段HTML同时/book/page/4渲染相同的东西,唯一的区别current-page是添加到第4个元素的类.
谷歌确实为不同的网址编制索引,但它做错了:例如,向用户呈现的代码段Page 5链接(不是)./book/page/2Page 2Page 5
如何告诉谷歌(和其他搜索引擎)我只对索引内容的索引感兴趣.current-page?
据我所知,他的问题是你对许多网址都有相同的内容.喜欢:
www.my-awesome-domain.com/my-book/page/42
www.my-awesome-domain.com//my-book/page/7
页面的可见内容可通过JavaScript进行调整,即用户在点击您网站上的某些元素时执行.
在这种情况下,您需要做两件事:
今天谷歌机器人正在他们的官方博客中宣布执行JavaScript:https: //webmasters.googleblog.com/2015/10/deprecating-our-ajax-crawling-scheme.html
因此,如果您在按下"刷新"(F5)并且将指定规范页面属性时获得正确的页面行为,则将正确地抓取页面,并且当您将按照该链接进行链接页面时.
如果您需要更多指导如何在url.js中执行此操作请发布另一个问题(因此将为其他人提供正确的文档),我将很乐意为您提供帮助.
答案很简单:你做不到。在不同的 URL 下保留相同的内容并要求搜索引擎只索引其中的一部分,这在技术上是不可能的。
如果您同意只对一页进行索引,则可以使用之前建议的规范 URL。您将链接到主页面的规范 URL 放置在每个子页面上。
您可能会发现“黑客”使用了用于 Google Search Appliance 的特殊标签:googleon和googleoff。
唯一的问题是这很可能不适用于 Google Bot(至少没有人会保证它会)或任何其他搜索引擎。
将内容保存在 JSON 文件中,不要在HTML 中呈现。从服务器仅提供正确的页面:用户可见的内容。
当用户单击按钮(上一页/下一页链接等)时,使用 JavaScript 呈现 JSON 文件的内容并更改 url,就像您已经在做的那样。
这样您就知道您始终从服务器提供正确的内容,并且 Google 机器人显然会正确索引页面。