按年份和月份分类的订单过帐

时间:2017-03-05 作者:Andrea Mantegazza

我有一个worpresss 4.0.12网站;我创建了一个自定义模板类别-$id.php,在其中我必须按年份描述和月份ASC(或自定义字段ASC)显示后排序,结果应该是这样的:

2017

2017年1月10日后

2016年1月10日后

我该怎么办?我尝试了width query\\u posts($args),但无法按第二个字段排序

1 个回复
SO网友:Dixita

要按年份描述和月份ASC显示列表,请执行以下操作:

使用custom\\u post更改您的帖子类型。

global $wpdb;

$posts = $wpdb->posts;

$sql = "SELECT DISTINCT(YEAR(`post_date`)) as years FROM $posts WHERE post_type = \'custom_post\' ORDER BY years DESC"; //Get all post year list by DESC

$result = $wpdb->get_results($sql);

foreach($result as $rs) {
    echo \'<h2>\'.$rs->years.\'</h2>\';
    $args = array(
        \'post_type\' => \'custom_post\',
        \'post_per_page\'=> -1,
        \'post_status\' => \'publish\',
        \'orderby\'   => \'date\',
        \'order\' => \'ASC\',
        \'date_query\' => array(array(
            \'year\'=> $rs->years,
        ),),

    );

     $loop = new WP_Query($args);

     if($loop->have_posts()) {

        while($loop->have_posts()) : $loop->the_post();

            echo \'<a href="\'.get_permalink().\'">\'.get_the_date().\'</a>\';
        endwhile;

     }
}

相关推荐

JqueryUi对话框给出未捕获的TypeError:This._addClass不是函数错误

我有一个网站,我们需要一些自定义php编码来连接到外部数据库,以获取几个销售我们产品的供应商的产品评论URL。我们试图实现的基本想法是让用户注册他们的产品,然后如果他们愿意留下评论,就延长保修期。我正在使用XYZScript。com的“插入PHP”插件来实现这一点。该主题最初只加载了jQuery,以避免创建子主题,我们正在php脚本中加载jQueryUI。因此,我们将jQuery加载到文档的标题中,将jQueryUI加载到文档的正文中。我不太确定这是因为加载脚本的顺序造成的,还是其他一些冲突的javasc