我将此问题理解为试图将查询限制在taxonomy 已命名igralni
, 正如问题所述,“仅限于分类中的igralni”,而不是“标记的”igralni
“。但是,接受的答案实际上返回post_tag
术语为igralni
.
考虑到这种解释,这将是我认为正确的方法——使用过滤器posts_where
. 你可能需要更多的条件,但这是基本的想法。
function posts_by_letter_wpse_100462($where,$qry) {
$ppl = $qry->get(\'posts_by_letter_where\');
if (!empty($ppl)) {
$where .= " AND post_title LIKE \'{$ppl}%\' ";
}
return $where;
}
add_filter(\'posts_where\',\'posts_by_letter_wpse_100462\',1,2);
$args = array(
\'post_type\' => \'filmi-i-serialii\',
\'posts_per_page\' => 10,
\'posts_by_letter_where\' => \'m\',
\'tax_query\' => array(
array(
\'taxonomy\' => \'post_tag\',
\'field\' => \'slug\',
\'terms\' => \'igralni\'
)
)
);
$wp_query = new WP_Query($args);
请注意,我将一个参数添加到
WP_Query
\'的参数。这些文件未经修改就可以通过,但除非您对其进行了操作,否则不会执行任何操作——非常方便,但没有文档记录,可能是无意的,因此建议谨慎。
如果你真的要用pureSQL
, 然后运行查询(带或不带过滤器),转储SQL
, 窃取并修改它。
var_dump($wp_query->request); die;