已建站九年的老牌绿色软件站
不忘初心,坚持每日更新不易!

纯代码实现WordPress文章内容隐藏设置VIP会员用户可见

纯代码实现WordPress文章内容隐藏设置VIP用户可见方法,类似 Erphpdown 会员插件系统,因为亿破姐网站不喜欢使用那些花里胡哨的的插件,erphpdown 就有很多不必要的功能,个人感觉就是累赘,多余的功能影响网站的加载速度,所以在网上找了一份代码可以实现WordPress文章内容隐藏设置VIP用户可见,话不多说,下面给大家贴上代码。

一、文章内容隐藏代码

把下面代码复制到主题文件的 functions.php 中保存

add_shortcode( 'vipp', 'users_read_shortcode' );
function users_read_shortcode( $atts, $content = null ) {
if ( is_user_logged_in() && !empty( $content ) && current_user_can( 'read' ) ) { 
return $content;
}
if ( !is_user_logged_in()){
return '温馨提示:此处内容需要登录后才能查看!';
}
if ( is_user_logged_in() && !current_user_can( 'read' )){
return '温馨提示:此处内容您暂时还没有权限查看,请联系管理员升级您的用户权限!';
}
}

二、代码使用方法

在编辑文章的时候在使用以下代码设置隐藏内容(代码中的【 改成 [  )如果我写[ ]会自动隐藏,所以【 代替

【vipp] 这是隐藏的内容 【/vipp]

如果嫌弃麻烦的可以直接传统编辑器添加一个 “VIP用户可见” 按钮(代码中的【 改成 [  ),古腾堡编辑器同学爱莫能助了,以下代码直接复制到 functions.php 文件中保存

function appthemes_add_vipp() {
?>
<script type="text/javascript">
if ( typeof QTags != 'undefined' ) {
QTags.addButton( 'vipp', 'VIP用户可见', '【vipp]','【/vipp]' );
} 
</script>
<?php 
}
add_action('admin_print_footer_scripts', 'appthemes_add_vipp' );

三、设置VIP用户组  // 调整用户的用户组

1、因为WordPress默认注册用户都是有 read 读权限的,我们需要设置一个VIP用户组,不给该角色赋予读权限,以下代码直接复制到 functions.php 文件中保存

//添加普通用户组
add_role('pt_user', '普通用户', array(
'read' => false, //读权限
'edit_posts' => false,//编辑权限
'delete_posts' => false, //删除权限
));

2、把所有的订阅者转换为普通用户

后台 > 用户 > 把角色批量变更为普通用户

这个订阅者才是VIP用户组,订阅者才能阅读我们代码vipp隐藏的内容,普通用户无法阅读,简简单单就完成了WordPress文章VIP用户的设置

最后 WordPress 后台里选择 “设置” > “常规” > “新用户默认角色” 设置默认普通用户组

下面的代码与上面无关,仅仅为记录一下

1、WordPress 修改用户角色

以修改“订阅者”为“设计师”为例,复制下面的代码到 wordpress 主题的 functions.php 文件中。

//WordPress 修改用户角色
add_action('init', 'fanly_change_role_name');
function fanly_change_role_name() {
global $wp_roles;
if ( ! isset( $wp_roles ) )$wp_roles = new WP_Roles();
$wp_roles->roles['subscriber']['name'] = '设计师';
$wp_roles->role_names['subscriber'] = '设计师';
}

对照修改第 6、7 行中你想要编辑的角色英文名称(小写字母)所对应的中文名称,保存即可,之后,新增用户时,在角色选择中可以看到你所修改的用户角色的新名称。

2、WordPress 添加用户角色

将下面的代码添加到当前主题的 functions.php ,就可以添加一个名为 “自定义角色” 的用户角色,其中 custom_role 为用户因为标识,不可以重复

//WordPress 添加用户角色
add_role('custom_role', '自定义角色', array(
'read' => true, //阅读权限,true 表示允许
'edit_posts' => true,//编辑文章的权限,true 为允许
'delete_posts' => false, //删除文章的权限,false 表示不允许删除
));

3、WordPress 删除用户角色

复制如下代码到 wordpress 主题的 functions.php 文件中:

//WordPress 删除用户角色
remove_role( 'contributor' );//投稿者
remove_role( 'subscriber' );//订阅者
remove_role( 'author' );//作者
remove_role( 'editor' );//编辑
赞(1014)

这些信息可能会帮助到你: 下载帮助 | 报毒说明 | 进站必看 | 关于我们

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《纯代码实现WordPress文章内容隐藏设置VIP会员用户可见》
文章链接:https://www.ypojie.com/10540.html
免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途,网站会员捐赠是您喜欢本站而产生的赞助支持行为,仅为维持服务器的开支与维护,全凭自愿无任何强求。