在 WordPress 中,搜索结果默认情况下会显示文章的标题和摘要。如果你希望搜索结果只显示文章标题而不包括摘要和内容,有几种方法可以实现这个目标:
方法 1. 检查主题搜索模板
有些 WordPress 主题允许你自定义搜索结果的显示方式。确保主题的搜索模板包含摘要和内容的相关代码。
打开你的主题文件夹,通常是在 wp-content/themes/your-theme/,找到 search.php 或 searchform.php 文件。
在搜索模板文件中,找到显示搜索结果的代码段。你可能会看到类似以下的代码:
<?php while (have_posts()) : the_post(); ?> <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2> <?php the_excerpt(); ?><?php endwhile; ?
修改为只显示标题的方式:
<?php while (have_posts()) : the_post(); ?> <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2> <?php endwhile; ?>
这样就只会显示搜索结果的标题而不包括摘要。
如果你没有对搜索模板进行定制,可能是主题使用了默认的搜索模板,而默认模板中没有包括摘要和内容的代码。
在 WordPress 后台,转到“外观” -> “编辑主题”。
在右侧找到 search.php 或 searchform.php 文件。
如果文件中没有上述提到的摘要和内容的代码,你可以将上述代码添加到适当的位置。
保存文件。
方法 2: 使用functions.php 文件
使用 pre_get_posts 过滤器:
打开你的主题的 functions.php 文件(可以在 WordPress 后台的“外观” -> “编辑器”中找到)。
添加以下代码:
// 在 functions.php 文件中添加以下代码 function custom_search_filter($query) { if ($query->is_search && !is_admin()) { // 限制搜索结果只包含文章标题 $query->set('post_type', 'post'); $query->set('posts_per_page', -1); $query->set('post_status', 'publish'); $query->set('fields', 'ids'); } return $query; } add_filter('pre_get_posts','custom_search_filter');
方法 3: 使用插件
安装插件:
在 WordPress 后台导航到“插件” -> “安装插件”。
搜索并安装插件。 如 "Search Everything" 或 "Relevanssi"
使用这些方法时,你可以控制 WordPress 搜索结果只显示文章标题而不包括摘要和内容。如果你使用的是其他主题,可能需要根据主题的具体情况进行调整。选择适合你需求的方法,并确保在编辑主题文件时进行备份,以防止出现意外问题。
还没有评论,来说两句吧...