您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
ecshop调用后台指定广告位下所有广告的方法
含玉2024-12-26 12:45:12ecshop商城教程已有人查阅
导读ecshop本身的广告调用规则是:对某个广告位下的广告列表随机显示其中一条。而我们有时需要将某个广告位下的所有广告全部显示出来,那么如何处理呢,下面就自己做了一个函数:
ecshop本身的广告调用规则是:对某个广告位下的广告列表随机显示其中一条。而我们有时需要将某个广告位下的所有广告全部显示出来,那么如何处理呢,下面就自己做了一个函数:
\includes\lib_common.php 在最下面增加一个函数:根据传入的广告id,获取广告数组,全站通用。
例如我们需要在首页加入一个广告列表,就在\index.php中查找assign_template();
在这句话的下面加入
打开\themes\default\index.dwt 模板,引入:
\includes\lib_common.php 在最下面增加一个函数:根据传入的广告id,获取广告数组,全站通用。
function get_position_ads($id)
{
$sql = "select * from " . $GLOBALS['ecs']->table('ad') . " where position_id = ".$id." AND enabled = 1 order by ad_id";
$rows = $GLOBALS['db']->getAll($sql);
if($rows )
{
$sql = "select ad_width,ad_height from " . $GLOBALS['ecs']->table('ad_position') . " where position_id = ".$id." limit 1";
$ad_position = $GLOBALS['db']->getRow($sql);
foreach($rows as &$row )
{
$row['pic']= 'data/afficheimg/'.$row['ad_code'];
$row['width'] = $ad_position['ad_width'];
$row['height'] = $ad_position['ad_height'];
}
}
return $rows;
}
然后显示页加入smarty语句,例如我们需要在首页加入一个广告列表,就在\index.php中查找assign_template();
在这句话的下面加入
$smarty->assign('addiy', get_position_ads(1));
之后在模板文件中把数据调用出来,这也是smarty引擎通用的方法。打开\themes\default\index.dwt 模板,引入:
{foreach from=$addiy item=addiylist}
<a href="{$addiylist.ad_link}" title="{$addiylist.ad_name}" target="_blank">
<img src="{$addiylist.pic}" width="980" height="387" alt="{$addiylist.ad_name}" />
</a>
{/foreach}
本文标签:
很赞哦! ()
相关文章
随机图文
-
ecshop后台会员列表增加显示会员等级
目前的ECSHOP系统后台的会员列表默认是不显示会员等级的,它只是在会员搜索功能里面提供了一个按照“会员等级”搜索的功能,这样显示的有些不支援 -
ecshop收货人信息中邮件必填选项的删除方法
Ecshop用户下了订单之后有一步,是要求填写收货人信息,其中邮件地址是必须填写的。第一步:找到模板下 flow.dwt,找到email部分的{$lang.require_field}直接去掉。 -
ecshop数据库MYSQL现有数据表增加新的字段
执行查询语句:ALTER TABLE `ec_order_info`ADD COLUMN `trade_no` varchar(100) NOT N -
ecshop站内快讯调用指定文章分类的方法
在ECSHOP商城首页的“站内快讯”里只显示某个特定分类下的文章,例如只显示 类别ID为 5 的文章。使用editplus 或者 dreamweaver 打开 index.php文件(如果你的是UTF-8编码,尽量不要使用记事本)
留言与评论 (共有 条评论) |