修改一句代碼解決WordPress后臺媒體庫無法搜索的問題
前段時間一直有個朋友說使用某某WordPress主題會導致后臺媒體庫無法搜索,因為我這里是對上傳的文件自動重命名的,所以對這個需要并不是太感冒,但是其實心里已經大概有了想法的,所以前段時間解決這個問題,在這里記錄下。
其實問題主要來源于【搜索結果排除頁面】這個功能,從百度搜索一下,會發現得到的代碼和下面這段代碼類似:
//搜索結果排除所有頁面
function search_filter_page($query) {
if ($query->is_search ) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts', 'search_filter_page');
這段代碼的意思是搜索的話,只顯示post文章類型,也就是文章,沒有頁面,但是問題來了,這段代碼沒有限定位置,導致在后臺也可以運行,而后臺的搜索一般是文章搜索也沒事,但是如果是附件搜索就GG了,所以這段代碼我們是需要修改一下的。
修改后代碼:
//搜索結果排除所有頁面
function search_filter_page($query) {
if ($query->is_search && !$query->is_admin) {
$query->set('post_type', 'post');
}
return $query;
}
add_filter('pre_get_posts', 'search_filter_page');
代碼的修改只是給他加個is_admin的判斷而已,也很簡單的。
這個很簡單的問題為什么幾乎沒人發現,首先看百度的結果幾乎都是錯的,另外這個需求是非常小的,搜索文件名的方法其實并不是一個好的附件管理方式,最好的方式還是分類標簽化管理。
文章轉自:https://gitcafe.net/archives/5988.html
新主題官方微信公眾號
掃碼關注新主題(XinTheme)官方公眾號,本站動態早知道。
發布本站最新動態(新主題發布、主題更新)和WordPress相關技術文章。