WordPress 站内搜索高亮显示关键词
被 Qiqiboy 刺激后,我阴差阳错地折腾出了非插件的 WordPress 高亮显示关键词及欢迎提示,但是这个搜索关键词高亮提示仅仅是针对来自 Google、百度等搜索引擎的访客,貌似对用站内搜索的朋友就有些不公平了,所以昨天考完试,我今天又马不停蹄地折腾起来,誓言要把 WordPress 站内搜索高亮显示关键词的功能搞定!结果,还真搞定了,哈哈~
无论是用 PHP 还是 Javascript 来实现 WordPress 站内搜索高亮关键词,都不可避免地会用到正则表达式,而偏偏这又是我的软肋,汗颜~先是参考了网上流传最多的 Jquery 实现站内搜索高亮关键词的方法,很可惜,这是一个老外的成果,完全没有考虑到我们非英语为母语的国家,所以这个高亮方法仅支持英文单词开头的关键词,用中文就杯具了。
所以最终还是参考了 Qiqiboy 的 wordpress高亮搜索结果+实现关键字前后截断显示。。。,他用的是 PHP 正则表达式的方法,最大的特点就是可以完美支持中文,而且比 Jquery 的方法执行速度也更快,最让我喜欢的一点是,非插件!哈哈~于是就拿来根据自己的主题修改了一番,方法如下:
在 WordPress 主题文件的 search.php 搜索结果文件中的主循环中加入以下代码:
$title = get_the_title();
$content = mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 600,"......");
$keys = explode(" ",$s);
$title = preg_replace('/('.implode('|', $keys) .')/iu','<span style="font-weight:700;background:#ffff00;">\0</span>',$title);
$content = preg_replace('/('.implode('|', $keys) .')/iu','<span style="font-weight:700;background:#ffff00;">\0</span>',$content);
?>
调用高亮的标题用以下代码:
调用高亮的日志内容用以下代码:
就这样,效果还是蛮不错的,大家可以去我头部导航右上角的站内搜索输入一些关键词试试,中文的、英文的都可以。另外我的 PHP 实力很菜,这修改过程可能不太完美,而且以上代码是根据我自己主题的需要修改的,并不完全通用。大家有同样需要 WordPress 站内搜索关键词高亮显示功能的,可以直接去 Qiqiboy 的原文学习:http://www.qiqiboy.com/2010/07/16/wordpress-highlighted-keyword-search-results.html
最后贴一张站内搜索关键词高亮的截图:

