不同的商品类别显示不同的广告

2016-07-07 15:02 来源:www.chinab4c.com 作者:ecshop专家

二 增加一个根据不同产品分类页显示广告的库文件
  1. <?php
  2. //首先取得当前分类的ID
  3. $cat_id = (isset($_REQUEST['id'])) ? intval($_REQUEST['id']) : 0;
  4. //付值给函数,调用方式为商品分类ID
  5. $bdata = get_article_new(array($cat_id),'goods_cat',0,false,true);
  6. $this->assign( 'banner', $bdata );
  7. ?>
  8. <!-- {if $banner} -->
  9. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  10. <style type="text/css">
  11. <!--
  12. .banner_cat{width: 790px; height:200px; text-align: left;}
  13. -->
  14. </style>
  15. <div class="banner_cat">
  16. <!-- {foreach from=$banner item=ba key=index} -->
  17. <!-- {if $index eq 0} -->
  18. <a href="{$ba.link}" target="_blank"><img src="{$ba.file_url}" alt="{$ba.title|escape:html}" /></a>
  19. <!-- {/if} -->
  20. <!-- {/foreach} -->
  21. </div>
  22. <!-- {/if} -->
复制代码

回答:
现在请看上面的库代码,我们来分析一下.
(1)代码第3行
  1. $cat_id = (isset($_REQUEST['id'])) ? intval($_REQUEST['id']) : 0;
复制代码

(2)代码第5行
  1. $bdata = get_article_new(array($cat_id),'goods_cat',0,false,true);
复制代码

(3)代码17行
  1. {if $index eq 0}
复制代码

这里为什么要加呢?请大家看清楚我的那个裤子分类在下面包括了休闲裤和牛仔裤.如果当用户点击了休闲裤当然就显示休闲裤下面的广告,点击了牛仔裤就显示牛仔裤的广告.但裤子这一个分类包括了两个子分类,当用户点击了裤子后显示什么呢??我为了途个方便所以加了这一行,当用户点击了裤子之后就显示第一个广告(也就是休闲裤).

当然你也可以直接将裤子这一个分类的广告做成广告轮换,因为它包括了两个广告,也可以做成不显示或增加一个默认显示的广告.这个都是很随意的.

最后在category.dwt模板的适当位置调用本库!好了可以看看效果啦!!!

第三步,在category.dwt文件中,插入库文件的引用(即文件中间插入蓝色文字的一行)。
  1. <!--组合搜索 结束-->
  2. <!-- TemplateBeginEditable name="主区域中间" -->
  3. <!-- #BeginLibraryItem "/library/aaa.lbi" --><!-- #EndLibraryItem -->
  4. <!-- #BeginLibraryItem "/library/goods_list.lbi" -->
  5. <div class="goodList">
复制代码



我的测试情况,出现下面的错误提示:



还请原文章的作者和其它朋友一起帮忙

自己研究了三天,终于解决了,操作过程中用到的二个文件(.lbi和.dwt文件),供同我碰到一样问题的朋友参考。(我用的是orange模板,模板里内容有修改,只供参考用)



测试网址http://www.e-em.com/category.php?id=2