wordpress功能集成(十):无插件实现相关文章
给单篇文章的下面再加上几篇相关文章,这样如果访客阅读了某篇文章,还可以推荐同分类下,或者同标签的一些文章。实现这个功能最常见的插件就是 “无觅” 插件了。
下面先提供一个获取同属一个分类或标签的相关文章实现方法:
- <ul =“tags_related”>
- <?php
- $post_tags = wp_get_post_tags($post->ID); //获取该文章的标签
- ($post_tags) {
- ($post_tags $tag){
- // 获取标签id数组
- $tag_list[] .= $tag->term_id;
- }
- // 随机获取标签列表中的一个标签
- $post_tag = $tag_list[ mt_rand(0, count($tag_list) – 1) ];
- //准备好query_posts()的参数
- $args = (
- ‘tag__in’ => ($post_tag),
- ‘category__not_in’ => (NULL), // 不包括的分类ID
- ‘post__not_in’ => ($post->ID),
- ‘showposts’ => 6, // 显示相关文章数量
- ‘caller_get_posts’ => 1
- );
- //获取文章
- query_posts($args);
- (have_posts()) : (have_posts()) : the_post(); update_post_caches($posts); ?>
- <li><a href=“<?php the_permalink(); ?>” title=“<?php the_title_attribute(); ?>”><?php the_title(); ?></a></li>
- <?php ;
- : ?>
- <li>无相关文章</li>
- <?php ; }{ ?>
- <?php $ashu_cats = wp_get_post_categories($post->ID); //获取该文章所属分类
- ( $ashu_cats ){
- $args = (
- ‘category__in’ => ( $ashu_cats[0] ),
- ‘post__not_in’ => ( $post->ID ),
- ‘showposts’ => 6,
- ‘caller_get_posts’ => 1
- );
- //查找同属一个分类的文章
- query_posts($args);
- ( have_posts()):(have_posts()):the_post();update_post_caches($posts);?>
- <li><a href=“<?php the_permalink(); ?>” title=“<?php the_title_attribute(); ?>”><?php the_title(); ?></a></li>
- <?php ; ; wp_reset_query();
- } } ?>
- </ul>
这样实现的相关文章只是一个文章标题列表,可根据自己的设计,修改成带缩略图外观像“无觅”的相关文章。。。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END