我将Timber用于Wordpress,当我在archive.php中使用自定义查询来获取自定义帖子类型的帖子时,它将返回多种帖子类型的帖子。
我在page.php中尝试了完全相同的查询,并且运行良好。
这是我正在使用的查询:
global $paged;
if (!isset($paged) || !$paged){
$paged = 1;
}
$args = array(
'post_type' => 'horse',
'orderby' => 'title',
'order' => 'ASC',
'posts_per_page' => 20,
'paged' => $paged
);
$context['horses'] = new Timber\PostQuery( $args );
我希望返回所有类型为“马”的帖子,但其他类型的帖子也会混入其中。
有什么想法可能会发生这种情况吗?
我不确定这是否相关,但我也将其添加到了StarterSite类内部的functions.php中,以便将我的自定义帖子类型添加到存档页面:
function namespace_add_custom_types( $query ) {
if( is_category() || is_tag() && empty( $query->query_vars['suppress_filters'] ) ) {
// Get all your post types
$post_types = get_post_types();
$query->set( 'post_type', $post_types );
return $query;
}
}
这已添加到名为__construct
的现有函数中:
add_filter( 'pre_get_posts', array($this, 'namespace_add_custom_types') );
答案 0 :(得分:1)
在树枝文件中如何称呼它?
{% for post in horses %}
{{ post.name }}
{% endfor %}
此外,您确定帖子类型的名称是马而不是马吗?如果“ post_type”中包含错误的帖子类型名称,它将显示所有帖子类型。