ECSHOP可以在后台设置模板中自动调用某个商品分类下的商品的,通过本教程可以实现在循环的商品分类下调用广告位
以首页为例,调用不同的 分类,显示不同的广告:
第一步:
打开includes/init.php
在 ?> 前添加以下代码:
/*调用指定分类广告*/
functionget_uuecs_adv($type,$id) { $sql= "select ap.ad_width,ap.ad_height,ad.ad_name,ad.ad_code,ad.ad_link,ad.media_type from ".$GLOBALS['ecs']->table('ad_position')." as ap left join ".$GLOBALS['ecs']->table('ad')." as ad on ad.position_id = ap.position_id where ad.ad_name='".$type."_".$id."' and (ad.media_type=0 OR ad.media_type=3) and UNIX_TIMESTAMP()>ad.start_time and UNIX_TIMESTAMP()<ad.end_time and ad.enabled=1"; $row= $GLOBALS['db']->getRow($sql); if($row) { if($row['media_type'] == 0) { $src= (strpos($row['ad_code'], 'http://') === false && strpos($row['ad_code'], 'https://') === false) ? DATA_DIR . "/afficheimg/$row[ad_code]": $row['ad_code']; return""; } else { return"" .htmlspecialchars($row['ad_code']). ''; } } else { return""; } }
第二步:
打开 includes/lib_goods.php
查找:
$cat['id'] = $cat_id;
下面添加以下代码:
$cat['ad'] = get_uuecs_adv('index_1',$cat_id);
第三步:
在要调用的模板中,比如 library/cat_goods.lbi 添加以下代码调用即可
{$goods_cat.ad}
第四步:
后台广告位命令规则
广告名称固定格式:index_1_18
这样分类ID为18的分类下面才会显示出该广告来。