我的搜索结果页面出现问题,因为在搜索类别名称时,它不会显示属于某个类别的帖子。对于实例,如果我搜索"门" (这是一只猫)所有合作伙伴都在"门"类别应显示在搜索结果中。现在,只有拥有"门"在其标题或内容中显示。
我正在运行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' );
我错过了什么?
答案 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' );
我确实有自定义分类法。基本上我正在尝试创建“搜索所有内容”功能。