Rank math插件批量设置noindex和nofollow

image

rankmath SEO插件可以在文章里面设置noindex和nofollow,不过如果想在文章外面批量查看index和follow状态的话就需要购买它们的pro插件,其实插件也很多贵,就是多装一个插件觉得麻烦,而且我就要一个能一眼查看文章index和follow,然后能一键设置index和follow就行啦。

说完立马开干,本文会涉及几个主要的wordpress自带function,不想了解的直接无脑粘贴代码即可。

⚠️ 以下所有代码请放到主题的functions.php最后一栏,特别建议放到子主题的functions.php最后一栏

在“所有文章”界面显示index栏

add_filter( 'manage_posts_columns', 'keen_index_follow_column' );
function keen_index_follow_column( $column_array ) {
	$column_array[ 'index_follow' ] = 'Index and Follow';
	return $column_array;
}

粘贴完上面这段代码,在xxxx.com/wp-admin/edit.php界面,点一下右上角的screen options就能看到一个 Index and Follow选项,打勾之后,文章日期旁边就多了这个选项,不过下面是空的,接下来就开始赋值。

标出目前文章index状态

add_action( 'manage_posts_custom_column', 'keen_value_columns', 10, 2 );
function keen_value_columns( $column_name, $post_id ) {
	switch( $column_name ) {
		case 'index_follow': {
			$index_follows = get_post_meta( $post_id, 'rank_math_robots', true );
			if($index_follows){
    			foreach ($index_follows as $index_follow){
    			    echo $index_follow.'<br/>';
    			}
			}else{
			    echo 'index<br>follow';
			}
			break;
		}
	}
}

粘贴完成,你就看到Index会出现值,如果之前都没设置过的话,会默认显示index follow,如果设置过noindex,也会显示对应的值。

展示批量编辑按钮

add_action( 'bulk_edit_custom_box',  'keen_quick_edit_fields', 10, 2 );
function keen_quick_edit_fields( $column_name, $post_type ) {
	switch( $column_name ) {
		case 'index_follow': {
			?>  
				<fieldset class="inline-edit-col-left">
					<div class="inline-edit-col">
					    <span class="title inline-edit-categories-label">Rank math robots</span>
					    <ul style="height: 14em;border: 1px solid #ddd;margin: 0 0 5px;padding: .2em 5px;overflow-y: scroll;">
                            <li><label><input type="radio" id="index" value="0" name="index"/><span class="title">index</span></label></li>
                            <li><label><input type="radio" id="noindex" value="1" name="index"/><span class="title">noindex</span></label></li>
    					</ul>
					</div>
				<?php
			break;
		}
	}
}

选择几篇文章,点击bulk edit就能看到展示的index和noindex按钮了

保存批量设置

add_action( 'save_post', 'keen_bulk_edit_save' );
function keen_bulk_edit_save( $post_id ){
	if ( ! wp_verify_nonce( $_REQUEST[ '_wpnonce' ], 'bulk-posts' ) ) {
		return;
	}
	$index = ! empty( $_REQUEST[ 'index' ] ) ? absint( $_REQUEST[ 'index' ] ) : 0;
    if($index==1){
        $robot_array = array('noindex','nofollow');
        update_post_meta( $post_id, 'rank_math_robots', $robot_array );
    }elseif($index==0){
        //$robot_array = array('index');
        update_post_meta( $post_id, 'rank_math_robots', '' );
    }
}

这里是把选择index还是noindex告诉数据库,然后保存起来,我这里做了一个小偷懒,点击noindex之后会启动noindex和nofollow,如果你想单独设置,可以在第三段代码中增加一个radio按钮,命名为nofollow,value为3,在第四段代码中增加一个判断value等于3的时候设置一个array值为nofollow即可,前提是有一点代码基础。

好了,粘贴完四段代码,就可以愉快的切换index和noindex了,效果截图如下:

给看到文章后面的一个福利,我做成了插件,下载安装激活就能用了

Keen

分享英文建站和SEO技巧

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

 
扫码关注
     
个人微信备注博客
返回顶部