導讀:建站技術建站技術wordpress 自帶的搜索功能其實比較簡單,搜索的結果就是包含搜索詞的文章、頁面,按照時間發布順序排序,下面,我們將介紹如何增強wordpress 的搜索網站技術分析建站技術。

wordpress自帶的搜索功能其實比較簡單,搜索的結果就是包含搜索詞的文章、頁面,按照時間發布順序排序,下面,我們將介紹如何增強wordpress的搜索,讓搜索結果更加精準。

1.增加wordpress搜索的關聯性
WordPress本身的搜索結果是按照發布時間排序的,這樣的搜索結果的相關性并不強,應該讓搜索結果按照內容相關性排序,而不是按照時間或者 ID,所以我們可以在當前主題的 functions.php 添加如下代碼來增強 WordPress 搜索的相關性:
if(is_search()){
add_filter('posts_orderby_request',?'search_orderby_filter');
}
function?search_orderby_filter($orderby?=?''){
????global?$wpdb;
????$keyword?=?$wpdb->prepare($_REQUEST['s']);
????return?"((CASE?WHEN?{$wpdb->posts}.post_title?LIKE?'%{$keyword}%'?THEN?2?ELSE?0?END)?+?(CASE?WHEN?{$wpdb->posts}.post_content?LIKE?'%{$keyword}%'?THEN?1?ELSE?0?END))?DESC,
{$wpdb->posts}.post_modified?DESC,?{$wpdb->posts}.ID?ASC";
}
只搜索文章
只搜索文章的標題,將下面的代碼添加到主題的 functions.php 文件即可:
/**
?*?讓?WordPress?只搜索文章的標題
?*/
function?__search_by_title_only(?$search,?&$wp_query?)
{
????global?$wpdb;
????if?(?織夢模板emptyempty(?$search?)?)
????????return?$search;?//?skip?processing?-?no?search?term?in?query
????$q?=?$wp_query->query_vars;
????$n?=?!?emptyempty(?$q['exact']?)???''?:?'%';
????$search?=
????$searchand?=?'';
????foreach?(?(array)?$q['search_terms']?as?$term?)?{
????????$term?=?esc_sql(?like_escape(?$term?)?);
????????$search?.=?"{$searchand}($wpdb->posts.post_title?LIKE?'{$n}{$term}{$n}')";
????????$searchand?=?'?AND?';
????}
關鍵詞標簽: 建站 你的 搜索功能
聲明: 本文由我的SEOUC技術文章主頁發布于:2023-07-23 ,文章增強你的wordpress搜索功能,建站技術主要講述你的,搜索功能,建站網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_35453.html