纯代码实现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($mce_settings) {
?>
<script type="text/javascript">
QTags.addButton( 'vipp', 'VIP可见', '

应版权方要求,违规内容链接已处理或移除!登录 后,请务必严格遵守版权法规
' );
QTags.addButton( 'H2', 'H2', '<h2>', '</h2>' );
QTags.addButton( 'H5', 'H5', '<h5>', '</h5>' );
QTags.addButton( 'strong', 'strong', '<strong>', '</strong>' );
QTags.addButton( '代码', 'pre', '<pre>', '</pre>' );
QTags.addButton( 'hr', 'hr', '<hr>', '' );
</script>
<?php
}
add_action('after_wp_tiny_mce', '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' );//编辑

返回神马指导员首页>>

转载出处标题:纯代码实现WordPress文章内容隐藏设置VIP会员用户可见

网站链接:https://www.smzdy.com/blog/24220.html

免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”
本站所发布的一切Windows教程,教程文章,破解补丁、注册机和注册信息及软件的文章等图文资源仅限用于学习和研究目的;本站并不贩卖软件,不存在任何商业目的及用途,网站会员捐赠是您喜欢本站而产生的赞助支持行为,仅为维持服务器的开支与维护,全凭自愿无任何强求。你不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
本站信息来自网络,不承担任何由于内容的版权、合法性等所引起的争议与法律责任!您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。访问和下载本站内容,说明您已同意上述条款。
本站为个人博客非盈利性站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的。如您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。本站如果侵犯你的利益,携带权利证明请发送邮箱到 s7web888#gmail.com,我们会很快的为您处理。

发表回复

登录后才能评论