【问题标题】:How can you customize wp_get_archives(); with Wordpress Archives如何自定义 wp_get_archives();与 WordPress 档案
【发布时间】:2010-11-22 23:16:01
【问题描述】:

我想自定义我的档案以按月排序,但如果是在前一年,则将自己分组为年度类别。现在我有:

<ul><?php wp_get_archives('type=postbypost&limit=10'); ?></ul>

显示最后 10 个帖子。我知道以下内容将按月排序:

<ul><?php wp_get_archives('type=monthly'); ?></ul>

但是当月份小于 12 时,我如何让它按年份排序?我希望它看起来像下面这样:

  • 2010 年 3 月
  • 2010 年 2 月
  • 2010 年 1 月
  • 2009

提前致谢。

【问题讨论】:

    标签: wordpress archive


    【解决方案1】:

    我不知道是否有内置方法可以做到这一点,我会使用这样的自定义查询函数:

      SELECT COUNT(ID) posts, YEAR(post_date) y, MONTH(post_date) m 
        FROM $wpdb->posts 
       WHERE post_status = 'publish'
    GROUP BY y, m
      HAVING y = YEAR(NOW())
    UNION
      SELECT COUNT(ID), YEAR(post_date) y, 0
        FROM $wpdb->posts
       WHERE post_status = 'publish'
    GROUP BY y
      HAVING y < YEAR(NOW())
    ORDER BY y DESC, m DESC;
    

    然后用链接和所有格式化结果。

    【讨论】:

    • Kemp 的做法是除了使用插件之外的唯一方法。
    • 我开始编写自己的插件,但最终找到了一个完全符合我要求的插件。其他感兴趣的可以关注wordpress.org/extend/plugins/collapsing-archives/screenshots
    • 这还允许用户指定 wp_get_archives 未列出的自定义帖子类型
    猜你喜欢
    • 2011-06-04
    • 1970-01-01
    • 1970-01-01
    • 2011-04-17
    • 2020-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-26
    相关资源
    最近更新 更多