如何覆盖html中的现有元标记?

时间:2016-03-11 09:46:58

标签: html web-crawler meta-tags

我有一个包含此元标记的html文档:

<meta name="robots" content="noindex, nofollow"> 

我希望将此标记保留在头部,但使用此新声明覆盖它:

<meta name="robots" content="index, follow">

我应该在第一个之前或之后放置重写标签吗?

1 个答案:

答案 0 :(得分:4)

如果我们只考虑 robots 元标记:

最好的方法是在页面输出中仅包含正确的元标记。

没有HTML约定来覆盖元标记,因此使用它们的不同服务(浏览器,搜索引擎等)将对具有多个冲突元标记的效果进行不同的解释。

在您的情况下,无法保证不同的搜索引擎会遵循您的机器人说明。其中一些可能会使用第一次出现,其他可能会使用最后一次出现,而Google可能会使用限制性更强的指令。

这里提到了最后一个Official Google Blog Post,但它是从2007年开始的,事情可能会发生变化。

虽然有一种方法可以使用Jquery动态更改元标记的内容:

$("meta[name='robots']").attr('content', 'index, follow'); 

再次无法保证这会产生预期的效果。 Google在抓取您的网页时执行JavaScript(我不确定它会尊重此),但其他搜索引擎可能不会。

有关Google在抓取网页时执行JavaScript的其他信息: