Old

WordPress函数: 根据用户名获取用户ID

2016.6.24 更新:可以通过 get_urser_by() 函数来实现,所以具体去 https://developer.wordpress.org/reference/functions/get_user_by/

---

这个是最近折腾一个主题遇到的,功能是后台设置里填入的用户名,然后在前台这些用户的头像和链接,例如:后台设置里填入:zwwooooo,zww,那么前台就显示zwwooooo和zww这两个用户的头像、链接。

这个功能要求有点蛋疼,要是全部输出就简单多了,不过既然有这个要求,那么就要解决一下。

思路

1. 根据用户名获取用户ID

2. 然后用 the_author_meta( $field, $userID ); 输出需要的用户信息。
the_author_meta官方函数说明 http://codex.wordpress.org/Function_Reference/the_author_meta

问题:可惜我找遍了整个WordPress函数库(夸张)都没有这种“根据用户名获取用户ID”的函数。

请教:我请教几个主题制作高手都说貌似没这种函数。。。囧。。。

解决:那么就是说要用最厉害的 SQL 来解决了?不过这会增加数据库查询,没办法,对方执意要直接填用户名实现——直接用用户ID多好啊,高效!简单!算了,客户是上帝。

方法:我自己根据 MySql 表码的 SQL 语句写的函数,函数代码如下(放到主题functions.php 里面)

function get_user_id($user=''){
 $user="'".$user."'";
 global $wpdb;
 $user_ids = $wpdb->get_col("SELECT ID FROM $wpdb->users WHERE user_login = $user ORDER BY ID");
 foreach($user_ids as $user_id){
 return $user_id;
 }
}

调用方法:<?php get_user_id($user); ?>

要直接显示获取的用户id就这样 <?php echo get_user_id($user); ?>

不知道有没有更好的解决方法?有的话烦请高手告知。

zww
or
oooo

声明: 除非注明,ZWWoOoOo文章均为原创,转载请以链接形式标明本文地址
本文地址: https://zww.me/archives/25365

77 comments

  1. Weitian Zhao Weitian Zhao Google Chrome 10 Google Chrome 10 Windows 7 Windows 7

    先sf :mrgreen:

    沙发
  2. Weitian Zhao Weitian Zhao Google Chrome 10 Google Chrome 10 Windows 7 Windows 7

    呃 好吧 我承认这功能是干啥的我没看懂
    琢磨半天第一段- =

    板凳
    • zwwooooo zwwooooo Firefox 3 Firefox 3 Windows 7 Windows 7

      @Weitian Zhao
      哈哈哈,就是根据用户名获取用户id号而已

    • Weitian Zhao Weitian Zhao Google Chrome 10 Google Chrome 10 Windows 7 Windows 7

      @zwwooooo
      哦哦我懂了,是获取本站注册用户的id号.
      商业博客和大型博客很实用的吧
      对我这种只有三个注册的来说...还是打酱油吧 :evil:

    • zwwooooo zwwooooo Opera IBIS 11 Opera IBIS 11 Windows 7 Windows 7

      @Weitian Zhao
      嗯,多用户博客和一些商业的需要吧

  3. 不羡鱼 不羡鱼 Firefox 3 Firefox 3 Windows XP Windows XP

    后台填用户名,前台显示头像和链接,是要在文章中显示不同作者头像吧? :shock:

    地板
  4. 不羡鱼 不羡鱼 Firefox 3 Firefox 3 Windows XP Windows XP

    我的头像已换了,缓存还未改过来。 :eek:

    4楼
  5. 万戈 万戈 Firefox 3 Firefox 3 Windows XP Windows XP

    哟,大叔搞定了耶 :lol: 我就坐收劳动果实了 :mrgreen:

    5楼
    • 苏扬 苏扬 Google Chrome 8 Google Chrome 8 Windows 7 Windows 7

      @万戈

      万戈: 哟,大叔搞定了耶 我就坐收劳动果实了

      我们都一样!

    • zwwooooo zwwooooo Firefox 3 Firefox 3 Windows 7 Windows 7

      @万戈
      我一直在等你的sql,没等到,只好自己硬着头皮上,结果搞定了,囧

  6. 阿修 阿修 Google Chrome 9 Google Chrome 9 Windows 7 Windows 7

    又是数据库,大叔v5……

    6楼
  7. Armgod Armgod Firefox 3 Firefox 3 Windows 7 Windows 7

    用户的蛋疼要求也不是坏事,至少可以逼自己学到点东西

    7楼
  8. chnmcy chnmcy Google Chrome 6 Google Chrome 6 Windows XP Windows XP

    先收藏着吧

    8楼
  9. A.shun A.shun Opera 10 Opera 10 Windows XP Windows XP

    好久没折腾了,这两天要找时间弄下

    9楼
  10. in1874 in1874 Internet Explorer 8 Internet Explorer 8 Windows 7 Windows 7

    ....没技术 纯学习,关注。

    10楼
  11. dee dee Google Chrome 8 Google Chrome 8 Windows XP Windows XP

    再整个缓存之类的东东 :arrow:
    我只是瞎想想……

    11楼
  12. 软件盒子 软件盒子 Firefox 3 Firefox 3 Windows 7 Windows 7

    用户ID有何用

    12楼
  13. 奚少 奚少 Firefox 3 Firefox 3 Windows 7 Windows 7

    不大明白...

    13楼
  14. IM路人 IM路人 Maxthon 2 Maxthon 2 Windows XP Windows XP

    真的折腾~啊 :!:

    14楼
  15. 绝版黑色 绝版黑色 Google Chrome 8 Google Chrome 8 Windows 7 Windows 7

    纯学习下.

    15楼
  16. Kars Kars Namoroka 3 Namoroka 3 Windows XP Windows XP

    的确有点蛋疼、、

    16楼
  17. 不在回头 不在回头 Unknown Unknown Unknown Unknown

    就是在折腾中不断学习!

    17楼
  18. 集趣 集趣 Google Chrome 7 Google Chrome 7 Windows XP Windows XP

    我也从你这里学习到不少东西

    18楼
  19. 爱惜 爱惜 Internet Explorer 7 Internet Explorer 7 Windows 7 Windows 7

    貌似我的才一个用户所以这个应该用不上吧

    19楼
  20. Code之行人 Code之行人 Firefox 3 Firefox 3 Windows 7 Windows 7

    一般不折腾,所以不敢折腾 :?:

    20楼

Leave a Reply