巧用WordPress随机重定向功能
2019-03-27 08:45:44来源: luoboju.com 阅读 ()
今天在wiki百科上查找资料的时候,看到wiki上有一个随机文章的功能很有意思,特总结一下此类随机文章在wordpress中的实现方式。
通过随机重定向功能,给读者提供一个机会,以随机方式跳转到任意的文章。真正的实现方式很简单。所需要做的是仅仅创建一个超链接,命名为“随机文章”,点击时将重定向随机文章。
为了实现在WordPress随机重定向,可以有以下三个步骤即可:
· 一个页面来处理重定向
· 查询从数据库中挑选后
· 通过一个链接将用户重定向到随机文章
当然,你可以使用一个插件。如果你不需要其他功能的话,并不推荐此种方式。
1、使用get_posts()函数实现重定向
建立一个page-random.php模板页面,page-random.php中不包括头部区域,侧边栏和页脚模板加载,因为page-random.php将不会为用户产生任何可见的输出,它只会跳转(即重定向)到我们设定的随机选择的文章。实现过程为:从数据库中随机选择一篇文章,使用一个 foreach 循环来处理输出,将用户重定向到随机文章。
// page-random.php源代码
//随机重定向页面模板
// 为get_posts()设置参数
$args = array(
'numberposts' => 1,
'orderby' =>'rand'
);
//从数据库中随机选择一篇文章
$my_random_post = get_posts ( $args );
//通过foreach循环来处理数据库请求
foreach ( $my_random_post as $post ) {
// 将用户重定向到随机文章
wp_redirect ( get_permalink ( $post->ID ));
exit;
}
现在我们需要做的是去WordPress的管理部分,以page-random.php为模板创建一个新的以random命名的空白页的,并发布。然后,比如当您访问http://www.***.com/random/的,你会被自动重定向到一个随机的文章。先你就可以建立一个类似wiki百科一样的“随机文章”超链接了,点击改超链接就会将读者带到一个你设定的随机文章了。
2、使用wp-query()实现重定向
// page-random.php源代码(通过WP_Query实现)
//随机重定向页面模板
// 为WP_Query()设置参数
$args = array(
'posts_per_page' => 1,
'orderby' =>'rand'
);
//从数据库中随机选择一篇文章
$my_random_post = new WP_Query ($args );
// 通过WP_Query处理数据库请求
while ( $my_random_post->have_posts ()) {
$my_random_post->the_post ();
// 将用户重定向到随机文章
wp_redirect ( get_permalink ());
exit;
}
使用WP_Query的最大的好处是,它比比get_posts()函数拥有更多的参数,当你建立特定查询的时候,可以提供更大的灵活性。
下面举几个实例:
我们可以让WordPress的重定向到某个分类下的文章,比如我们重定向到萝卜居家园网下面的“html模板”这个分类下面的任意文章:
// 为WP_Query()设置参数
$args = array(
'category_name' => 'htmlmuban', //记住,使用分类别名。
'posts_per_page' => 1,
'orderby' => 'rand'
);
//从数据库中随机选择一篇文章
$my_random_post = new WP_Query ( $args );
//通过WP_Query处理数据库请求
while ( $my_random_post->have_posts () ) {
$my_random_post->the_post ();
//将用户重定向到随机文章
wp_redirect ( get_permalink());
exit;
}
如果我们要排除“html模板”这个分类,重定向到其余的所有分类下面的任意文章咧?怎么实现:
//为WP_Query()设置参数
$args = array(
'category__not_in' => array(1), // 这里是要排除的分类id,比如html模板这个分类的id为1,在这里我们排除他
'posts_per_page' => 1,
'orderby' =>'rand'
);
//从数据库中随机选择一篇文章
$my_random_post = new WP_Query ( $args );
//通过WP_Query处理数据库请求
while ( $my_random_post->have_posts ()) {
$my_random_post->the_post ();
//将用户重定向到随机文章
wp_redirect (get_permalink () );
exit;
}
从这些例子中,你可以看到,没有复杂的,也没有什么太先进,我们可以用短短的几行代码实现WordPress随机重定向到任意文章的功能。你也可以通过上面的方式扩展出更多的用途来。嘿嘿,今天就说到这吧,本文由萝卜居家园网http://www.luoboju.com 原创发布,转载请注明,谢谢。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 运营武馆:巧用运营漏斗分析模型,让领导对你刮目相看 2020-06-15
- 忽悠AI图像识别系统的新方法:随机复制并粘贴 2019-04-10
- 如何选择和使用wordpress主题制作特色网站 2019-04-10
- WordPress网站搭建如何购买域名及域名绑定 2019-04-10
- 两款插件快速实现,wordpress全站开启https 2019-04-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash