
- 帖子
- 1
- 积分
- 103
- 体力
- 101 点
- 金币
- 1
- 威望
- 0
- 来自
- 济南
|

[共享] ecshop2.7用自定义js幻灯片插件替换默认flash主广告位
关于这个问题,网上有很多教程,但是讲的都太复杂了,其实不用这么复杂,两步就可以完成。
第一步:调用主广告位数据
编辑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;
}
然后在
/* 页面中的动态内容 */
assign_dynamic('index');
前面加上下面这句代码
$smarty->assign('playerdb', get_flash_xml()); // 自定义js主广告
第二步:在模版中调用
编辑index.dwt,在需要的地方添加数据调用
例如:
{foreach from=$playerdb item=item key=key}
<li><a href="{$item.url}" target="_blank"><img src="{$item.src}" /></a></li>
{/foreach}
具体格式可以根据所使用的js插件的情况来调整。
这样替换就完成了,可以刷新一下首页看下效果了。 |
|