如图所示,游客以及非VIP会员不可访问,游客访问跳转登录,非vip跳转会员开通。效果见本站教程说明将下载的附件中代码复制并放在主题根目录 functions.php 文件最底部。
代码如下:
//针对部分分类隐藏只允许SVIP访问
add_action( 'template_redirect', 'ashuwp_show_only_login', 0 );
function ashuwp_show_only_login(){
global $wpdb;
$dluid = get_current_user_id();
//查询发布者是否VIP
$postvip = "SELECT meta_value FROM wp_usermeta WHERE user_id='$dluid' and meta_key='cao_user_type'";
$postvip = $wpdb->get_var($postvip);
//查询VIP到期时间
$postviptime = "SELECT meta_value FROM wp_usermeta WHERE user_id='$dluid' and meta_key='cao_vip_end_time'";
$postviptime = $wpdb->get_var($postviptime);
//判断登录,about页面就允许访问
if(in_category(array(103,104)) && !is_home() && !is_user_logged_in()){ //此处103 104为分类ID
echo ''._title().'';
echo '
.tips {position:absolute;top:50%;left:50%;width:500px;height:250px;background:#FFF;margin-top:-170px; margin-left:-250px;box-shadow: 0 8px 10px rgba(255, 255, 255, 0.3);}
.tips>ul {padding:0;margin-top:10.5%;}
.tips>ul>li {list-style-type: none;text-align:center;}
.tips>ul>li>a {text-decoration: none;padding: 8px 20px;border:2px solid #2c63ff;display: inline-block;margin-top:5px;}
';
echo '
此分类为VIP专属分类
开通会员后可访问
- 立即跳转
';