WordPress如何不用插件显示最佳投稿者

日期: 标签:WordPress教程
如需帮忙改代码,或者WordPress二次开发、PHP网站建设等需求,可联系我购买付费服务:  点此联系我

     如果你的网站有很多投稿者的话,你可能想展示出最佳投稿者,例如露兜博客也欢迎大家踊跃投稿,最佳投稿者可获得丰厚奖励。下面我们就来介绍如何不借助插件来实现这个功能。至于最佳投稿者的评判标准,本文暂时以投稿数量来进行排名,且投稿者都是站内的注册用户。

     只需要将下面的代码加入到你希望显示最佳投稿者的地方。注意这个代码没有使用$wpdb,而是使用的mysql_*功能。这不算是最好的方法,但是也可以实现这个功能。

<?php
include( $_SERVER['DOCUMENT_ROOT'] . '/wp-config.php' );
mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die(mysql_error());
mysql_select_db(DB_NAME) or die(mysql_error());

$sql = 'SELECT ' . $table_prefix.users . '.' .user_login . ',count(*)'
    . ' FROM ' . $table_prefix.posts.  ',' . $table_prefix.users
    . ' WHERE ' . $table_prefix.posts . '.' . post_parent. '=0 And '
    . $table_prefix.posts . '.' . post_author . '=' .$table_prefix.users . '.' . ID
    . ' Group By '.$table_prefix.users.'.'.user_login.''
    . ' Order By count(*) DESC'
    . ' Limit 0,10';

$result = mysql_query($sql) or die(mysql_error());

echo '<ul>';
while($row = mysql_fetch_array($result))
{
    echo '<li><strong>';
    echo $row['user_login'];
    echo '</strong>&nbsp';
    echo '(';
    echo $row['count(*)'];
    echo ')</li>';

}
echo '</ul>';

?>

     注意:如果你的WordPress不是安装在网站根目录下,请修改以上代码的第2行中的路径,如你的WordPress安装在根目录下的wordpress目录,那就将第2行代码中的 /wp-config.php 改成:/wordpress/wp-config.php

     至于在WordPress中如何实现投稿功能,详见:WordPress添加投稿功能

-- 完 --

本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
原文出处:露兜即刻 https://www.ludou.org/wordpress-most-active-author.html
露兜
kaapass@outlook.com  QQ 825533758

业余编程爱好者。

25 条留言

点此留言
  1. Ludou

    下次投稿,请注意检查测试文章中的代码;
    并建议作者给自己设置一个Gravatar头像。

  2. 书香阁 书香阁

    又是一个优化的好东西啊

  3. 有点蓝 有点蓝

    这个我还用不上,不过必须mark一下啊,呵呵……

  4. 1pondo 1pondo

    建议写成一个 function,放到 function.php 中,调用的时候方便点

  5. 淬念 淬念

    记得之前有一篇如何实现前台投稿,建议两篇文章互链一下,功德无量

  6. 安徽吉诺 安徽吉诺

    都是高手

  7. 翎羽志 翎羽志

    不错,高手

  8. 优得客 优得客

    哦 我的天啊,还是算了,折腾的我好累的

  9. 小杰 小杰

    不错,学习了~~

  10. Jack Hsu Jack Hsu

    这个方法不错!

  11. cuike cuike

    就喜欢不带插件的。

  12. louboutin shoes louboutin shoes

    呵呵,来了解下,自己试试看,谢谢博主!

  13. 睿智小超人 睿智小超人

    我连投稿的人都没有,何来最佳呢

  14. WordPress啦 WordPress啦

    学习了,WordPress插件有这样功能的貌似也不是很多啊

  15. yesureadmin yesureadmin

    照样做,没有做出来啊!我也是NeoEase的主题

    • Ludou

      @yesureadmin 第二行代码,如果你的WordPress安装在子目录下,如wordpress子目录,你可以将:
      '/wp-config.php'

      改成:
      '/wordpress/wp-config.php'

      另外请注意代码是否放对了地方,是否有其他代码干扰。

  16. onlyone.world onlyone.world

    依然是露兜牛气冲天,我看到了,也听到了,特地赶来支持你滴!

  17. yesureadmin yesureadmin

    换了个主题,我今天再来试一下谢谢LUDOU

  18. WordPress啦 WordPress啦

    加入的代码不少,学习了

  19. 闫涛 闫涛

    ludou的严谨跟网上那些不负责任的人形成了鲜明的对比,有的全半角部分,有的代码干脆就不完整,唉……来到你这,总能满意而归

  20. ddl0762 ddl0762

    先收藏了,

    确实 有用, 在添加三个问题,

    1 . 连接到用户页,就是用户发布文章 的列表
    2 . 调用用户最新发布的内容,如果麻烦 就调用用户的自我介绍
    3 . 怎么调用昵称

    麻烦你了~

    • Ludou

      @ddl0762 1、第6行,'SELECT ' 改成 'SELECT display_name,'

      2、连接到用户页,20行改成 :echo '<a href="http:// 域名/author/'.$row['user_login'].'">'.$row['display_name'].'</a>';

      • ddl0762 ddl0762

        @Ludou 在加上,用户的自我介绍呢。

  21. 这是爱 这是爱

    这个不错哦 !很需要,如果能显示头像,而且能点击到个人所有上去就好了,还有,能不能按本月最佳或者本周最佳这样来排序呢?

发表留言