新闻中心

如何将ecshop首页主广告位的flash轮播替换为js轮播

作者 / 无忧主机 时间 2015-11-20 15:31:50

一些无忧主机php免备案虚拟主机的客户,在使用ecshop建站的商城网站时,因为ecshop使用的flash难以修改,而js更加符合人们的使用习惯,而默认ecshop还是用flash来做的,这点非常不好,今天无忧小编将教大家私用js实现轮播,下面说一下具体的修改方式: 第一步:首先我们我们用editplus打开文件index.php,在里面加一个一个方法,调用XML文件;

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]);
//print_r($flashdb);
            }
        }
    }
    return $flashdb;
}
第二步: 在index.php中找到
$smarty->assign('shop_notice',     $_CFG['shop_notice']);       // 商店公告
在下面添加
/*jdy add 0816 添加首页幻灯插件*/
$smarty->assign("flash",get_flash_xml());
$smarty->assign('flash_count',count(get_flash_xml()));
第三: 将在index_ad.lbi中调用循环就可以了
<!--{foreach from=$flash name=myflash item=flash}-->
 <LI><A href="{$flash.url}" target=_blank><IMG
 height=425 alt="" src="{$flash.src}" width=734></A> </LI>
 <!--{/foreach}-->
第四,JS效果可以自己在网上找,自己套用循环调用数据即可,但是不要用jquery的JS,否则会和ecshop冲突。 这样我们就可以把ecshop首页主广告位的flash轮播替换为js轮播。 友情提示:在修改文件前,我们要做好文件的备份,这样即使我们修改出错,也可以通过重新上传原文件来恢复网站,所以备份对于建站来说是很重要的哦。 无忧主机相关文章推荐阅读: ECSHOP教程:删除配送方式中的保价费用 ECSHOP程序会员订单记录中会员名过长怎么办? ECSHOP教程:购物车页面点击继续购物按钮改成回到上一步而不是返回到首页

本文地址:https://www.51php.com/ecshop/20791.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服