请登录后探索更多精彩内容!
WordPress6.7.1 搜索限制只搜索标题方法:找到主题目录:/wp-content/themes/主题下的functions.php新增下面代码:
//搜索优化 function __search_by_title_only( $search, $wp_query ) { global $wpdb; if ( empty( $search ) ) { return $search; // 如果没有搜索词,则直接返回 } // 从 $wp_query->query_vars 中获取搜索词和其他查询参数 $query_vars = $wp_query->query_vars; $search_terms = (array) $query_vars['search_terms']; // 确保搜索词是数组 $exact = ! empty( $query_vars['exact'] ); // 检查是否精确匹配 $n = $exact ? '' : '%'; // 根据是否精确匹配设置通配符 // 构建搜索查询字符串 $search_parts = []; foreach ( $search_terms as $term ) { $term = esc_sql( like_escape( $term ) ); $search_parts[] = "({$wpdb->posts}.post_title LIKE '{$n}{$term}{$n}')"; } // 如果搜索词不为空,则组装完整的搜索条件 if ( ! empty( $search_parts ) ) { $search = " AND (" . implode(' AND ', $search_parts) . ")"; // 如果用户未登录,则添加密码保护检查(可选) if ( ! is_user_logged_in() ) { $search .= " AND ({$wpdb->posts}.post_password = '') "; } } return $search; } add_filter( 'posts_search', '__search_by_title_only', 500, 2 );
上传即可
暂无评论
请先登录后发表评论!
暂无评论