Wordpress 站内搜索高亮显示关键词
-
Wordpress 高亮显示关键词及欢迎提示2010年07月16日 -
万戈牌 WordPress 搜索自动匹配提示标签关键词2012年04月7日 -
给 WordPress 添加语音搜索功能2011年12月4日 -
万戈牌 Fuck IE6 非插件版2011年05月13日
不错,值得一看~`
Pingback: 给Search.php添加跳转到Google搜索的提示 | 企鹅君's Blog
Pingback: WordPress 站内搜索高亮显示关键词 | Wang Jun's Blog
好使,舍也不说了佩服的你五体投地。
看了两篇关于搜索的帖子,问问万戈大神,WP的站内搜索或者Google的CSE搜索,能涵盖评论内容吗?就是如果我搜“WordPress”,搜索结果不但列出文章,还有包含“WordPress”字样的评论。
还没试过,要试试。
直接在Google里站内搜索也可以高亮显示啊
我发现你总是搞出个代码 自己不用....嘿嘿
这个我有用耶
很不错,这正是我在找的,谢谢啊
我来也 呵呵
不懂php的飘过~~
我也和平平一样想去shi....
wange的主题实在是太漂亮的。。。看一次留一次口水。。。
哎呀呀,满地都是你的口水啦,快擦擦
谢谢分享,先收下,以后可能用得着
收下了。
来踩拉 记得回访哦!!祝福你的空间人气越来越旺哦 ! 嘻嘻 我叫 多多 可以做个朋友吗?
又是WP 又是深奥的代码。oh 别拉我,让我去shi
大白菜我兴奋的路过,从头看到尾,只能懂二成办,所以还是支持一下吧
学习学习,说不定以后要用到
基本上不上,右边的小广告是这样理解的,3 PR 6,1 PR 5,1 PR 4,送 200 块。
人真多。。人真多。。人真多。。。
.im 域名的巨头万戈同志 你要带带我们信任一把。。
代码不错.收了!
然后进行插件化= =
哈哈,插件这玩意我就不折腾了,我的原则是:一切非插件化
这创意太赞了 ~\(≧▽≦)/~
被小邪赞了
脸红
WordPress确实非常的好!
谢谢!博主,分享!
非常好,谢谢分享!
老万是修改默认模板的 还是修改当前模板的 search.php文件?
当前模板的search.php
实习了几天跑回来了,发现了万戈右边多了个东西·您的足迹··这下子就针对每个人了·哈哈用户体验做的很棒·
这是我前几天刚写的一篇折腾文,有兴趣可以去看一下哈
加上了 正在自恋中 哈哈
老万 我笨了, 你帮我看看啊,好像有点问题额 - -
看了一下,好像是不成功嘛。。。看看你的函数有没有放在主循环里呀
是放在 这下面吗?
。。。这里不能贴代码。。。
if (have_posts 是这下面?
恩,是的,木有错啊
但是我放那下面 似乎 就不显示高亮,奇怪了
我好像已经懒到不愿意看技术博文了,罪过罪过
今天就来篇非技术的
你可以考虑一下高亮的颜色用随机?随机生成颜色的代码很简单,反正都是16进制数,慢慢生成去呗。
或者用单一颜色就可以考虑定义css类,这样最少可以省一行代码的,而生成内容后,省的可就多了。呵呵。
这个主意不错耶,我试试去
这次折腾终于没有偏题了,哈哈..
哈哈,我有经常偏题的吗?我自己都没有感觉到耶
呵呵,有点百度快照的感觉
我用的就是百度快照的样式,哈哈
呵呵,谢谢呀
这个功能很不错哦.
你可以加上试试哈~
Pingback: Wordpress 站内搜索高亮显示关键词 « 乱舞春秋
偶不会用worldpress,但知道它很适合搜索和优化类网站。
那就试着玩玩WP呗
百度好像对WordPress不感冒啊,收录量一般地说
小万开始研究搜索啦?准备去Google上班?
哈哈,我倒是想呀,google不要我
上站长站了,哈哈
什么上站长站了?
http://www.chinaz.com/Webbiz/Exp/0GQ212962010.html
And
http://www.chinaz.com/Webbiz/Exp/0G31204592010.html
百度官方一直称之:用户体验好才是最好的seo
是不是这样对网站优化很好?
不是对网站优化好,是对客户体验比较好
怎么感觉评论的人少了许多= =.难道是因为你发的时间不对么..
我也正好奇呢。。。
我改google的了
google的自定义站内搜索也适用
恩,qiqi的文章也看到了,这个效果一定要加上
貌似今天灌水的人不多耶
难得的清静呀,哈哈
沙花啊沙花,我天的沙花,我楼上的都是ZT!
在span标签里面加入style 不符合WEB标准啊
有时无需太苛刻
来晚了,这个效果可以有
这个必须有,哈哈
这个楼还不高,赶紧留名,折腾就不要了呵,我现在写日志的心情都没有了.估计迟早要关门大吉
果然不錯,看倌搜尋後會一目了然啊
不過套用在我家這人氣少的地方就顯得不太需要了~
万戈厉害啊,我对php不懂,无法自己折腾出功能。
我也不懂呀,哈哈,瞎折腾呗
为什么有的文章不含关键词也会列出来?挺奇怪的
在全文会有的,但是截断部分没有
不懂。。
不疼不博客
老万,那个手机访问错误提示还存在的……
。。。为什么会这样,我这里的ucweb7.2正常耶
好奇怪,错误提示还存在啊,不过没有多大影响……
Warning: parse_url(http://) [function.parse-url]: Unable to parse URL in/home/wange/domains/wange.im/public_html/wp-content/themes/D-Z-Theme-Pro/functions.phpon line483
呃。。。明天用同事的手机试试
我非智能机,UC可上(你有没有设wap的,我是直接上web的)
内置浏览器也可上
我喜欢这种设置。
SuperRadio点歌专页开放点歌:http://www.isuperradio.com/diange
昨天折腾了半天都没哟哦那个纯jq折腾出来,根本不知道怎么去获得文本中的关键词。
你也在折腾这个呀,呵呵,关键是正则太难写
昨天就是在问你正则,正则解决后,又卡住了。。
比如我获得了这个对象:我是中国人
怎么用jq查找里面的 “我是” 两个字,并且加上 一对 span 标签啊??
就是卡在这里。。
简单扫描一下,拿好马扎走人~
不知道耶,今天同学位都是怎么了?
哇 这个不多 过几天和上一篇的一起加上去
~
恩,两个组合在一起是绝配呀
踩踩更健康~这个之前看到过~
有不少童鞋都已经写过了,方法各不相同
还是做出来了
是参照qiqiboy的方法折腾出来的
吃飯去~回來看文~
汗,这个功能我曾经写过文章
原来狂爆菊的是你
surprise~!!
二师兄到现在还没有出现,你们商量好了轮流来爆我菊吧
爆菊就交給豬兄了~剛才只刷了幾遍,未算爆菊
猪兄不在,爆菊幸免
来挤邮箱
擠郵箱黨終於來了
(蓋章)
擠郵箱~
带评论内容一块搜索出来 不知道怎么实现
我觉得把评论的内容用钩子钩进去就可以了吧,我的猜测