wanshutao

转之--http://www.ecshoptemplate.com/article-1710.html

 

这个ecshop很常见,因为现在比起flash难以修改,js更加符合人们的使用习惯,而默认ecshop还是用flash来做的,这点非常不好,下面说一下如何修改

 

第一步:index.php里加了一个方法,调用XML文件;function get_flash_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冲突。

给你上传一个附件。里面有个JS效果。

分类:

技术点:

相关文章: