性价比最高的香港ASP、PHP主机提供商
做网站,就上凡科建站

让WordPress的搜索结果包括自定义文章类型的内容

Loading
0
阿里云代金券1000元礼包免费抢

如果你的WordPress站点添加了自定义文章类型,请记得让WordPress默认搜索支持自定义文章类型,即可以搜索自定义文章类型的内容。实现的方法很简单,将下面的代码添加到主题的functions.php 文件中即可:

1
2
3
4
5
6
//让搜索支持自定义文章类型
function searchAll( $query ) {
  if ( $query->is_search ) { $query->set( 'post_type', array( 'post','books', 'product','works' )); } 
  return $query;
}
add_filter( 'the_search_query', 'searchAll' );

注意根据自己的实际修改第 3 行数组(array)中的文章类型别名。

或者也可以将下面的代码添加到当前主题的 functions.php 文件中:

以下代码的功能:让搜索结果支持所有自定义文章类型。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//让搜索支持所有自定义文章类型
function include_post_types_in_search($query) {
	if(is_search()) {
		$post_types = get_post_types(array('public' => true, 'exclude_from_search' => false), 'objects');
		$searchable_types = array();
		if($post_types) {
			foreach( $post_types as $type) {
				$searchable_types[] = $type->name;
			}
		}
		$query->set('post_type', $searchable_types);
	}
	return $query;
}
add_action('pre_get_posts', 'include_post_types_in_search');
支付宝扫码打赏 微信打赏

如果本文对你有帮助,请打赏作者,鼓励我们继续写作!

WordPress快站:让WordPress建站更简单

关于 倡萌

一个疯狂的 WordPress 爱好者,喜欢折腾 WordPress 主题,分享 WordPress 资源。如果你也喜欢 WordPress,欢迎和我一起交流!

精彩推荐

WordPress搜索框关键词提示插件 WP Search Auto Match

WordPress搜索框关键词提示插件 WP Search Auto Match

WordPress 自动转换中文链接为拼音 SO Pinyin Slugs

WordPress 自动转换中文链接为拼音 SO Pinyin Slugs

5 条评论

  1. 代码没用

  2. 这个测试没有效果,使用的主题有出现搜索不到自定义文章的情况,如果是使用别人的主题的话,有可能是在functions.php里面限制了!这时候注意在这个文章里面搜索一下看看是否有相关的限制说明!

  3. wptouch主题下按照方法一修改了,可是不行啊。

  4. wordpress搜索默认支持所有文章类型的啊。

发表评论