一、关于分类文章用户登录才可见。
在子主题或者主题文件中的functons.php 里面添加以下代码:
//需要隐藏的分类ID,多个请用英文的逗号隔开,比如array(4,5,6,7)
$delete_cat = array(384);
//处理隐藏指定内容
function usewp_delete_cat($query){
global $delete_cat;
if(is_vip_x()=='0'){
$query->set('category__not_in', $delete_cat);
}
return $query;
}
add_filter('pre_get_posts', 'usewp_delete_cat');
//被隐藏的内容跳转404
add_action( 'wp', 'usewp_goto_404' );
function usewp_goto_404(){
if ( is_single() && is_vip_x()=='0') {
global $delete_cat;
$arr_cat = get_the_category(get_the_ID())[0];
if(in_array($arr_cat->term_id,$delete_cat)){
global $wp_query;
$wp_query->set_404();
status_header(404);
}
}
}
function is_vip_x(){
//可查看的VIP
$value = zrz_get_lv(get_current_user_id(),'');
if(in_array($value,array('vip1','vip3')) == true || current_user_can( 'manage_options' ) ){
return '1';
}else{
return '0';
}
}
在这里呢本站只是设置了已登录用户即可见,只需要把代码中的VIP1以及VIP3删掉即可
二、分类目录同时实现已登录用户才可见
这个呢只需要一个插件即可实现
但是你想要怎么弄就只能你自己找条件标签了
图一
使用说明:
插件:Menu Items Visibility Control
条件标签:is_category(array(1,2,3,)) || is_page(array(5,6)) || is_home() || in_category(array(1,2,3))
用上面“插件+条件标签”的组合方式,能实现很多功能的变化,当然条件控制的参数要根据自己的情况修改。
Menu Items Visibility Control插件
Menu Item Visibility Control 是真正意义上的一个菜单项显示控制插件。用来控制在什么样的条件下显示某个菜单项,或者不显示。该插件设计简洁、用法直接(但不一定简单,需要有一定的 WordPress 条件标签使用基础)。
上传并启用该插件以后,并不会在 WordPress 仪表盘中看到设置/选项页面。该插件直接在自定义菜单的每个菜单项下面提供一个编辑文本框,让用户自行输入需要的 WordPress 条件标签。如上图所示。这样做的好处是简洁、功能强大 —— 你可以凭自己的想象和需要任意组合各种 WordPress 条件控制标签。但是,也许很多人懒得去看 WordPress 条件标签的使用说明呢,虽然它并不复杂。
感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
暂无评论内容