给wordpress文章标题添加置顶等标签说明
作者:秋了秋 发表时间:2014年04月24日
最近有个傻傻的人跑来我博客说我怎么还不更新,都干嘛去了,囧!其实我有在更新的,只是我把之前的一篇文章置顶了,而很多人逛博客就是来图更新的,只看第一篇文章,看到第一篇文章还是之前的文章就认为没有更新,还停留在在之前的样子,所以才会有这种囧事发生。最重要的一个因素就是我没给标题打上置顶标签,致使很多人不知道这是一篇置顶文章。现在就说说如何添加该功能吧。
①其实代码很简单,区区很短的代码即可以实现,原理也很简单,简单的php代码判断:
<?php if ( is_sticky() ) {echo "置顶!";}?>
只需要把这段代码添加到输出标题的代码后面即可,一般是放在<?php the_title(); ?></a>后面,意思是:如果这是一篇置顶文章,则输出“置顶!”文字。
②还有一个就是添加“new!”标记,也是添加一个判断,不过此判断前需要一段运算符,即整体为:
<?php $t1=$post->post_date; $t2=date("Y-m-d H:i:s"); $diff=(strtotime($t2)-strtotime($t1))/3600; if($diff<72){echo " New!";}?>
网页时间一般单位为秒计,$post->post_date; date("Y-m-d H:i:s");此代码获取文章发布时间,并分别赋予$t1和$t2相应的值,(strtotime($t2)-strtotime($t1))/3600;将时间从秒换成小时,并把值赋予$diff,最后对变量$diff进行判断if($diff<72){echo " New!";}如果该值小于72小时,则输出" New!"文字。
综合①②一起标记整体代码为:
<em><?php $t1=$post->post_date; $t2=date("Y-m-d H:i:s"); $diff=(strtotime($t2)-strtotime($t1))/3600; if($diff<72){echo " New!";}; if ( is_sticky() ) {echo "置顶!";}?></em>
注:<em>是加粗标记!