为什么Joomla 3将Canonical标签添加到当前页面并使其无法索引?


8

Joomla在几乎所有引用自己的页面上都添加了规范标签,因此它们将无法索引(我通过FF中的SEO扩展名检查了URL ),并且它们未显示在Google搜索结果中(我尝试过在Google和1个月后,我找不到该网址和Google网站管理员工具的报告:已提交34个网址,已索引15个网址!)

例如,我的URL是:http://cactusict.com/ویپ-voip.html

Joomla补充说: <link href="https://joomla.stackexchange.com/ویپ-voip.html" rel="canonical"/>

我在网址中使用了UTF-8字符,对于某些URL,Joomla将其转换为标准标记中的HTML字符。

我真的很困惑!我尝试了SEF404SH组件,结果是一样的!

我应该担心Doctor SEO扩展警告与否吗?如果没有,为什么我的页面没有显示在Google搜索结果中?

我没有多篇文章,那么为什么显示规范标签?

如何在Joomla中删除规范标签?

Answers:


6

解决方案:

  • 一种选择是通过/plugins/system/sef/sef.php在第51行上为文件创建替代来阻止Joomla创建规范的URL (最好没有规范,然后是不正确的规范)

  • 如果只涉及整个网站上的一两个页面,则可以考虑使用NoNumber的ReReplacer插件来设置正确的标签

  • 安装插件或扩展。主要的SEF扩展都设置了规范的URL,但是最近已经发布了一个很小的插件,似乎可以满足我们在这里所需的功能,Styleware的Canonical插件

参考:joomla-seo.net/Blog/joomla-3-and-canonical-url

注意:现在您无法覆盖没有tmpl文件夹的插件。因此,对于第一个选项,您需要更改不推荐的核心文件。尝试第二个或第三个选项。


4

这是为了消除对使用自引用的Canonical Link元素的任何误解,因为使用一个不是问题,怎么可能-假设您正在此URL查看的页面实际上就是您要显示的页面( ??)

Google对此非常满意。据我所知,只有Bing提出了避免使用自引用规范URL的建议,但是即使存在,它也不会使页面不可索引。

规范网址不是Google未为您的某些页面编制索引的原因。如果是这样,则您的所有页面均不应被索引。

Google不保证将在给定时间段内索引网站的所有页面。


这可能对规范链接有所帮助:
Google的Matt Cutts引入了规范链接元素。


2

适用于我的解决方案与Robert Went在其博客中使用的解决方案相同。这是他的:

$doc = JFactory::getDocument();
foreach($doc->_links as $k => $array){
  if($array['relation'] == 'canonical'){
    unset($doc->_links[$k]);
  }
}

0

对于最近的答案,我最近遇到了与此类似的问题。我发现规范链接引用了错误的站点URL(因为最初我将一个开发站点克隆为新URL上的实时站点)。问题是规范链接在Joomla中不是相对的,因此在克隆站点后,域不正确。

遍历MySQL数据库后,我发现在Plugins> System-SEF中定义了规范设置。在该插件配置中,您会看到Site Domain的设置。如果保留为空白,它将禁用规范标记并将其从文章中删除。或者,如果您使用正确的网站基本URL来完成它,并且它应该为搜索引擎返回正确的规范URL。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.