商城建站考虑用ECSHOP,其实选用什么软件不重要,重要的是资源多就行,不然再好用没人研究也是浪费精力。网上有许多免费的模板,对要求不算高的用户来说,已经足够了。
首先下载的模板如果只包含 /themes/模板,那么恭喜你,这样的模板99%有问题,不是这里调用不出来就是那里有代码错误。
免费的模板自然存在许多问题,对新手来说是比较伤脑筋,这当然也包括笔者在内...遇到过首页轮播图无法调用出来的错误没有?这里分享一下经验。
许多效果都可以采用SuperSlide进行整合,这里就不提供下载链接,直接搜就是了。笔者选择这个插件基本可以搞定现有的JS效果,引用也简单。ECSHOP轮播图默认的是flash,搜索引擎不抓取。有自定义播放器,这两者只可以选择其中一个。先把轮播图填写完之后,按下图切换至自定义。
找到
$smarty->display('index.dwt', $cache_id);
下面增加
function get_flash_xml()
{
$flashdb = array();
if (file_exists(ROOT_PATH . DATA_DIR . '/flash_data.xml'))
{
// 兼容v2.7.0及以前版本
if (!preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"\stext="([^"]*)"\ssort="([^"]*)"/', file_get_contents(ROOT_PATH . DATA_DIR . '/flash_data.xml'), $t, PREG_SET_ORDER))
{
preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"\stext="([^"]*)"/', file_get_contents(ROOT_PATH . DATA_DIR . '/flash_data.xml'), $t, PREG_SET_ORDER);
}
if (!empty($t))
{
foreach ($t as $key => $val)
{
$val[4] = isset($val[4]) ? $val[4] : 0;
$flashdb[] = array('src'=>$val[1],'url'=>$val[2],'text'=>$val[3],'sort'=>$val[4]);
}
}
}
return $flashdb;
}
找到
$smarty->assign('auction_list',index_get_auction());// 拍卖活动
下面加上:
$smarty->assign('playerdb',get_flash_xml());// FLASHJS广告
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <!-- {if $index_ad eq 'sys'} --> <script type="text/javascript"> var swf_width=534; var swf_height=200; </script> <script type="text/javascript" src="data/flashdata/{$flash_theme}/cycle_image.js"></script> <!-- {elseif $index_ad eq 'cus'} --> <!-- {if $ad.ad_type eq 0} --> <a href="{$ad.url}" target="_blank"><img src="{$ad.content}" width="534" height="200" border="0"></a> <!-- {elseif $ad.ad_type eq 1} --> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="534" height="200"> <param name="movie" value="{$ad.content}" /> <param name="quality" value="high" /> <embed src="{$ad.content}" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="534" height="200"></embed> </object> <!-- {elseif $ad.ad_type eq 2} --> <div id="picBox"> <ul id="show_pic" style="left:0;"> {foreach from=$playerdb item=item key=key} <li><a href="{$item.url}" target="_blank"><img src="{$item.src}" alt="{$item.text}" /></a></li> {/foreach} </ul> <ul id="icon_num"> {foreach from=$playerdb item=item name=picsitem key=key} <li <!--{if $smarty.foreach.picsitem.iteration eq 1}-->class="active" <!--{/if}-->>{$item.text}</li> {/foreach} </ul> </div> {$ad.content} <!-- {elseif $ad.ad_type eq 3} --> <a href="{$ad.url}" target="_blank">{$ad.content}</a> <!-- {/if} --> <!-- {else} --> <!-- {/if} -->
在</head>之前引入上传好的SuperSlide的js,具体的路径自己把握,我是放到根的js目录下, <script type="text/javascript" src="/js/jquery1.42.min.js"></script> <script type="text/javascript" src="/js/jquery.SuperSlide.2.1.1.js"></script>
自定义选项里,选择广告类型为代码,粘贴的代码比许多帖子的要少得多,代码如下:
<script type="text/javascript"> jQuery(".slideBox").slide({mainCell:".bd ul",autoPlay:true}); </script>
给个全通栏的参考样式,个性的就自己写咯
.slideBox{width:100%;height:500px;overflow:hidden;position:relative;border:1px solid #ddd;} .slideBox .hd{height:15px;overflow:hidden;position:absolute;right:5px;bottom:5px;z-index:1; } .slideBox .hd ul{overflow:hidden;zoom:1;float:left;} .slideBox .hd ul li{float:left;margin-right:2px;width:15px;height:15px;line-height:14px;text-align:center;background:#fff; cursor:pointer;} .slideBox .hd ul li.on{background:#f00;color:#fff;} .slideBox .bd{position:relative;height:100%;z-index:0;} .slideBox .bd li{zoom:1;vertical-align:middle;} .slideBox .bd img{width:100%;height:500px;display:block;}