给博客文章添加作者信息

看到这个蛋疼的标题,也许你也和我一样蛋疼了,对于大多数人蛋疼的单人博客来说,这个举动的确是非常蛋疼。但也许对于多用户写作博客来说(例如大名鼎鼎的煎蛋可能吧),这篇文章可能就没那么蛋疼了。

折腾这东西,并非是我的想法,而是我的一个客户提出来的,因为他博客(顺路帮他做下广告哦,日ip500+的牛逼时尚资讯类博客,Fashiondes.com)有点多人写作的意思,所以我就蛋疼的答应了。

第一个2B的思路,失败告终

<!–废话开始–>

对于is_single(“XXX”)、is_home()之类的判断函数,想必各位喜爱折腾WordPress的童鞋来说都很熟悉了,因为这常常被我们用来实现博客当前页面导航高亮,例如我的
<li <?php if ( is_home() || is_date() ) { echo ' class="current"'; } ?>>
<a href="http://leo-n.com">Home</a>
</li>
<li <?php if ( is_page('contact') ) { echo ' class="current"'; } ?>>
<a href="http://leo-n.com/contact">Contact</a>
</li>
<li <?php if ( is_page('archives') ) { echo ' class="current"'; } ?>>
<a href="http://leo-n.com/archives">Archives</a>
</li>
<li <?php if ( is_page('links') ) { echo ' class="current"'; } ?>>
<a href="http://leo-n.com/links">Links</a>
</li>
<li <?php if ( is_page('commenter') ) { echo ' class="current"'; } ?>>
<a href="http://leo-n.com/commenter">Commenter</a>
</li>

加入后的作用就是使对于当前页面的导航中加入一个名为current的class,然后去CSS中定义current的颜色,就能使当前页面导航高亮而区别于其他的导航。

所以,我就想当然的用is_author()配合php的if语句来实现所期望达到的目的,结果发现我杯具了,再仔细看了官方文档对is_author的介绍,发现是针对作者存档页面使用的,它并不能用于判断文章页面内的作者信息,所以这个2B思路被我果断抛弃,有些时候不能太想当然了,想当然的后果就不是杯具就是茶几(上摆满了的杯具)。

<!–废话结束–>

第二个思路,如愿以偿

接下来我只好另寻出路,最后在红军二万五千里长征精神的领导下,那个又一村终于柳暗花明了。
最终效果:

页面地址:http://www.fashiondes.com/?p=2974

使用到的函数:

the_author_meta()、the_author_posts_link()、bloginfo()、get_avatar()

获取当前文章作者的头像:
<?php
echo get_avatar( get_the_author_meta('user_email'), $size='60', $default='<path_to_url>' );
?>

获取当前文章作者邮箱:
<?php the_author_meta('user_email'); ?>
获取当前作者所发布所有文章的链接:
<?php bloginfo('url'); ?>/?author=<?php the_author_meta('ID'); ?>
获取当前文章作者的简介:
<?php the_author_meta('user_description'); ?>
好了,代码就是这些,写好代码后所需要做的就是通知作者去WordPress后台用户界面完善信息即可,需要说明的是,我在获取当前作者所发布所有文章链接中用了比较傻的方式实现,因为一时找不到对应的函数,所以只能像代码中写的那样拼凑出来,如果各位大侠知道的话务必留言通知我一声,先谢谢了。