陈德馨

DUX主题添加实现VIP评论等级功能

7333人参与 |分类: 站长百科|时间:2015年12月23日 09:39

最近,陈德馨博客更换了主题,原来是基于大前端的D8主题深度定制,现在更换了新的基于大前端DUX主题优化版本。既然换了新的主题,就是要折腾到自己想要的效果来的,所以今天就来说说DUX主题添加实现VIP评论等级功能的方法。

首先,需要增加根据用户组。

其次,对相应用户组添加等级标识,以实现评论VIP等级功能。

然后。需要用到User Role Editor插件,新建用户组,然后把某些用户添加到这些用户组中;其中.administrator、.svip这部分就是你的用户组角色名。

下面说说具体步骤:

第一步:修改大前端DUX主题目录的\dux\inc\fn.php文件,其他主题一般是functions.php文件,在?>之前加如下代码:

/*
按照评论者ID返回角色,用于获得特定用户组名称,并用其名称定义同名css;
*/
function cwp_get_user_role( $user_id=null ){
if ( ! isset( $user_id ) ) return null;
$user = new WP_User( $user_id );
$wp_roles = new WP_Roles;
$role_names = $wp_roles->get_names();
$user_role_array = array ();
foreach ( $user->roles as $role ){
if ( isset ( $role_names[ $role ] ) )
$user_role_array[ $role ] = $role_names[ $role ];
}
return key( $user_role_array );
}
//获取访客VIP样式
function get_author_class($comment_author_email,$user_id){
global $wpdb;
$author_count = count($wpdb->get_results(
"SELECT comment_ID as author_count FROM $wpdb->comments WHERE comment_author_email = '$comment_author_email' "));
$adminEmail = get_option('admin_email');
/*如果不需要管理员显示VIP标签,就把下面一行前面的"//"去掉*/
//$adminEmail = get_option('admin_email');if($comment_author_email ==$adminEmail) return;
if($author_count>=4 && $author_count<10)
echo '<a class="vip1" title="Lv1.发言热情 4~9 ℃"></a>';
else if($author_count>=10 && $author_count<20)
echo '<a class="vip2" title="Lv2.发言热情 10~19 ℃"></a>';
else if($author_count>=20 && $author_count<30)
echo '<a class="vip3" title="Lv3.发言热情 20~29 ℃"></a>';
else if($author_count>=30 && $author_count<50)
echo '<a class="vip4" title="Lv4.发言热情 30~49 ℃"></a>';
else if($author_count>=50 &&$author_count<70)
echo '<a class="vip5" title="Lv5.发言热情 50~69 ℃"></a>';
else if($author_count>=70 && $author_count<100)
echo '<a class="vip6" title="Lv6.发言热情 70~99 ℃"></a>';
else if($author_count>=100)
echo '<a class="vip7" title="Lv7.发言热情 100 ℃"></a>';
}

第二步:引入样式文件:DUX主题为目录dux\css\main.css文件,或其他主题一般是style.css文件:

/*评论者VIP显示功能的样式*/
.administrator,.svip,.vip1,.vip2,.vip3,.vip4,.vip5,.vip6,.vip7{background: url(../img/cvip2.png) no-repeat;display: inline-block;overflow: hidden;border: none;}
.administrator{background-position:-561px -2px;width: 16px;height: 16px;margin-bottom: -3px;margin-right:4px;}
.administrator:hover{background-position:-561px -22px;width: 16px;height: 16px;margin-bottom: -3px;margin-right:4px;}
.svip{background-position:-539px -3px;width: 16px;height: 14px;margin-bottom: -2px;margin-right:4px;}
.svip:hover{background-position:-539px -22px;width: 16px;height: 14px;margin-bottom: -2px;margin-right:4px;}
.vip1{background-position:-1px -2px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip1:hover{background-position:-1px -22px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip2{background-position:-63px -2px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip2:hover{background-position:-63px -22px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip3{background-position:-144px -2px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip3:hover{background-position:-144px -22px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip4{background-position:-227px -2px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip4:hover{background-position:-227px -22px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip5{background-position:-331px -2px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip5:hover{background-position:-331px -22px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip6{background-position:-441px -2px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip6:hover{background-position:-441px -22px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip7{background-position:-611px -2px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}
.vip7:hover{background-position:-611px -22px;width: 46px;height: 14px;margin-bottom: -1px;margin-right:4px;}

第三步:引入前端等级显示图像,然后下图放到主题的img文件夹内另存为:cvip2.png,即“文件名”

cvip2.png

来源:陈德馨博客(微信/QQ号:35435164),转载请保留出处和链接!

地址:

必填

选填

选填

◎已有 0 人评论,请发表您的观点。