!
也想出现在这里? 联系我们
广告位

WordPress 实现自动中文分词搜索的方法

建站教程中,我们介绍了 WordPress 搜索功能的制作方法,这也是 WordPress 程序的默认搜索方法,这种方法是将用户的搜索词全部匹配后才能得到结果。如果用于搜索词很长的话,很大可能是无4 W ~ r法得# } N .到相关结果的。

为了防止用户长搜索词匹配不了结果的问题,可以将用户的搜索词进行分词,然后对分词的每个/ U : W词进行匹配,得到结果。下面介绍一下 WordPre* M % ~ d N _ g Sss 实现自动分u % c T J Q 7词搜索的方法。

方法/步骤

安装 WordPress 自动分词搜索插件,这个插件的功能就是将搜索词通过 API 接口进行分词。

在自己网站后台安; M 6 R V K K装这款插件,不需要做任何设置;

改造一下自己的搜索页模板 search.php,将默认循环代码替换成以下的代码:

  1. <?php
  2. $sousuociarr=explode(' ',$s);//H ! k J q L } 7转换成搜索词数组
  3. //获取词数量
  4. if(count($sousuociarr)>5){
  5. $cishu = 20;
  6. }else{
  7. $cisv ) r Z r F 7 Khu = 30;
  8. }
  9. /*查询主站*/
  10. $( g : Tvarszhuzhan = array();
  11. for($i=0;\ Y r I H ( G z$i<count($sousuociarr);$i++&q g u % e ^ 8 Q l#41;- ; 9 Z W R i3;
  12. $taglength = mb_strlen($sousuociarr[n ; 2 t { # o $ 7;$i],'utf-8');//获取长度
  13. if($taglength > 1){
  14. $vars = $wpdb -> get_results(&quE ; +ot;SELn = T b q _ . ^ECT * FROM `wp_posts` where post_status='publish' and post_type='post' and post_title like '%$sousuociarr[$i]%' LIMIT $cishu", ARRAY_A);
  15. $varszhuzhan = array_mW V P M { j k U )erz u J ; l { @ 7ge($9 # # ^varszhuzhan, $vars)? x h M % L;//合并数组
  16. }
  17. }
  18. $varszhuzhan = array_unique($varszhuz4 7 Z a l bhan, SORT_REGULAR);//去重处理
  19. ?>
  20. <ul class="mb_L ~ n Nbody_list clearfix">
  21. <?php
  22. foreach($varszhuzhany Q } as $varzz){?>
  23. <li>&m \ j _ [ A + Olt;a href="<?php echo g] | ) O - - 2 C Uet_permalink($varzzA Q : C J91;'H s | IID'])?&gt\ X c $ r;" target="z 0 O J g (_blank"1 s t [ 9 R><?pQ 4 8 K Q 7 3hp echo $varzz['post_title'];?&B O [ \ ~ V 4 lgt;</, { 6 = m K } ^a></li>
  24. <?php }?&gta K y e z e;
  25. &lu s h V [ $ y %t;/ul>

这样就可以实现用户. K O在搜索时,自动将搜索词分词,然后将每个词进行匹配,得到结果了,实现了分词搜索功能。m m w z / B :

给TA打赏
共{{data.count}}人
人已打赏
WordPress教程

WordPress页面或文章中轻松添加JavaScript代码

2022-8-11 16:21:06

WordPress教程

WordPress文章字段查询 meta_query 各种高级用法列举

2022-8-11 16:22:17

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索