跳到主要内容

您可能已经听说过许多WordPress Blogger使用的强大的All in One SEO插件。根据报告,此插件已获得超过300万次安装。

All in One SEO插件似乎强大而强大,尽管它非常有用,但该插件存在一个特定问题,困扰着其用户。

该插件会自动将rel规范添加到每个未索引的页面。

每当用户未为特定页面或帖子建立索引时,插件就会将rel规范添加到该页面或帖子。对于用户而言,这是一个真正的问题,因为建议用户不要在没有索引的页面上规范地使用它。

All In One Seo可从noindexed页面中删除rel Canonical
All In One Seo可从noindexed页面中删除rel Canonical

如何解决问题

插件的开发团队已针对此问题提出了一般解决方案。他们建议用户使用过滤器挂钩来更改此插件处理不同情况的方式。

换句话说,用户需要将一些代码应用于functions.php文件以自定义插件设置。

如何使用挂钩摆脱Rel Canonical

负责自定义此特定修复程序设置的代码非常简单明了。

您所需要做的就是通过代码行和函数添加一个过滤器,以便根据所需条件删除相关规范。

如何设定程序

您需要执行以下步骤,以便可以设置该过程:

  1. 首先要做的是备份WordPress博客。每当用户决定使用WordPress代码时,始终建议备份所有内容。这是为了确保所做的更改不会对现有博客造成损害,并且在进行更改后可以将其移回最新版本。除了备份自己的博客外,用户还必须确保托管服务提供商每天都在备份整个网站。
  2. 第二步是打开您的WordPress主题的functions.php文件。理想情况下,该文件必须位于特定主题的根目录中。如果找不到文件或查找文件时遇到任何困难,建议联系托管提供商或开发人员以帮助您找到正确的文件。
  3. 之后,在添加新代码之前,请先备份当前的functions.php文件,这一点很重要。这是为了确保在出现问题或无法正常工作时使用完整的文件版本。您可以下载文件,将其另存为备份,然后返回原始文件以对代码进行更改。
  4. 现在是时候将代码添加到functions.php文件中的关键步骤了。以下代码用于检查当前页面是存档页面还是类别页面。如果页面已经是规范的,则此代码将在HTML中指示rel规范。
    add_filter('aioseop_canonical_url','remove_canonical_url', 10, 1);
    function remove_canonical_url( $url ){
    global $post;
    if( is_category() ){
    return false; // Remove the canonical URL for categories.
    } elseif (is_archive() ){
    return false; // Remove the canonical URL for archives.
    }
    return $url;
    }
  5. 下一步是将修改后的functions.php文件上传到主题根目录中的站点。这是上传文件的理想位置。如果您不知道根目录位于何处,请寻求开发人员或托管服务提供商的帮助,并避免在WordPress安装的任何部分或每部分中上传文件。
  6. 将文件上传到正确的位置后,就可以通过访问已存档的页面或类别页面来测试代码。代码的成功在于以下事实:HTML中不存在rel canonical,而只能看到meta robots标签。
  7. 用户不得停止测试文件。您必须重新检查您的主页,博客文章和网页,以确保正确显示rel规范。您需要确认主题和其他插件与functions.php文件中的更改同步,并且没有行为异常。
  8. 如果经过全面测试,您发现没有问题,并且一切似乎都按预期进行,那么恭喜您,您已经使用WordPress中的All in One SEO插件成功地从noindexed页面中删除了rel规范。
  9. 此外,您可以使用相同的过程根据ID从任何特定页面或帖子中删除相关规范。为此,可以将以下代码添加到已创建的函数中,以检查特定页面或帖子。您只需要添加一个elseif即可指示页面或帖子的ID。
    elseif ( $post->ID === 2){
    return false; // Remove the canonical URL for post #2.
    }

结论

这样,用户可以从所有未索引的档案或类别以及任何特定页面或帖子中删除rel规范。

可能仍然需要编辑某些其他代码,但是上述方法被证明是一种理想的解决方案,不需要花费很多时间来设置。

回到顶部