wordpress文章按日期字段排序修改
发布:smiling 来源: PHP粉丝网 添加日期:2015-10-16 14:06:28 浏览: 评论:0
wordpress博客排序时我们一般只用系统默认了,如果我们让它按日期来排序要如何操作了,下文小编来为各位介绍一下吧.
按日期排序,首先打开首页 index.php 文件,找如类似于 if (have_posts()) 这样的循环,然后修改成如下的代码:
- <?php
- // query_posts函数
- query_posts('orderby=comment_count'); //以评论最多到最少的排序方式
- //主循环
- if ( have_posts() ) : while ( have_posts() ) : the_post();
- ?>
查找:<?php endwhile; ?>
修改成:
<?php endwhile; else: ?>
然后查找:修改成如下代码:
- <?php
- endif;
- // 重置query
- wp_reset_query()
- ?>
这个时候文章已经按照评论数量的多少来进行排序了,但有时候会遇到无法分页的情况,哪么我们可以找到query_posts函数修改成如下的代码:
- <?php
- $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;//控制分页
- $args = array(
- // 这里以下面的方式添加query_posts参数,具体参数可以参加官方文档
- 'orderby' => comment_count,
- 'paged' => $paged
- ); //phpfensi.com
- query_posts($args);
- //主循环
- if ( have_posts() ) : while ( have_posts() ) : the_post();
- ?>
现在首页已经按照评论的数量多少来进行排序了,如果还要自定义其它页面的排序方法,基本上按照这个来修改就可以了,其它页面的修改要打开相应页面去修改,比如标签页面 tag.php
文章的数量和排序方式
1.可以添加代码至相关页面模板(category.php、search.php、archive.php)
把如下代码:
<?php $posts = query_posts($query_string . '&orderby=date&showposts=15'); ?>
添加至category.php、search.php、archive.php或其它页面模板中,以下函数之前:
<?php if (have_posts()) : ?><?php while (have_posts()) : the_post(); ?>
代码中的15就是显示多少条。
增加文章排序方式:
- <h4>文章排序</h4>
- <ul>
- <li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='rand') ) echo 'class="current"'; ?> href="/?order=rand" rel="nofollow">随机阅读</a></li>
- <li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='commented') ) echo 'class="current"'; ?> href="/?order=commented" rel="nofollow">评论最多</a></li>
- <li><a <?php if ( isset($_GET['order']) && ($_GET['order']=='alpha') ) echo 'class="current"'; ?> href="/?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';
- }</p> <p> global $wp_query;
- $args= array('orderby' => $orderby, 'order' => 'DESC');</p> <p> $arms = array_merge($args, $wp_query->query);
- query_posts($arms);
- }</p> <p>if (have_posts())
Tags: wordpress日期文章 wordpress字段
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)