繁体   English   中英

Wordpress 删除机器人元标记 noindex

[英]Wordpress remove Robots Meta Tag noindex

遇到 wordpress 站点元机器人标签的奇怪问题。 所有页面都有以下元标记,我们似乎无法将其删除

<meta name="robots" content="noindex,follow"/>

我们在“设置”>“阅读”>“搜索引擎可见性”中取消选中“阻止搜索引擎索引此站点”,但它什么也没做。

我们正在使用 Yoast SEO 插件,但即使禁用它,它仍然存在。 事实上,我们已经尝试禁用所有插件以检查没有任何干扰。

我们已经设置我们的 Robots.txt 文件如下:

User-agent: *
Disallow: 
Sitemap: http://speysidedistillery.co.uk/sitemap.xml

我不确定 Robots.txt 是否优先于 robots 元标记,而且似乎没有明确的答案,据我所知,最严格的答案将优先于 meta 标记。

这主要给我们的 google 列表带来了问题,警告“由于该网站的 robots.txt,此结果的描述不可用”而不是我们的网站描述。

如果情况变得更糟,我们可以在 wp-includes/general-templates.php 中编辑 wp_no_robots function,但更愿意在不编辑 wp 核心文件的情况下解决这个问题。

任何人都可以照亮这一切都会很棒,因为我们不知所措,干杯

该网站位于http://speysidedistillery.co.uk/

我为客户开发了一个电子商务网站,我被这个问题困扰了一个多星期,除了主页之外,所有页面都被编入索引。

经过对 Yoast Seo 插件的长时间调试,我为你们找到了一个解决方案。

解决方案 主页上有一个搜索页面(用于搜索产品)。 默认情况下,Yoast 禁用搜索页面和 404 页面的“索引”元标记。 有趣的是,如果您的主页上有搜索页面或搜索功能,您的网站可能不会被谷歌或任何其他搜索引擎编入索引。

要通过 Yoast SEO 插件修复此默认值,请按照以下步骤操作:

第 1 步:登录您的 cpanel 并导航到 /public_html/yourwebsite.com/wp-content/themes/nameOfTheme/functions.php 将此行代码添加到您主题的 function.php 文件中(在页面顶部)

 /**
  * EDITED BY OBOT ERNEST
  * REMOVES NOINDEX META TAG FROM HOME PAGE  & SEARCH PAGE IMPLEMENTED BY YOAST
 */


    add_filter('wpseo_robots', 'yoast_no_home_noindex', 999);
    function yoast_no_home_noindex($string= "") {
        if (is_home() || is_front_page() || is_search()) {
            $string= "index,follow";
        }
        return $string;
    }

粘贴代码后,保存并关闭文件。

步骤 2 请注意,第二步适用于使用以下任何 SEO 插件(Yoast Premium、Yoast Free 或 wordpress-seo-premium 插件)的用户

导航到:/public_html/youwebsite.com/wp-content/plugins/wordpress-seo-premium/frontend/class-frontend.php

用下面的代码替换第 713 行的代码:

    if ( is_search() ) {
$robots['index'] = 'index';
}
    if ( is_404() ) {
$robots['index'] = 'noindex';
}

保存文件并关闭

恭喜! 你刚刚做到了。 伙计们,它工作得很好!

我在这里找到了一个对我有用的解决方案

add_action( 'init', 'remove_wc_page_noindex' );
function remove_wc_page_noindex() {
    remove_action( 'wp_head', 'wc_page_noindex' );
}

这个问题似乎是在三个线程上:

  1. 如何阻止 Wordpress 插入 noindex 元标记?
  2. Wordpress 删除机器人元标记 noindex
  3. 无法删除 wordpress 中的操作 noindex

如果您使用的是 Roots Bedrock,请检查.env文件中WP_ENV的值。 如果它设置为development那么这会自动覆盖blog_public的值始终为false ,这意味着“无机器人元”总是被注入。

只需在您的.env文件WP_ENV='production'其更改为WP_ENV='production' ,保存更改即可。

我研究了许多解决方案但无法更新它,甚至通过添加以下代码片段更新了 functions.php 文件。 您需要更新“class-frontend.php”,但我找不到。 然后我试了一下,它对我有用。

add_filter('wpseo_robots', 'yoast_no_home_noindex', 999);
function yoast_no_home_noindex($string= "") {
    if (is_home() || is_front_page() || is_search()) {
        $string= "index,follow";
    }
    return $string;
}

go 外观 -> 主题编辑器 -> header.php

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

你可以试试这个选项->隐私->博客可见性。 您已将其设置为阻止搜索引擎。

检查主题文件夹中的header.php文件。

我删除了yoast并重新安装。 重新安装时问是否要索引,这次我选择是。 有效。 但幸运的是,对我来说,我没有做太多 seo,第一次可能是 1 或 2 页。

如何删除 WordPress 机器人元标记 noindex, nofollow

我们将向您展示如何使用替换管理面板中的一些代码来删除 WordPress 中的 meta name='robots' content='noindex nofollow',没有插件请求。

第 1 步 – 登录您的 cPanel

好了,你登录 public_html 目录,现在你找到一个文件夹,名字wp-includes ,双击打开这个文件夹。 同时,还有这么多文件夹和文件,深吸一口气,只需单击键盘 Ctrl+f 并键入general-template.php

第 2 步 - 编辑 general-template.php 文件

general-template.php 中找到此代码

function wp_no_robots() {
if ( get_option( 'blog_public' ) ) {
    echo "<meta name='robots' content='noindex,follow' />\n";
    return;
}

echo "<meta name='robots' content='noindex,nofollow' />\n";

}

首先用以下代码替换:

function wp_no_robots() {
if ( get_option( 'blog_public' ) ) {
    echo "<meta name='robots' content='index,follow' />\n";
    return;
}
echo "<meta name='robots' content='index,follow' />\n";

}

2 – 找到第二个代码相同的文件general-template.php:

这个

function wp_sensitive_page_meta() {
?>
<meta name='robots' content='noindex,noarchive' />
<meta name='referrer' content='strict-origin-when-cross-origin' />
<?php

}

替换为

function wp_sensitive_page_meta() {
?>
<meta name='robots' content='index,archive' />
<meta name='referrer' content='strict-origin-when-cross-origin' />
<?php

}

完成后,返回网站检查,切换到 Search Console,重新提交您之前尝试过的 URL。 URL 检查报告应该没有所有警告和错误消息,至少是与索引和抓取能力相关的警告和错误消息,并且您将能够“请求索引”。

我找到了一个 100% 有效的解决方案 在此处阅读完整详细信息

导航到 Yoast SEO -> 搜索外观。 根据您需要由 google 编入索引的页面,选择选项卡Content TypeTaxonomies

就我而言,谷歌无法索引我的标签页面(/tag/tag-name)),所以我Show Tags in search result?切换了Show Tags in search result? Yes 它将从以下位置更改机器人元标记:

<meta name="robots" content="noindex, follow" />

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

希望能帮上忙。

  1. 在 robots.txt 文件中使用以下代码:
User-agent: *
Allow: / 
  1. 确保在Settings-> Reading下未选中“ Discourage search engines from indexing this site ”复选框。 如果是,则将其标记为未选中。 在此处输入图像描述

  2. 最后,这是在 Yoast SEO 插件中为我制造问题的步骤。 Go到YOAST SEO->Search appearance->Content Types->Pages下这些设置。 确保以下设置已打开:

在此处输入图像描述

清除您的 wordpress 和浏览器缓存。 此步骤有助于从元标记中删除 noindex。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM