ecshop自己的广告调用规则是:对某个广告位下的广告列表随机显示其中一条。php
而咱们有时须要将某个广告位下的全部广告所有显示出来,那么如何处理呢,下面就本身作了一个函数:sql
\includes\lib_common.php 在最下面增长一个函数:根据传入的广告id,获取广告数组,全站通用。数组
1 function get_position_ads($id) 2 { 3 $sql = "select * from " . $GLOBALS['ecs']->table('ad') . " where position_id = ".$id." AND enabled = 1 order by ad_id"; 4 $rows = $GLOBALS['db']->getAll($sql); 5 if($rows ) 6 { 7 $sql = "select ad_width,ad_height from " . $GLOBALS['ecs']->table('ad_position') . " where position_id = ".$id." limit 1"; 8 $ad_position = $GLOBALS['db']->getRow($sql); 9 foreach($rows as &$row ) 10 { 11 $row['pic']= 'data/afficheimg/'.$row['ad_code']; 12 $row['width'] = $ad_position['ad_width']; 13 $row['height'] = $ad_position['ad_height']; 14 } 15 } 16 return $rows; 17 }
而后显示页加入smarty语句,函数
例如咱们须要在首页加入一个广告列表,就在\index.php中查找assign_template();ui
在这句话的下面加入url
$smarty->assign('addiy', get_position_ads(1));
最后在模板文件中把数据调用出来,这也是smarty引擎通用的方法。spa
打开\themes\default\index.dwt 模板,引入:code
{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}
相关内容:blog
ecshop添加广告位方法和常规调用seo
http://zhidao.baidu.com/link?url=X-uj76er80lDun5seoCSMHnvHbFCdwxUcmSwZnwVSivKutuza8os79qHiIrZlyYPpPfxsdJnQGeS_Z-AEs1wk4Mm-fEEEcSVMhs_lIWN7C_
ecshop中广告位的ID是在哪里查看?
ecshop当中的广告位ID,具体查看也是状态栏
更多ecshop问题参考:http://www.zuimoban.com/php/ecshop/