Wordpress:高亮管理员的留言信息

在wp中有着管理员回复留言者的功能,但是正常的情况下,管理员和评论者的留言信息的样式是一样的,所以一眼看上去没什么区别。只能通过查看是否有admin这个人的留言信息。但是更多的博主们喜欢用自己心仪的英文名来显示,从而代替了默认的admin显示名。那么对阅读者来说,貌似留言都来自于访问者,而没有管理员的回复留言。

那么我总结了两个高亮管理员的留言的方法。方法如下:

方法一、 简单的固定管理员方法:

该方法只有当管理员的邮箱地址是固定不变的时候才可以生效,若改变的管理员的邮箱地址,那么也需要在源代码中修改相应的地址。所以该方法比较适合一个人固定邮箱地址的博客。

打开comments.php文件,若管理员只有一个人,添加如下代码:

?[Copy to clipboard]View Code PHP

1234567891011
< ?php      $admin_email = "hiro.zhd@gmail.com";        $admin_comment = false;   //设置一个布尔类型的变量来判断该留言是否为管理员的留言        //如果该留言是管理员的留言       if($comment->comment_author_email == $admin_email){            $admin_comment = true;            break;       }?>

当然若一个博客有多个管理员的话,可以使用一个数组来存放这些管理员的邮箱地址,那么该方法的源代码是:

?[Copy to clipboard]View Code PHP

12345678910111213141516
< ?php     $admin_emails = array(                                "hiro.zhd@gmail.com",                                "hiro@ihiro.org",                                "hiro@gmail.com"                           );      $admin_comment = false;     //设置一个布尔类型的变量来判断该留言是否为管理员的留言     foreach ($admin_emails as $admin_email){         //如果该留言是管理员的留言         if($comment->comment_author_email == $admin_email){             $admin_comment = true;             break;         }    }; ?>

最后在使用xhtml来控制留言列表时,只需判断$admin_comment的布尔值即可,为真则该留言是管理员的留言,为假,则是来访者的留言,xhtml源码如下:

?[Copy to clipboard]View Code HTML

123
<li class="<?php if($admin_comment) echo 'admincomment'; ?>">     <!-- 这里输出其他的html信息 --></li>

最后,只需对类admincomment样式化即可突出管理员的留言(样式化的css则可以自己随意更改),如:

?[Copy to clipboard]View Code CSS

12345
.admincomment{      background:#191919;      color:#FFF;      border:1px solid #333;}

方法二、自动侦测管理员邮箱:

只需添加一些与数据库操作的php代码即可自动侦查到博客中所有管理员的邮箱地址,从而存储在一个数组中,代码如下:

?[Copy to clipboard]View Code PHP

123456789101112131415
< ?php     $user_level = 8;   //默认地,wp有1-10是个数字来控制wp中用户的角色(如管理员、编辑、作者、阅读者等),而管理员的数字则是8     $admin_emails = array();   //用来存放侦查到的所有管理员邮箱地址的数组      //从数据库中查找做角色数字为8的所有管理员帐号     $admin_accounts = $wpdb->get_results("SELECT * FROM $wpdb->usermeta WHERE meta_key = 'wp_user_level' AND meta_value >= $user_level ");      //获得每个管理员各自的邮箱地址     foreach ($admin_accounts as $admin_account){         $admin_info = $wpdb->get_row("SELECT * FROM $wpdb->users WHERE ID = $admin_account->user_id");          //将管理员的邮箱地址添加到存放的数组中         $admin_emails[$admin_account->user_id] = $admin_info->user_email;     }?>

既然获得了所有管理员的邮箱地址,那么剩下的工作就和方法一的多个管理员判断一样了,即:

?[Copy to clipboard]View Code PHP

12345678910
< ?php     $admin_comment = false;     //设置一个布尔类型的变量来判断该留言是否为管理员的留言     foreach ($admin_emails as $admin_email){         //如果该留言是管理员的留言         if($comment->comment_author_email == $admin_email){             $admin_comment = true;             break;         }    }; ?>

然后xhtml代码:

?[Copy to clipboard]View Code HTML

123
<li class="<?php if($admin_comment) echo 'admincomment'; ?>">     <!-- 这里输出其他的html信息 --></li>

css代码:

?[Copy to clipboard]View Code CSS

12345
.admincomment{      background:#191919;      color:#FFF;      border:1px solid #333;}

那么到此为止,高亮管理员留言的方法介绍完毕。希望可以给大家带去点帮助!

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Wordpress:高亮管理员的留言信息》
文章链接:https://www.skykkk.com/archives863.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

相关推荐

  • 暂无文章