在某项目中客户要求实现右侧漂浮的客服内的信息能够自动更新(后台更新此处也更新),从网上下载的代码,具体见:http://bbs.ecshop.com/thread-92214-1-1.html
然而这个代码有个致命的缺点,因为悬浮代码是调用JS文件,不适用ecshop里的php-dwt-lbi模式,只能手工修改客服代码,这对于普通用户是非常不便的。
我参考了代码,发现其实可以变通解决这个问题,下面以“客服2_UTF_GBK版本”为例:
1、打开ServiceQQ.js文件将document.write输出的语句全部删除保存
2、打开page_footer.lbi,在最末位加入如下代码:
<link href="QQkefu/images/qq.css" rel="stylesheet" type="text/css" />
<div class='QQbox' id='divQQbox' >
<div class='Qlist' id='divOnline' onmouseout='hideMsgBox(event);' style='display : none;'>
<div class='t'></div>
<div class='con'>
<h2>在线客服</h2>
<ul>
<!-- QQ 号码 {foreach from=$qq item=im} -->
<li class=odd><!-- {if $im} -->
<a href="http://wpa.qq.com/msgrd?V=1&Uin={$im}&Site={$shop_name}&Menu=yes" target="_blank"> <img src="http://wpa.qq.com/pa?p=1:{$im}:4" height="16" border="0" alt="QQ" /> {$im}</a></li>
<!-- {/if} -->
<!-- {/foreach} 结束QQ号码 -->
<!-- 淘宝旺旺 {foreach from=$ww item=im} -->
<!-- {if $im} -->
<li><a href="http://amos1.taobao.com/msg.ww?v=2&uid={$im|escape:u8_url}&s=2" target="_blank"> <img src="http://amos1.taobao.com/online.ww?v=2&uid={$im|escape:u8_url}&s=2" width="16" height="16"
border="0" alt="淘宝旺旺" />{$im}</a></li>
<!-- {/if} -->
<!--{/foreach} 结束淘宝旺旺 -->
<!-- 客服电话{if $service_phone} -->
<li style="color:red;font-size:12px;">Tel:{$service_phone}</li>
<!-- 结束客服电话{/if} -->
</ul>
</div>
<div class='b'></div>
</div>
<div id='divMenu' onmouseover='OnlineOver();'><img src='/QQkefu/images/qq_1.png' class='press' alt='QQ客服热线'></div>
</div>
<script language='javascript' src='/QQkefu/ServiceQQ.js' type='text/javascript' charset='gbk'></script>
也就是把原来需要贴在page_footer.lbi末尾的调用代码中的客服信息直接写入lbi
3、搞定。