查看: 80|回复: 0

[教程] wordpress随机调用显示文章的方法总结

[复制链接]

3

主题

1

回帖

0

积分

热心网友

金币
1
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2009-2-18
发表于 2023-11-7 00:00:00 | 显示全部楼层 |阅读模式

本文实例总结了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建站有所帮助。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部