WordPress 搜索功能非常的简单简洁【jié】,使用【yòng】起来也非常【cháng】便【biàn】捷,搜索【suǒ】时【shí】默【mò】认就只能检索 WordPress 的【de】文章标题和【hé】内容,而且【qiě】也不支持模糊搜索,所【suǒ】以有时候也显得比【bǐ】较鸡肋,但是【shì】 WordPress 强大的二次开发能力,我们【men】可以通过开发在【zài】增强【qiáng】一下【xià】搜索功能。
在做百度专【zhuān】业问答【dá】与其他搜索引擎问答时,可能都会存【cún】在【zài】多标题的情况下,简单的说就是一篇文章可能需要适配多个【gè】标【biāo】题,而当【dāng】网【wǎng】站积累【lèi】的数据内容多起来以后,想要检索通过 WordPress 文章自定【dìng】义【yì】字【zì】段添【tiān】加【jiā】的【de】多标【biāo】题就【jiù】没【méi】法直接找【zhǎo】到了,这时候就显得非常【cháng】的【de】尴尬了【le】,那么子凡为了给编辑偷懒,特地【dì】二开一下 WordPress 的搜索功能。
1 2 3 4 5 6 7 8 9 10 |
//WordPress 搜索支持自定义字段数据 add_action('posts_search', function($search, $query){ global $wpdb; if ($query->is_main_query() && !empty($query->query['s'])) { $sql = " OR EXISTS (SELECT * FROM {$wpdb->postmeta} WHERE post_id={$wpdb->posts}.ID and meta_key = 'Headline' and meta_value like %s)"; $like = '%' . $wpdb->esc_like($query->query['s']) . '%'; $search .= $wpdb->prepare($sql, $like); } return $search; },2,2); |
以上就是子凡用于来支【zhī】持 WordPress 搜【sōu】索文章自定义字段数据的代码【mǎ】,如果你【nǐ】要使用或者【zhě】用于【yú】检索自定【dìng】义【yì】字段,需要修改以上代【dài】码中【zhōng】的“Headline”为自己自定义【yì】字段的 key。
版权所有:深圳市网商在线科技有限公司