WordPress实现只搜索文章标题的方法

首页 WordPress教程 WordPress实现只搜索文章标题的方法
    • 我要评论
    • WordPress默认的搜索功能,使用户搜索结果包括文章内容、文章标题与文章标签 这样搜索出来的结果不会很精确,如果你想让它搜索出来的结果更精确、相关,可以限定只搜索文章的标题。

      将下面的代码添加到主题的 functions.php 文件即可实现:

      //让WordPress只搜索文章的标题
      
      function __search_by_title_only( $search, &$wp_query )
      {
      	global $wpdb;
      	if ( empty( $search ) )
              return $search; // skip processing - no search term in query
          $q = $wp_query->query_vars;    
          $n = ! empty( $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 ';
          }
          if ( ! empty( $search ) ) {
          	$search = " AND ({$search}) ";
          	if ( ! is_user_logged_in() )
          		$search .= " AND ($wpdb->posts.post_password = '') ";
          }
          return $search;
      }
      add_filter( 'posts_search', '__search_by_title_only', 500, 2 );
      收藏 (0)
      打赏 支付宝打赏 微信打赏
      点赞 (0)

      标题:WordPress实现只搜索文章标题的方法

      分类:WordPress教程

      链接:https://www.ztjun.com/1436.html

      版权:

好久不见,甚是想念

相关文章

评论 暂无评论