又一個(gè)小功能
來(lái)源于:
https://www.yaxi.net/2017-03-21/1338.html
站內(nèi)搜索是網(wǎng)站必須的一個(gè)功能,WordPress系統(tǒng)在搜索功能這塊做的還算可以。有時(shí)候在文章數(shù)量較少或者搜索關(guān)鍵詞較為復(fù)雜的時(shí)候,匹配出來(lái)的搜索結(jié)果可能就只有一篇文章,如果邊欄設(shè)置的較長(zhǎng),此時(shí)就會(huì)顯得有些“左右失調(diào)”不太美觀。考慮到用戶體驗(yàn),我們來(lái)對(duì)WordPress搜索做個(gè)小小的優(yōu)化:當(dāng)WordPress搜索結(jié)果只有一篇文章的時(shí)候,我們讓頁(yè)面自動(dòng)調(diào)整到此文章。
這樣一來(lái),避免了搜索列表單獨(dú)一篇文章而側(cè)邊欄長(zhǎng)長(zhǎng)一列的情況;而且也省去了用戶二次點(diǎn)擊的動(dòng)作,在一定程度上能夠提高用戶體驗(yàn)。而我們只需要在主題函數(shù)模板functions.php里添加一段代碼即可。
//搜索結(jié)果只有一篇文章時(shí)跳轉(zhuǎn)到該文章
add_action('template_redirect',?'redirect_single_post');
function?redirect_single_post()?{
if?(is_search())?{
global?$wp_query;
if?($wp_query->post_count?==?1?&&?$wp_query->max_num_pages?==?1)?{
wp_redirect(?get_permalink(?$wp_query->posts['0']->ID?)?);
exit;
}
}
}
將以上代碼放入functions.php最后一個(gè)?>前即可。