给Landing sites 2.2增加关键字加粗功能


用的上一个landing site的版本是1.3,现在使用的是2.2版。
为了增强改善用户体验,改进了landing site,为dlp功能做了关键字加粗,关键代码如下:

function ls_terms_filter($content){
  // Did we come from a search engine? 
  $referer = ls_get_refer();//取来源域名
  $output = '';
  $delimiter = ls_get_delim($referer);//看是否在list里面
  if($delimiter) 
  {
    $terms = ls_get_terms($delimiter);//取关键字串
  $terms= array_unique(preg_split("/[\s,]+/", $terms));//转换为数组
  $contentarr = preg_split("/(<.*>)/U", $content, -1, PREG_SPLIT_DELIM_CAPTURE); // capture the tags as well as in between
  $stop = count($contentarr);// loop stuff 
  for ($i = 0; $i < $stop; $i++) {
  	$content = $contentarr&#91;$i&#93;; 
  	if ((strlen($content) > 0) && ('<' != $content{0})) { // If it's not a tag
   foreach ($terms as $term) {
   	if (strlen($term)>1)//避免关键字太短的情况
   	$content=eregi_replace("($term)","<b>\\1</b>", $content);
   } 
  	} 
  	$output .= $content; 
  }
   	return $output;
  } else{
  	return $content;
  }
}

增加了上述的function,对内容里面的关键字进行加粗处理
增加了2个filter

add_filter('the_content', 'ls_terms_filter');
add_filter('comment_text', 'ls_terms_filter');

效果请点击下面链接
点击
然后点击本站的链接进来看,搜索的关键字”贝贝 游泳 静观其变”都会做加粗处理。
修改一下上述程序,可以改成整个site的关键字加粗,加链接等效果。
附上修改过的landingsite 2.2的源代码下载。
下载landingsites2.2


《 “给Landing sites 2.2增加关键字加粗功能” 》 有 15 条评论

  1. 有一点错误,如果搜索字符串中含有“| ”,那么eregi_replace会出错,最好使用str_replace

  2. […] 1. 在404页面中添加相关文章,这样即使是碰到google来的断链,用户也会找到些有用的东西: <?php if (ls_getinfo('isref')) : ?> <h2><?php ls_getinfo('terms'); ?></h2> <p>欢迎来自 <?php ls_getinfo('referrer'); ?> 的朋友! 您所找的页面不存在,但是你搜索的关键词:<i><?php ls_getinfo('terms'); ?></i>. 有以下主题或许您也感兴趣:</p> <ul> <?php ls_related(5, 10, '<li>', '</li>', '', '', false, false); ?> </ul> <?php endif; ?> 2. 加粗或者高亮关键词: 加粗关键词请参见贝贝博客;如果只需要高亮关键词而不需要欢迎语可以用search_hilite插件。但是这两个方法在使用super  cache时都会出问题,比较好的highlight是纯php方案,如Js的搜索引擎关键字高亮工具Search Engine Keyword Highlight,这方面的wp插件可以用这个wp-hightlight插件。需要注意的是这个插件的最后有个后门钩子,需要去掉,清洁后的版本可以在这里下载关键字高亮工具 […]

  3. 我搜索进入你的博客,可是并没有看见加粗的效果啊,是不是你把这个插件撤掉了啊?

    还有啊 你能不能再给他改改,改成这样的效果,就是可以在后台设置一个地址,然后不论从搜索引擎搜什么过来的,搜索的关键字都会加粗并连接到 后台设置的那个地址,呵呵,可以做广告. 我等你回复啊 O(∩_∩)O~

  4. 请问, 如果我只要显示来源和关键字, 然后把那个相关的帖子列表改为一个我在推广的产品链接,代码里面怎么改?
    谢谢

  5. <!–

    您通过 搜索关键词 来到这里,我们列出了一些您可能想了解的主题:

    <?php ls_related(5, 10, ”, ”, ”, ”, false, false); ?>

    –>

  6. 您通过 搜索关键词 来到这里,我们列出了一些您可能想了解的主题:

    <?php ls_related(5, 10, ”, ”, ”, ”, false, false); ?>

    关键是这段代码啊~ 你没写我就理不清头绪了。O(∩_∩)O哈哈~整好了。3Q!

  7. 你好!你的文章写的很好.但是我具体不知道该插件是如何安装的!后台激活后没做其他设置。搜索后只是关键词加粗没有”您从www.baidu.com来,要找Landing sites.下面这些内容可能您也感兴趣:……“,推荐文章啊!请教该怎么做?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据