搜索类别名称时未显示的类别的帖子

时间:2011-12-06 22:39:29

标签: wordpress

我的搜索结果页面出现问题,因为在搜索类别名称时,它不会显示属于某个类别的帖子。对于实例,如果我搜索"门" (这是一只猫)所有合作伙伴都在"门"类别应显示在搜索结果中。现在,只有拥有"门"在其标题或内容中显示。

我正在运行searchAll功能,因此标准的wp搜索会搜索所有内容。

// Define what post types to search
function searchAll( $query ) {
if ( $query->is_search ) {
    $query->set( 'post_type', array( 'post', 'page', 'feed', 'partner','project', 'press', 'review' ));
}
return $query;
}
// The hook needed to search ALL content
add_filter( 'the_search_query', 'searchAll' );

我错过了什么?

2 个答案:

答案 0 :(得分:1)

您的查询正在搜索post_type,而不是category_name

post_type用于自定义帖子类型或分类法。

您的查询应包含$query->set( 'category_name', array( 'post', 'page', 'feed', 'partner','project', 'press', 'review' ));

然而,在某些情况下(我不知道原因)对子类别不起作用。 在这种情况下,你应该使用category-slug(slug)insted。

答案 1 :(得分:0)

我把我的字符串改为:

<?php
// Define what post types to search
function searchAll( $query ) {
    if ( $query->is_search ) {
        $query->set( 'category_name', array( 'post', 'page', 'feed', 'partner','project', 'press', 'review' ));
    }

    return $query;
}

// The hook needed to search ALL content
add_filter( 'pre_get_posts', 'searchAll' );

我确实有自定义分类法。基本上我正在尝试创建“搜索所有内容”功能。