WordPress教程丨随机文章的采集

wordpress获取随机文章方法无法两种:

 

一、使用插件(例如:Random Pages Widget);

二、自己写代码。

wordpress教程网比较推崇自己写代码,大家都知道插件过多必然影响到网站得性能。

 

 

方法一:自己编写代码

1、在你的主题functions.php文件添加如下代码:

  /** * wordpress教程网(shouce.ren) * 随机文章 */ function random_posts($posts_num=5,$before='<li>',$after='</li>'){ global $wpdb; $sql = "SELECT ID, post_title,guid FROM $wpdb->posts WHERE post_status = 'publish' "; $sql .= "AND post_title != '' "; $sql .= "AND post_password ='' "; $sql .= "AND post_type = 'post' "; $sql .= "ORDER BY RAND() LIMIT 0 , $posts_num "; $randposts = $wpdb->get_results($sql); $output = ''; foreach ($randposts as $randpost) { $post_title = stripslashes($randpost->post_title); $permalink = get_permalink($randpost->ID); $output .= $before.'<a href="'%20.%20$permalink%20.%20'" rel="bookmark" title="'; $output .= $post_title . '">' . $post_title . '</a>'; $output .= $after; } echo $output; }

 

在需要显示的地方调用如下代码

 

 <div class="right"> <h3>我猜你喜欢</h3> <ul> <?php random_posts(); ?> </ul> </div><!-- 随机文章 -->

 

 

 

方法二:代码最简单的方法

在需要显示随机文章地方添加如下代码:

 

 <ul> <?php $rand_posts = get_posts('numberposts=5&orderby=rand'); foreach( $rand_posts as $post ) : ?> <li> <a href="<?php%20the_permalink();%20?>"><?php the_title(); ?></a> </li> <?php endforeach; ?> </ul>

 

这个方法虽然简单,但用到了get_posts,如果将代码放在子页模板里,在他之后的代码,比如如果在后面同时调用了当前文章的评论,那评论内容很可能,出现的是最后一个随机到的文章的评论,而非当前文章的评论。

 

方法三:用query_posts生成随机文章列表

在需要显示随机文章地方添加如下代码:

 

 <?php query_posts(array('orderby' => 'rand', 'showposts' => 2)); if (have_posts()) : while (have_posts()) : the_post();?> <a href="<?php%20the_permalink()%20?>" rel="bookmark" title=<?php the_title(); ?>"><?php the_title(); ?></a>&nbsp; <?php comments_number(", '(1)', '(%)'); ?> <?php endwhile;endif; ?>

 

方法四:在随机文章中显示标题和文章摘要

在需要显示随机文章地方添加如下代码:

 

 <?php query_posts(array('orderby' => 'rand', 'showposts' => 1)); if (have_posts()) : while (have_posts()) : the_post(); the_title(); //这行去掉就不显示标题 the_excerpt(); //去掉这个就不显示摘要了 endwhile; endif; ?>

 

以上的方法大家都可以去试试,不同的用法,效果也是有不同的形式的。

此文由“快兔兔AI采集器”自动生成,目的为演示采集器效果,若侵权请及时联系删除。

原文链接:http://www.baisheng999.com/festudy/7891.html

更多内容