我正试图在我的Wordpress网站上不索引除3位作者以外的所有作者的帖子。
我发现以下代码可以放在标题中。php文件。然而,这是针对特定类别的。
<?php if (is_single() && (in_category(array(457)))) {
echo \'<meta name="robots" content="noindex, follow">\';
} ?>
我如何修改它,比如说,如果是单篇文章,并且不是ID为111、112或113的作者,那么插入noindex,如下所示。以下是否正确
<?php if (is_single() && !(is_author(array(111,112,113)))) {
echo \'<meta name="robots" content="noindex, follow">\';
} ?>
最合适的回答,由SO网友:Andrea Somovigo 整理而成
抄本:is_author() 是一个条件标记,用于确定查询是否针对现有的作者存档页因此它不适用于您的范围。
最好的解决方案,而不是使用模板文件头。php是在函数中编写函数。php钩住正确的动作wp_head
:
add_action(\'wp_head\',\'AS_exclude_author_from_indexing\');
function AS_exclude_author_from_indexing(){
$toIndex = array(111,112,113);
$user_id = get_the_author_meta( \'ID\' );
if( !in_array($user_id,$toIndex)){
echo "<meta name=\\"robots\\" content=\\"noindex,follow\\">".PHP_EOL;
}
}