让WordPress的搜索功能只按标题搜索

admin 0 367 2024-01-23 19:20

在WordPress网站上,搜索功能是一个非常有用的工具,它可以帮助访问者快速找到他们需要的内容。然而,默认情况下,WordPress的搜索功能会搜索整个文章内容,包括标题、正文和标签。如果你想让搜索功能只按标题搜索,可以通过以下步骤来实现。

  1. 登录WordPress后台,进入外观 - 编辑器。
  2. 在右侧的模板文件列表中,找到并点击打开“search.php”文件。
  3. 在“search.php”文件中找到以下代码:
<?php if ( have_posts() ) : ?>
  <h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'twentyseventeen' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
<?php else : ?>
  <h1 class="page-title"><?php _e( 'Nothing Found', 'twentyseventeen' ); ?></h1>
<?php endif; ?>

将以上代码替换为以下代码:

<?php if ( have_posts() ) : ?>
  <h1 class="page-title"><?php printf( __( 'Search Results for: %s', 'twentyseventeen' ), '<span>' . get_search_query() . '</span>' ); ?></h1>
<?php else : ?>
  <h1 class="page-title"><?php _e( 'Nothing Found', 'twentyseventeen' ); ?></h1>
<?php endif; ?>

<?php if ( have_posts() ) : ?>
  <h2 class="search-title"><?php _e( 'Search Results', 'twentyseventeen' ); ?></h2>
  <ul class="search-list">
    <?php while ( have_posts() ) : the_post(); ?>
      <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
    <?php endwhile; ?>
  </ul>
<?php else : ?>
  <p class="no-results"><?php _e( 'No results found.', 'twentyseventeen' ); ?></p>
<?php endif; ?>

保存并更新“search.php”文件。

现在,你的WordPress网站的搜索功能将只按标题搜索。当访问者使用搜索功能时,他们将只看到与搜索词相关的文章标题。

如果以上方式不适用,请换以下方式,在function文件添加代码:

//只搜索标题
function post_search_columns_callback($search_columns) {
return ['post_title'];
}
add_filter('post_search_columns', 'post_search_columns_callback');

相关文章

为什么主机厂商喜欢推荐LiteSpeed?LiteSpeed有没有缺点?
接入Cloudflare后,是否还需要使用LiteSpeed?
小程序使用独立源码还是选择SaaS?
网站主域名设置:带www还是不带www好?
隐藏WordPress忘记密码链接的方法
隐藏WordPress的作者页面,跳转至首页

发布评论