我创建了一个名为“技术”的自定义分类,但不能像类别或标签一样查询多个术语 .
These querys DO work:
query_posts('tag=goldfish,airplanes');
query_posts('technologies=php');
However, neither of the following work correctly:
query_posts('technologies=php,sql');
query_posts('technologies=php&technologies=sql');
我的目标:使用'php'技术显示所有帖子,并使用'sql'技术显示所有帖子
有任何想法吗?这甚至可能吗?谢谢!
9 回答
显然query_posts在这种特定情况下无法帮助 . (希望它将在Wordpress的未来版本中添加!)解决方案是使用如下自定义选择查询:
更多信息可在Wordpress Codex中找到:http://codex.wordpress.org/Displaying_Posts_Using_a_Custom_Select_Query
这是一个有点延迟的回复,但它现在是第一次在谷歌“多个术语的Wordpress相关帖子”,所以我想我会贡献我的发现 .
由于此问题已发布,Wordpress已更改为允许此类查询 . 这将为您提供与分配给对象的任何自定义分类术语相关的帖子列表:
这是我对SO的第一次贡献,我希望它符合标准 .
你可以使用这个插件:
http://scribu.net/wordpress/query-multiple-taxonomies/
这有用吗? query_posts('tag =面包烘焙食谱')
来自:http://codex.wordpress.org/Template_Tags/query_posts
好的,所以这是我对此的抨击 . 它有点hacky,但它的工作原理 . 最大的缺点是需要重新添加任何其他查询变量,因为当调用多个术语时,失败会删除所有查询变量 .
此外,我没有对多个分类法的查询进行测试 . 这仅适用于特定的分类 . 使用风险由您自己承担 .
在WP中实现自定义分类法后,没有任何内置函数可以随意使用它们,并且文档几乎不存在,这是多么愚蠢 . 我正在寻找一个解决方案,这个查询解决了它(并使我的一天) . 谢谢 .
不幸的是,遗憾的是我重复了一遍 . 我明白了:
**Fatal error**: Call to a member function get_results() on a non-object
我想我不知道怎么从函数中调用 $wpdb .
它应该是这样的:
至少适用于自定义post_types .
嘿,我也遇到过同样的问题 . 如果没有多个值,则可以通过以下方式执行此操作,而不是编写原始SQL查询:
然后,您可以循环遍历此处创建的wp_query对象 . 虽然这是一个非常古老的帖子,我相信你已经解决了这个问题 . :)