1. 首页 > CMS系统 > Wordpress

wordpress随机调用显示文章的方法总结

本文实例总结了wordpress随机调用显示文章的方法。分享给大家供大家参考。具体方法如下:

在wordpress中要随机显示文章这里给大家介绍了三种调用随机文章的方法,有需要的朋友可根据自己的情况进行选择.

方法一:采用wordpress内置函数,在需要的时候直接调用以下代码:

  1. <ul> 
  2. <?php $rand_posts = get_posts('numberposts=5&orderby=rand'); 
  3. foreach( $rand_posts as $post ) : ?> 
  4. <li> 
  5. <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> 
  6. </li> 
  7. <?php endforeach; ?> 
  8. </ul> 


方法二:用query_posts生成随机文章列表,代码如下:

  1. <?php  
  2. query_posts('showposts=10&orderby=rand'); 
  3. if ( have_posts() ) : while ( have_posts() ) : the_post(); 
  4. ?> 
  5. <li><em><?php echo $j++;?></em><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> 
  6. <?php  
  7. endwhileelse
  8. ?> 



没有可显示的文章,代码如下:

  1. <?php  
  2. endif
  3. wp_reset_query(); 
  4. ?> 


方法三:在函数模版function.php中添加函数,然后调用,在function.php文件中添加以下代码:

  1. function random_posts($posts_num=8,$before='<li>',$after='</li>'){  
  2. global $wpdb
  3. $sql = "SELECT ID, post_title,guid  
  4. FROM $wpdb->posts  
  5. WHERE post_status = 'publish' ";  
  6. $sql .= "AND post_title != '' ";  
  7. $sql .= "AND post_password ='' ";  
  8. $sql .= "AND post_type = 'post' ";  
  9. $sql .= "ORDER BY RAND() LIMIT 0 , $posts_num ";  
  10. $randposts = $wpdb->get_results($sql);  
  11. $output = '';  
  12. foreach ($randposts as $randpost) { 
  13. $post_title = stripslashes($randpost->post_title); 
  14. $permalink = get_permalink($randpost->ID); 
  15. $output .= $before.'<a href="' 
  16. $permalink . '" rel="bookmark" title="'
  17. $output .= $post_title . '">' . $post_title . '</a>'
  18. $output .= $after
  19. echo $output
  20. }//random_posts()参数有$posts_num即文章数量,$before开始标签默认<li>,$after=结束标签默认</li> 


然后在需要调用随机文章的地方插入下面的代码:

  1. <div class="right"> 
  2. <h3>随便找点看看!</h3> 
  3. <ul> 
  4. <?php random_posts(); ?> 
  5. </ul> 
  6. </div> 

希望本文所述对大家的WordPress建站有所帮助。

本文由主机测评网发布,不代表主机测评网立场,转载联系作者并注明出处:https://zhuji.jb51.net/wordpress/7774.html

联系我们

在线咨询:点击这里给我发消息

微信号:

工作日:8:30-17:30,节假日休息