天津11选五26期:获取WordPress当前分类文章所有标签

2016年3月30日09:08:52 19 6,467

11选五开奖结果走势图 www.pnej.net 如果需要在分类列表页面,显示当前分类文章中添加的所有标签,方便读者阅读自己喜欢的内容,下面的代码可以帮你实现这个功能。

获取WordPress当前分类文章所有标签

首先,在主题functions.php模板文件中添加以下函数:

展开代码展开

  1. function?get_category_tags($args)?{
  2. ????global?$wpdb;
  3. ????$tags?=?$wpdb->get_results
  4. ????("
  5. ????????SELECT?DISTINCT?terms2.term_id?as?tag_id,?terms2.name?as?tag_name
  6. ????????FROM
  7. ????????????$wpdb->posts?as?p1
  8. ????????????LEFT?JOIN?$wpdb->term_relationships?as?r1?ON?p1.ID?=?r1.object_ID
  9. ????????????LEFT?JOIN?$wpdb->term_taxonomy?as?t1?ON?r1.term_taxonomy_id?=?t1.term_taxonomy_id
  10. ????????????LEFT?JOIN?$wpdb->terms?as?terms1?ON?t1.term_id?=?terms1.term_id,
  11. ????????????$wpdb->posts?as?p2
  12. ????????????LEFT?JOIN?$wpdb->term_relationships?as?r2?ON?p2.ID?=?r2.object_ID
  13. ????????????LEFT?JOIN?$wpdb->term_taxonomy?as?t2?ON?r2.term_taxonomy_id?=?t2.term_taxonomy_id
  14. ????????????LEFT?JOIN?$wpdb->terms?as?terms2?ON?t2.term_id?=?terms2.term_id
  15. ????????WHERE
  16. ????????????t1.taxonomy?=?'category'?AND?p1.post_status?=?'publish'?AND?terms1.term_id?IN?(".$args['categories'].")?AND
  17. ????????????t2.taxonomy?=?'post_tag'?AND?p2.post_status?=?'publish'
  18. ????????????AND?p1.ID?=?p2.ID
  19. ????????ORDER?by?tag_name
  20. ????");
  21. ????$count?=?0;
  22. ????if($tags)?{
  23. ????????foreach?($tags?as?$tag)?{
  24. ????????????$mytag[$count]?=?get_term_by('id',?$tag->tag_id,?'post_tag');
  25. ????????????$count++;
  26. ????????}
  27. ????}?else?{
  28. ??????$mytag?=?NULL;
  29. ????}
  30. ????return?$mytag;
  31. }

编译://www.ludou.org/wordpress-get-tags-specific-to-category.html

源代码出自:https://wordpress.org/support/topic/get-tags-specific-to-category

其次,将下面调用输出代码,添加到主题archive.php模板适当位置:

  1. <?php
  2. ????$cat=?single_cat_title('',?false);
  3. ????$args?=?array(?'categories'?=>?get_cat_ID($cat));
  4. ????$tags?=?get_category_tags($args);
  5. ????$content?.=?"<ul?class='cat-tag'>";
  6. ????if(!empty($tags))?{
  7. ????????foreach?($tags?as?$tag)?{
  8. ????????????$content?.=?"<li><a?href=\"".get_tag_link($tag->term_id)."\">".$tag->name."</a></li>";
  9. ????????}
  10. ????}
  11. ????$content?.=?"</ul>";
  12. ????echo?$content;
  13. ?>

个人感觉放到头部调用函数:

  1. <?php?get_header();??>

下面比较合适。

最后,再适当加上样式即可:

  1. .cat-tag{
  2. ????float:?left;
  3. ????width:?100%;
  4. }
  5. .cat-tag?li?a{
  6. ????float:?left;
  7. ????margin:?0?5px;
  8. }
weinxin
我的微信
分享交流WordPress经验与技巧,关注前端设计与网站制作。仅用于功能演示。
Begin主题购买
Begin主题购买

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:19   其中:访客  19   博主  0

    • 坊子帮 坊子帮 3

      学习了

      • 狂族晨曦 狂族晨曦 0

        这招厉害??!

        • 寻金笔记 寻金笔记 6

          学习了+1

          • boke112导航 boke112导航 5

            这个功能有时候挺实用的,是不是就像首页显示的那些标签一样?如果有效果图或能够看到成果的页面就更完美了

              • 赵林IT 赵林IT 3

                @boke112导航 测试,感觉做出来的效果很漂亮,和首页的效果好多了

              • 麻布兜 麻布兜 0

                这个具体有例子吗

                • boke112导航 boke112导航 5

                  这个方法好,我们可以在每一个分类页前面列出该分类的标签,挺实用的

                  • 美女图片全身一件不留 美女图片全身一件不留 6

                    学习了 很实用

                    • 青仙 青仙 0

                      有实例看看效果吗

                      • zzu zzu 0

                        手机浏览时跟随滚动的二维码,很鸡肋,想扫吧,自己咋扫自己?建议改成分享按钮,比较实用。

                        • 某喵的光 某喵的光 1

                          get_category_tags,有这个函数么。。

                            • 某喵的光 某喵的光 1

                              @某喵的光 好吧,我没看见function里面也要加代码。不过不加的话,直接用get_tags好像也可以吧。。

                            • 卢松松商城 卢松松商城 1

                              很好。学习了

                              • 蜗牛 蜗牛 2

                                实用。

                                • rhodiu rhodiu 0

                                  我不想展示某个id的tag 比如说 排除 id 15 和16的tag 怎么修改呢 请指教

                                  • 541805894 541805894 0

                                    的撒大大

                                    • 优选汇 优选汇 2

                                      没有起作用啊,哪个帮帮我

                                      • 野图 野图 0

                                        你好,请教一下,目前这代码调用的标签是链接到tag页面,怎么把链接改成当前页面加上tag参数呢?xxx.com/当前页面?tag=标签名称。