我正在尝试将自定义帖子类型添加到seach工具中,以便它搜索这些帖子以及网站上的页面。
我已经看到了pre\\u get\\u posts功能,并在我的主题功能中进行了如下设置。php文件,但它根本没有启动。我将get\\u current\\u screen()函数放在那里进行测试,但它不返回任何内容。
function searchAll($query) {
if ( !is_admin() && $query->is_main_query() ) {
if ($query->is_search) {
$query->set(\'post_type\', array( \'post\', \'movie\' ) );
}
}
}
add_action(\'pre_get_posts\',\'searchAll\');
我还尝试设置$query->数组(\'post\\u type\',数组(\'post\',movie\');任何if语句中都没有行,但什么都没有发生。我做错了什么?
请帮忙!
最合适的回答,由SO网友:Robert hue 整理而成
尝试将其添加到函数中。php。
function my_custom_get_posts( $query ) {
if ( is_admin() || ! $query->is_main_query() )
return;
if ( $query->is_search() ) {
$query->set( \'post_type\', array( \'post\', \'movie\' ) );
}
}
add_action( \'pre_get_posts\', \'my_custom_get_posts\', 1 );
同时确保您没有任何其他
pre_get_posts
覆盖此函数效果的操作。