我是WordPress的新手,我正在尝试修改自定义字段数据帖子的标准SQL调用,以便按类别进行限制。以下是我基于尝试的内容,但我无法弄清楚如何过滤类别15。
$querystr = "SELECT wposts.*
FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta
WHERE wposts.ID = wpostmeta.post_id
AND wpostmeta.meta_key = 'priority'
AND wposts.post_type = 'post'
AND wposts.post_status = 'publish'
AND wposts.
ORDER BY wpostmeta.meta_value ASC";
答案 0 :(得分:2)
在循环之前使用query_posts,如下所示:
query_posts('meta_key=priority&order=ASC&orderby=meta_value&cat=15&post_type=post&post_status=publish');
meta_key=priority
- >显示与特定(优先级)自定义字段关联的帖子。
order=ASC
- >自我解释
orderby=meta_value
- >按meta_value字段对检索到的帖子进行排序
cat=15
- >使用类别ID 15
Aditionaly您可以使用cat=15,4
来显示第15和第4类中的帖子,或使用category_name=staff,test
来显示员工和测试类别中的帖子。
More info about using query_posts,通常您可以使用query_posts检索构建查询的任何类型的帖子。如果由于某种原因无法使用query_posts,请使用纯SQL。
答案 1 :(得分:0)
阅读WordPress Codex文章中的Query based on Custom Field and Category部分使用自定义选择查询显示帖子。下次尝试谷歌搜索!
修改:正如poelinca指出的那样,如果您没有高度自定义或复杂的查询,请考虑使用query_posts()
。