性价比最高的香港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 将英文半角符号转换成全角符号(字符转义)

更改/移除WordPress作者存档页面的前缀“author”

更改/移除WordPress作者存档页面的前缀“author”

5 条评论

  1. 代码没用

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

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

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

发表评论