ecshop自定义首页flash幻灯片 自定义首页主广告效果

作者: 坎肩儿 分类: ecshop网店 发布时间: 2015-05-05 13:49

注:在开发一个项目的时候用到了这个问题,百度之后找到解决的方案,对作者的尊重贴出原文地址(http://blog.sina.com.cn/s/blog_6ad6243801016ymg.html)


1、查找根目录的index.php文件,找到下面代码:

$links = index_get_links();
$smarty->assign(‘img_links’, $links[‘img’]);
$smarty->assign(‘txt_links’, $links[‘txt’]);
$smarty->assign(‘data_dir’, DATA_DIR);

后面添加:

/* 自定义首页幻灯片 */
$uri = $GLOBALS[‘ecs’]->url();
$playerdb = get_flash_xml();
$i = 1;
foreach ($playerdb as $key => $val)
{
if (strpos($val[‘src’], ‘http’) === false)
{
$playerdb[$key][‘src’] = $uri . $val[‘src’];
}
$playerdb[$key][‘short_url’] = str_replace($uri, ‘/’, $playerdb[$key][‘url’]);
$playerdb[$key][‘sort’] = $i++;
}
$smarty->assign(‘playerdb’, $playerdb);

2、在index.php文件最后面添加如下代码:

/* 自定义首页广告 */
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;
}

3、在库文件:模板目录/library/index_ad.lbi添加标签:

{foreach from=$playerdb item=item key=key}
链接地址:{$item.url}
文字描述:{$item.text|escape:html}
图片地址:{$item.src}
{/foreach}

OK,成功解决。