WordPress让访客选择文章的排序方式

  • 时间:
  • 浏览:0

  前一天不可能 有不少日本外国网友 问我,露兜博客首页的访客可自行选折 文章排序措施的效果是为何会么会做的,不可能 前一天工作都比较忙,很抱歉没办法 及时给那先 日本外国网友 答复。今天就来给你们儿分享这种文章排序效果的实现过程吧。

  觉得实现过程也比较简单,一有有两个是构造链接,另外一有有两个是使用query_posts来改变一下主循环就能不需要 了。

构造链接

  链接主要用于传递GET参数,让PHPtcp连接知道你到底想为何会么会排序。在主题的index.php中你能不需要 的位置插入以下代码,用于输出排序按钮的HTML,这种排序按钮的样式,你再当事人写写css咯。能不需要 注意的是以下代码会自动获取当前用户已选折 的排序措施,并给这种排序按钮的 li 换成了class="current"(另外,记得把http://www.ludou.org改成你的博客首页网址哦):

<h4>文章排序</h4>

<ul>

<li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='rand') ) echo 'class="current"'; ?> href="http://www.ludou.org/?order=rand" rel="nofollow">随机阅读</a></li>

<li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='commented') ) echo 'class="current"'; ?> href="http://www.ludou.org/?order=commented" rel="nofollow">评论最多</a></li>

<li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='alpha') ) echo 'class="current"'; ?> href="http://www.ludou.org/?order=alpha" rel="nofollow">标题排序</a></li>

</ul>

改变主循环

  首先你得先在主题的index.php中找到以下励志的话 :

if (have_posts()) 

  为何让在这句前一天换成以下代码:

if ( isset($_GET['order']) )

{

switch ($_GET['order'])

{

case 'rand' : $orderby = 'rand'; break;

case 'commented' : $orderby = 'comment_count'; break;

case 'alpha' : $orderby = 'title'; break;

default : $orderby = 'title';

}

global $wp_query;



$args= array('orderby' => $orderby, 'order' => 'DESC');

$arms = array_merge($args, $wp_query->query);



query_posts($arms);

}

if (have_posts())

  好了,就没办法 简单,一键复制粘贴,轻轻松松实现排序效果,你…懂几时?

Wordpress下载:

Tags: wordpress教程   wordpress下载   wordpress技巧   wordpress  
责任编辑:cc120