前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WordPress搜索功能增强的开发思路

WordPress搜索功能增强的开发思路

原创
作者头像
张子凡
发布2022-11-03 14:14:16
6780
发布2022-11-03 14:14:16
举报
文章被收录于专栏:张子凡

来给大家分享一个子凡我最近开发 WordPress 搜索增强功能的一个思路,主要目的就是出于网站搜索聚合页面的优化,其次当然就是提升网站搜索结果相关度和内容丰富程度,用 WordPress 的朋友应该都知道,WordPress 本身的搜索过于单纯,精准匹配对于网站搜索来说可能几乎搜索不到任何的内容,对于普通用户搜索也不会用关键和空格分隔的方式来搜索。

WordPress search 搜索
WordPress search 搜索

所以最近子凡给我们的泪雪网搜索做了巨大的升级和优化,今天主要就是分享其中一个增强 WordPress 搜索功能的思路,那就是利用 WordPress 本身的 tag 标签来作为词库,然后给搜索词做分词切割,这样做的好处是分词词库都是根据我们网站标签而来,相对而言更为准确和有效,其次是网站本身的数据接口,开发和使用起来拥有绝对的控制权,相比使用第三方分词接口或者分词词库更好的本地化了。

第三方分词当然还是能找到免费的分词接口,并且还有人开发过 WordPress 搜索分词插件,当然也还有利用开源的分词库来做了插件,但是子凡看了都不是很理想,主要就是第三方接口的稳定性和以后的发展,我可不想用着用着那天就没法用了,我不想做这种无用功,其次就是对于付费的接口,我想我暂时肯定是接受不了的,毕竟搜索这个功能属于长期运营,忽然间多出这么一部分支出当然是划不来的。

那么子凡经过再三研究和对比考虑,最后还是选择利用 WordPress 标签功能作为词库来给 WordPress 搜索做分词处理。稍微详细的开发思路如下:

1、利用 get_tags 函数获取所有函数,因为是分词所以可以设置 hide_empty 为 false,就算是空标签也可以用来做分词;

2、然后使用 wp_list_pluck 来提取标签数组中所有标签 name 名称,这样标签词库就是一个完整的数组了;

3、为了后续的开发和使用效率,子凡我用 wp_cache_set 做了缓存设置,有效期设置的一天时间,当然还可以利用其它方式做缓存等等,反正就是避免每次分词都要获取一次全部的标签,造成服务器压力和延迟;

4、最后 foreach 循环加上 strpos 开始拆分搜索词,并且记录好分词和标签关键词,根据自己实际的开发需求做后续开发即可。

好啦,子凡就只能简单的给大家分享到这里,如果你有什么更加优秀的方式方法欢迎留言告诉子凡,特别是如果能够比这个方法更加高效,务必要告诉一下子凡哦。

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/wordpress-search-enhanced-methods.html

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站建设
网站建设(Website Design Service,WDS),是帮助您快速搭建企业网站的服务。通过自助模板建站工具及专业设计服务,无需了解代码技术,即可自由拖拽模块,可视化完成网站管理。全功能管理后台操作方便,一次更新,数据多端同步,省时省心。使用网站建设服务,您无需维持技术和设计师团队,即可快速实现网站上线,达到企业数字化转型的目的。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档