今天在写主题的时候,需要利用add_filter(‘the_content’)过滤器在文章尾部生成评分系统。通常如果手动在single.php文件里做同样的事,可能会简单的多,只需要用the_ID()就能获取文章ID号码,但是在用了过滤器后,这个东西就不生效了。
比如这种:
get_post_meta($post->ID,'tf_topic_rate',true);
如果是写在single.php里,拿到的是meta里的值,但如果是在过滤器里,由于$post->ID是没有意义的,所以最终拿到的值是null,那么在过滤器中如何获取文章的ID呢,这里介绍两个办法,一个是用get_the_ID()替代$post->ID,例如上面代码改成:
get_post_meta(get_the_ID(),'tf_topic_rate',true);
或者添加global $post来解决:
$global $post; get_post_meta($post->ID,'tf_topic_rate',true);
上述代码主要用来在文章尾部增加一个评分系统,网上的星号评分都基本来自wp-PostRatings这款插件,或者从中取出代码修改后自用,tiandi感觉代码冗余还是过多,所以只能一步步写一个出来,效果其实还是差不多的,目的么纯为了google结构化数据而已。
文章评分4次,平均分3.8:★★★☆☆
在写新主题,赞一个
从动手到现在都快一年了。。。
首页的友情链接不见了(>﹏<)
先匆匆加上,回头再调整样式了。
新主题帅呆了·!
有什么用 没看出来啊
继续折腾,呵呵。。经典
前来支持
链接跑了。
这是什么意思?
前來支持一下~~學習啦!