我正在构建一个ajax归档工具。在功能中,它可以列出类别。
对于每个条目,我都会显示类别名称(带有链接到类别页面的锚点)和类别的条目数。
我还想显示最后一次将帖子添加到类别的日期。
有没有一种方法可以做到这一点,而不必对每个类别进行新的wp\\U查询,以获取最后一篇文章,然后查询其日期?
我正在构建一个ajax归档工具。在功能中,它可以列出类别。
对于每个条目,我都会显示类别名称(带有链接到类别页面的锚点)和类别的条目数。
我还想显示最后一次将帖子添加到类别的日期。
有没有一种方法可以做到这一点,而不必对每个类别进行新的wp\\U查询,以获取最后一篇文章,然后查询其日期?
遗憾的是,没有;这些类别分别存储在数据库中,每个类别都需要自己的查询。
我喜欢尽可能地坚持使用内置的wordpress函数,但您可以使用wp\\U term\\U relationships表进行自定义查询,以查找每个类别中的最新帖子。
它按创建顺序存储帖子id(object\\u id)和类别id(term\\u taxonomy\\u id)(最近创建了较大的帖子id)。
示例:
global $wpdb;
$table_name = $wpdb->prefix . "term_relationships";
$sql = "SELECT object_id FROM ".$table_name." WHERE term_taxonomy_id =" . $category_id . "ORDER BY object_id DESC LIMIT 1";
$result = $wpdb->query($sql);
$post = get_post($result->object_id);
如果您有一个类别ID的静态列表(在wp\\u terms表中找到它们),那么这可以很容易地完成;如果您的类别是动态的,我会考虑使用get\\u术语来填充$category_id
foreach循环中的上述变量。如何获取所有链接类别的ID?我正在编写一个插件,以便于使用wp_insert_link() 作用有什么想法吗?