WordPress随机文章的实现方式与用法

ralix曾发布过关于WordPress随机文章的相关插件的点评文章(“wordpress插件之随机文章类插件点评”),百度一下也能搜出很多其他纯代码的方式,大致代码如下:

<?php    $query = array(  	'post_type'	=> 'post',  	'orderby'	=> 'rand'  );  $posts = new WP_Query( $query );  if ( $posts->have_posts() ) {  	while( $posts->have_posts() ) :   			$posts->the_post();  			the_content();  	endwhile;  }  wp_reset_query();    ?>

回头来看看这一段代码,其实很简单,在理解了的前提下,提出需要实现“随机推荐”,该怎么实现呢?

WordPress实现随机推荐

在帮一个朋友修改主题的时候,他要求在侧边栏加上一个随机推荐的功能,为了减少工作量,将置顶文章默认为值得推荐的文章(或许有其他简便的方法),实现代码如下:

<?php  //获取置顶文章的ID串  $rand_id = get_option( 'sticky_posts' );    $query = array(  	'post__in'	=> $rand_id,   	'post_type'	=> 'post',  	'orderyby'	=> 'rand',  	'numberposts'	=> 2  );  $posts = new WP_Query( $query );  if ( $posts->have_posts() ) {  	while( $posts->have_posts() ) :   			$posts->the_post();  			the_content();  	endwhile;  }  wp_reset_query();    ?>

至于添加到widgets这里就不详说了。

进阶应用:随便看看的功能实现

现在来看看“随便看看”是怎么实现的?
其实实现这样的功能也不难,首先在后台主题“菜单”里,添加自定义链接,链接地址写成“http://yourdomain.com/random”或者“http://yourdomain.com/index.php?random=1”之类的都行。
然后在当前主题文件下的functions.php里添加如下代码:

<?php  add_action('init','random_add_rewrite');  add_action('template_redirect','random_template');    function random_add_rewrite() {         global $wp;         $wp-&gt;add_query_var('random');         add_rewrite_rule('random/?$', 'index.php?random=1', 'top');  }    function random_template() {         if (get_query_var('random') == 1) {                 $posts = get_posts('post_type=post&amp;orderby=rand&amp;numberposts=1');                 foreach($posts as $post) {                         $random_link = get_permalink($post);                 }                 wp_redirect($random_link,307); //307临时跳转                 exit;         }  }  ?>

至此,效果已经实现(注:貌似3.3以前的老版本,需要进固定链接,执行一下“保存更改”才有效果)!当然网上也有通过新建页面,然后用javascript跳转的方法,大家也可以借鉴借鉴。


版权免责声明

本资源仅用于个人学习测试使用,禁止用于任何商业环境,请于下载后24小时内删除本资源!

本文所有相关技术/资源内容统一放在下载包里

  1. 1、本网站名称:源码社
  2. 2、本站永久网址:https://www.nicedowns.com
  3. 3、站内所有资源均可通过日常签到等任务进行免费兑换,记得每日来本站签到哦~!。、
  4. 4、如果您觉得本站有帮助到您,也想给本站一些帮助。您可以再下方打赏本站。
  5. 5、本站资源来源于互联网收集/个人购买,如有侵犯到您的权益,请查看【版权声明】
  6. 6、本站提供的所有资源均来自互联网搜索,站内资源为网友个人学习或测试研究使用,未经原版权作者许可,禁止用于任何商业环境,任何人不得擅作它用,否则后果自负!请在下载24小时内删除!为尊重作者版权,请购买原版作品,支持你喜欢的作者,谢谢!
  7. 7、本站资源大多存储在云盘,如发现链接失效 【链接失效】 我们会第一时间更新。本站提供的源码、模板、软件工具等其他资源,都不包含技术服务 请大家谅解!

人已赞赏
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索