Solution:
起初,我认为在使用所需的参数创建一个新查询后,我解决了问题。我添加的代码是:
<?php
$args = array(
\'paged\' => $paged,
\'post_type\' => \'post_type_name\',
\'tax_query\' => array(
array(\'taxonomy\' => \'tag\',\'terms\' => $term->term_id)));
$query = new WP_Query($args); ?>
<?php if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); ?>
然后,在Milo评论之后,我发现我不必自己在模板中执行默认查询,主查询发生在加载模板之前。然后我需要一种方法来检查
$wp_query
global以查看主查询失败的原因。方法是:
echo \'<pre dir="ltr">\';
print_r($GLOBALS[\'wp_query\']);
echo \'</pre>\';
结果是:
[query_vars] => Array
(
[tag] => alaa
....................................
[taxonomy] => tag
[term] => alaa
正如你在这里看到的,我把“alaa”作为我的学期名称,也作为我的贴子标签。这是因为我定义了一个名为“tag”的自定义分类法,它为两个不同的事物提供了相同的url。换句话说,
blog/tag/alaa
将引用标记为“alaa”的默认帖子的存档,并将引用具有自定义分类法的自定义帖子类型帖子的存档
\'tag\'
和术语名称
\'alaa\'
.
因此,我在注册时更改了自定义分类名称\'tag\'
到\'othername\'
.
现在,Wordpress考虑一下blog/tag/alaa
和blog/othername/alaa
自然是两件不同的事情。
请注意,我的更改直到单击permalinks设置下的保存更改而没有进行任何更改(可能是为了刷新重写规则)才生效。