您可以在上强制每个回调的post类型pre_get_posts
:
is_admin() || add_action( \'pre_get_posts\', function( \\WP_Query $query ) {
$post_type = filter_input( INPUT_GET, \'post_type\', FILTER_SANITIZE_STRING );
if ( $post_type && $query->is_main_query() && $query->is_search() )
$query->set( \'post_type\', [ $post_type ] );
});
如果这仍然包括其他post类型,则在该挂钩上注册了第二个回调。试着找到它;它可能是一个主题或插件。