ecshop本身的广告调用规则是:对某个广告位下的广告列表随机显示其中一条。

而我们有时需要将某个广告位下的所有广告全部显示出来,那么如何处理呢,下面就自己做了一个函数:

\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添加广告位方法和常规调用

http://zhidao.baidu.com/link?url=X-uj76er80lDun5seoCSMHnvHbFCdwxUcmSwZnwVSivKutuza8os79qHiIrZlyYPpPfxsdJnQGeS_Z-AEs1wk4Mm-fEEEcSVMhs_lIWN7C_

ecshop中广告位的ID是在哪里查看?

ecshop当中的广告位ID,具体查看也是状态栏

更多ecshop问题参考:http://www.zuimoban.com/php/ecshop/

ecshop调用后台指定广告位下所有广告循环的更多相关文章

  1. EcShop调用显示指定分类下的子分类方法

    ECSHOP首页默认的只有全部分类,还有循环大类以及下面小类的代码,貌似没有可以调用显示指定大类下的子分类代码.于是就有这个文章的产生了,下面由夏日博客来总结下网站建设过程中ECSHOP此类问题的网络 ...

  2. ecshop首页调用指定商品分类下的商品品牌列表

    转之--http://www.16css.com/ecshop/735.html 通过二次开发可以实现ECSHOP首页调用指定分类下的品牌列表. 第一步: 打开根目录下的index.php 在最后面 ...

  3. ecshop 首页调用指定分类下的销售排行

    /*首页调用指定分类下的销售排行*/ function get_cats_top10($cat = '') { $sql = 'SELECT cat_id, cat_name ' . 'FROM ' ...

  4. ecshop调用指定栏目下的商品的方法

    第一步 在系统目录文件找到includes/lib_goods.php  这个文件打开 在此页最底部加入以下函数代码 /** * 首页获取指定分类产品 * * @access public * @pa ...

  5. ecshop 调用指定分类的推荐,热卖,新品

    未测试 1.includes/lib_goods.php文件.把SQL语句改一下,与category表关联即可 将 $sql = 'SELECT g.goods_id,g.goods_name, g. ...

  6. 织梦中limit的用法详解(调用指定id下的指定文章)

    limit的用法大致可以理解为:调用指定id下的指定文章. 下面为代码片段,需要的朋友自行拿去: {dede:arclist typeid='6' row='1' limit='0,1'} <l ...

  7. YbSoftwareFactory 代码生成插件【二十五】:Razor视图中以全局方式调用后台方法输出页面代码的三种方法

    上一篇介绍了 MVC中实现动态自定义路由 的实现,本篇将介绍Razor视图中以全局方式调用后台方法输出页面代码的三种方法. 框架最新的升级实现了一个页面部件功能,其实就是通过后台方法查询数据库内容,把 ...

  8. 如何在ECSHOP前台后台中讲版权内容清除

    如何在ECSHOP前台后台中讲版权内容清除 作者:河南电脑学校网 点击次数:1065 发布时间:2012-02-02 20:13:58 一.ECSHOP前台显示的页面的版权在下面几个地方修改:(本人不 ...

  9. JS常用方法总结,及jquery异步调用后台方法实例

    //前台接收get参数值 function getQueryString(name) {            var queryStrings = window.location.search.sp ...

随机推荐

  1. 搭建TFS 2015 Build Agent环境(三)

    在配置时,一定要注意下面的几个地方: 1.项目集合生成服务账号 中一定要包含: 2.Build Agent机器上防止Agent的路径一定要短,不要出现特殊字符,比如:C:\Agent 3.一定要安装V ...

  2. VMware三种上网模型

    今天捣鼓了一会虚拟机,对上网方式又学习了一遍,之前摆弄过,现在又捡起来了,主要自己整理一下,方面后面复习.主要有三种网络模型:桥接.仅主机(Host-Only).NAT.自己亲测了这三种方式,都可以上 ...

  3. sFlow-RT

    sFlow-RT™ incorporates InMon's asynchronous analytics technology (patent pending), delivering real-t ...

  4. Android Gradle 完整指南(转)

    本文转载来自:http://www.jianshu.com/p/9df3c3b6067a 为什么需要学Gradle? Gradle 是 Android 现在主流的编译工具,虽然在Gradle 出现之前 ...

  5. C# 6.0 新特性

    1.C# 6.0 示例 1: 自动属性支持初始化, 字符串嵌入的新方式, 通过 Using Static 引用静态类, nameof 表达式CSharp6/Demo1.xaml.cs /* * C# ...

  6. UIDynamic(捕捉行为)

    一.简介 可以让物体迅速冲到某个位置(捕捉位置),捕捉到位置之后会带有一定的震动 UISnapBehavior的初始化 - (instancetype)initWithItem:(id <UID ...

  7. Mac 下面 apache 不解析PHP(or PHP 版本不对)的解决办法

    Mac 升级到 EI Caption 之后发现 apache 的配置被重置了,记录下解决的步骤: 在 apache2 配置文件中修改 PHP 的扩展路径即可: vi /etc/apache2/http ...

  8. CRM(客户关系管理)

    CRM最初是由Gartner Group提出的. CRM定义:"客户关系管理(CRM),是代表增进赢利.收入和客户满意度而设计的,企业范围的商业战略." 我们可以看出,Gartne ...

  9. FMDB 数据库

    iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便.于是,就出现了一系列将SQLite API进行封装的库,例如FMDB.PlausibleDatabase.sqlitepers ...

  10. 配置struts2+spring,springmvc

    Struts2+Spring整合 一.spring负责注入,struts2负责它自己的工作.这样不是很符合spring作为ioc容器的全部功能,不推荐. 二.spring负责全部bean和struts ...