如何自定义 wp_get_archives();与 WordPress 档案

Posted

技术标签:

【中文标题】如何自定义 wp_get_archives();与 WordPress 档案【英文标题】:How can you customize wp_get_archives(); with Wordpress Archives 【发布时间】: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

提前致谢。

【问题讨论】:

【参考方案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 未列出的自定义帖子类型

以上是关于如何自定义 wp_get_archives();与 WordPress 档案的主要内容,如果未能解决你的问题,请参考以下文章

从 wp_get_archives 中排除类别?

如何与自定义 UICollectionViewCell 单元格交互

Spring Boot 自动装配定义与自定义starter原理,及如何实现自定义装配

Spring Boot 自动装配定义与自定义starter原理,及如何实现自定义装配

如何将自定义参数与保留事件一起发送到 Firebase 分析

[WPF自定义控件库] 自定义控件的代码如何与ControlTemplate交互