骑兵系列二:高亮Google/Baidu/Yahoo和站内搜索关键词
这是骑兵系列第二篇文章,上一篇我分享了如何尽可能DRY的编写查询缓存(以memcache为例子)。场景分析:某网站用户通过搜索引擎(比如Google和百度)来到了你网站中的某个页面,为了让用户迅速定位它输入的关键词,通常我们希望将这些来源关键词进行高亮。
实现原理:1) 首先通过HTTP header分析referer(来源URL),并提取其中的关键词键值对;2) 在客户端使用JS或者服务器端使用PHP动态替换完成高亮文本替换。
献上代码:本例的PHP代码实现对referer的分析和关键词的提取; JS代码实现对指定DOM区域出现的关键词进行高亮.
代码在线查看:https://gist.github.com/1144785
使用方法举例:
<?php if($keywords = search_engine_hl()):?>
<script type="text/javascript">
var keywords = '<?php echo $keywords;?>';
Highlighter.highlight(keywords, $('.page_topic h1, .post_content p'));
</script>
<?php endif;?>
请注意,例子中对DOM的选取用到了Jquery。
怎么样?网站看上去是不是更专业了些?希望大家也来分享。
支持一下 {:soso_e179:} 赞一个,留备用 这个留着 这个留着 骑兵系列,继续出吧,非常支持这种代码片段 顶一个 mark 备用
页:
[1]