虽然我认为您正在寻找一个插件,但我认为这个答案可能会帮助一些搜索类似答案的人。如果您有权访问您的功能。php文件,您可以轻松实现这一点。
首先,我们将更改orderby
搜索查询的参数,以便按页面标题对其进行筛选。这是我测试过的一个片段,它将改变您的搜索结果页面,并按标题升序排列。
//Filter the search by title for posts
function filter_search_by_title($query){
if($query->is_search() && $query->is_main_query()){
$query->set(\'post_type\', array(\'post\'));
$query->set(\'orderby\', \'title\');
$query->set(\'order\', \'ASC\');
}
return $query;
}
add_action(\'pre_get_posts\', \'filter_search_by_title\');
接下来,关于突出显示,这里有一篇文章将通过
the_excerpt
和
the_title
,并将添加
<strong>
围绕搜索的字符串的每个实例。很明显,你可以把它改成任何你喜欢的样式。
function highlight_search_results($content){
if(is_search()){
$search_string = get_query_var(\'s\');
$keys = explode(" ",$search_string);
$content = preg_replace(\'/(\'.implode(\'|\', $keys) .\')/iu\', \'<strong class="highligh-search">\'.$search_string.\'</strong>\', $content);
}
return $content;
}
add_filter(\'the_excerpt\', \'highlight_search_results\');
add_filter(\'the_title\', \'highlight_search_results\');
希望有帮助!!