如果帖子具有特定的分类,则在帖子中添加meta noindex

时间:2021-04-12 作者:Dennis

如果product\\u type=\'enviso\\u group\\u ticket\',如何在当前帖子中添加以下行?

<meta name=”robots” content=”noindex,nofollow”/>
product_type 是Woocommerce产品的默认分类法。

我已经有以下内容:

$product_type = get_the_terms( $post->ID,\'product_type\')[0]->slug;
if($product_type == "enviso_group_ticket"):
  //add meta to header
endif;

1 个回复
SO网友:Antti Koskinen

您可以使用wp_robots 过滤以根据需要操纵robots元标记。在检查分类术语时,可以使用has_term() helper有条件地使您的代码看起来更好一些。(可以将帖子传递给has_term() 作为第三个参数,但如果未传递该参数,则函数将对照当前post进行检查

add_filter(
    \'wp_robots\',
    function(array $robots) {
        if ( has_term(\'enviso_group_ticket\', \'product_type\') ) {
            return array_merge(
                $robots,
                array(
                    \'noindex\' => true,
                    \'nofollow\' => true,
                )
            );
        } else {
            return $robots;
        }
        
    }
);

相关推荐

使用WordPress的PHP代码,如何一次仅从数千个用户中批量删除100个订阅者?

使用WordPress PHP代码,如何一次从数千个用户中批量删除100个订阅者?(以下代码试图一次删除所有50k用户,而我的服务器挂起。如果我一次只能删除100个用户,那么我可以每5分钟使用一次Cron作业。)<?php $blogusers = get_users( ‘role=subscriber’ ); // Array of WP_User objects. foreach ( $blogusers as $user ) { $user_id = $user