我的主题中有一个自定义分类法模板页面。本质上,当有人单击此分类法的术语链接时,我总是想向查询中添加特定的帖子类型。
我不完全确定如何做到这一点,我发现PHP 5.3中包含的一些函数似乎可以做到这一点,但我的主机上安装了5.2。
但是,我基本上希望接受当前的$wp\\u查询,添加“post type”=>“我的自定义post type”,然后在我的循环中继续使用$wp\\u查询。这可能吗?
我可能太累了,压力也太大了,有一种更简单的方法可以做到这一点,我就是想不出它=D
谢谢
编辑----
好的,很明显我的方法论已经不适用了。可能是疲劳的直接结果。
我确实找到了操纵$wp\\u查询的代码,以添加我想要的内容;但它并没有得到预期的结果:
function _my_method(&$item, $key) {
if ($key == \'post_type\') {
$item = \'backend_data\';
}
}
array_walk_recursive( $wp_query , \'_my_method\' );
因此,在数组的QUERY\\u VARS部分,现在post\\u type有一个值backend\\u data。除了在$wp\\u query数组的后面,我仍然可以看到它查询所有可用的帖子类型。
[request] => SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts INNER JOIN
wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) WHERE 1=1 AND (
wp_term_relationships.term_taxonomy_id IN (35) ) AND wp_posts.post_type IN (\'post\',
\'page\', \'attachment\', \'company\', \'backend_data\', \'ps_promotion\') AND (wp_posts.post_status = \'publish\' OR wp_posts.post_author = 1 AND wp_posts.post_status = \'private\') GROUP BY
wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 0, 10 [posts] => Array ( [0] =>
backend_data [1] => stdClass Object ( [ID] =>
然后是两个柱子,它的拉力在“柱子”上。。。但是,在开始提取post信息之前,它会再次列出backend\\u数据。但我显然对wordpress和数组的内部工作机制了解不够,无法理解它在这一点上所做的工作=D
编辑-----
好吧,现在我确信我的大脑已经变得模糊,必须有一种更为文字化的方式来做到这一点,因为php数组黑客没有做到这一点=D我尝试抛出一些wp\\u reset\\u query();首先是在我的上述函数之前,然后是之后,它仍然输出相同的东西,所有的帖子类型都占了上风。
所以,我想我无缘无故地在我的问题中添加了这一切:(