如何按年和月组织/创建档案列表

时间:2012-10-19 作者:TJ Sherrill

我认为使用WP提供的基本小部件会更简单,但实际上不是。

我需要创建

2012年12月至11月月份项目将链接到该档案。

这可能吗?我宁愿不使用插件,但如果答案是这样的话,那就可以了。

1 个回复
最合适的回答,由SO网友:Mridul Aggarwal 整理而成

function archive_links_custom() {
    global $wpdb, $wp_locale;
    $query = "SELECT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, count(ID) as posts FROM $wpdb->posts WHERE post_type = \'post\' AND post_status = \'publish\' GROUP BY YEAR(post_date), MONTH(post_date) ORDER BY post_date DESC";
    $arcresults = $wpdb->get_results($query);
    if ( $arcresults ) {
        $year = null;
        foreach ( (array) $arcresults as $arcresult ) {
            if($arcresult->year != $year) {
                echo $arcresult->year;
                $year = $arcresult->year;
            }
            $url = get_month_link( $arcresult->year, $arcresult->month );
            $text = sprintf(__(\'%1$s %2$d\'), $wp_locale->get_month($arcresult->month), $arcresult->year);
            $after = \' (\'.$arcresult->posts.\')\';
            echo \'<a href="\'.$url.\'>\'.$text.$after.\'</a>\';
        }
    }
}
此函数应该执行您想要的操作。以您喜欢的方式自定义其中的标记

结束

相关推荐

显示Archives.php中的所有自定义帖子类型

我该怎么做?archive.php 只有以下内容:wp_get_archives(\'type=monthly\'); 以及wp_get_archives() 没有显示所有帖子类型的参数。我也认为archive-[post_type].php 不是我要找的,因为我希望所有帖子类型都显示在一个归档页面中。谢谢W