以编程方式阻止搜索引擎抓取您的WordPress帖子



我想以编程方式阻止搜索引擎使用PHP抓取WordPress帖子。

场景是,我正在创建一个虚拟帖子以及用户注册,我希望它不可搜索,否则用户已经编辑并保存它。有什么办法可以做到这一点吗?

在主题的functions.php文件或自定义插件文件中使用以下代码片段。

function ar456_header_metadata() {
// Seperate Conditional Tag for Pages & single page in other post type
if( is_page( array( 'page-slug', 'post_id' ) ) or is_single( array( 'page-slug', 'post_id' ) ) ) {  ?>
<meta name="robots" content="noindex,follow">
<?php   }
}
add_action( 'wp_head', 'ar456_header_metadata' );

在代码中,您可以看到两个条件标签is_page()is_single()is_page()适用于主页帖子类型,is_single()适用于所有其他帖子类型。

更新您的页面ID,条件标记中的标题或辅助信息域,元标记将在这些页面中可用。

下面给出的例子。

if( is_page( array( 'sample-page', '3' ) ) or is_single( array( 'hello-world', '6' ) ) ) {  ?>

https://developer.wordpress.org/reference/functions/is_page/https://developer.wordpress.org/reference/functions/is_single/

如果您希望排除所有帖子,只需将以下内容添加到主题的<head>块中:

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

如果您希望排除某些帖子,则必须根据所需的任何规则有条件地包含该元标记。

Ceejayoz 有完美的答案,但我没有直接评论的声誉。您必须创建一个专门阻止机器人的模板,然后为要省略的帖子和页面调用该模板。

最新更新