lzy305 发表于 2012-1-16 10:14:22

分享同广告位下,多个广告显示办法!

一、首先找到模板extend目录下的ad_code.htm文件:

源代码我就不往上贴了只贴修改后的吧。

修改后代码:
{elseif $typeid==3}//只对图片显示做了修改其它没有变。
{loop $tags $k $v}
    {if count($tags)==1}
    //考虑其它页面单个图片广告的调用排版问题,这里做了个判断,根据个人需要,如果不需要,可以直接用红色代码部,省去判断。
      {if $v}{/if}

{if $v}{/if}
    {else}
         {if $v}{/if}

{if $v}{/if}
    {/if}
{/loop}

二、修改module\extend\ad.htm.php文件最下面部:

在最后大概是126行的“else{}”前加上以下代码既可,“else{}”代码不要去掉:

else if($typeid == 3){
$totime = 0;
$tags = array();
if ($areaid==0){
$ad = $db->query("SELECT * FROM {$DT_PRE}ad WHERE pid=$p AND status=3 AND fromtime$DT_TIME AND areaid=$areaidORDER BY listorder ASC,addtime ASC");
}else {
$ad = $db->query("SELECT * FROM {$DT_PRE}ad WHERE pid=$p AND status=3 AND fromtime$DT_TIME AND (areaid=$areaid or areaid=0) ORDER BY listorder ASC,addtime ASC");
}
while($t = $db->fetch_array($ad)) {
$t['title'] = $t['image_alt'];
$t['thumb'] = $t['image_src'];
$t['linkurl'] = $t['stat'] ? $MODULE['linkurl'].rewrite('redirect.php?aid='.$t['aid']) : $t['url'];
if($t['totime'] > $totime) $totime = $t['totime'];
$tags[] = $t;
}
if($tags) {
ob_start();
include template($template, $module);
$data = ob_get_contents();
ob_clean();
file_put($filename, ''.$data);
$data = 'document.write(\''.dtrim($data, true).'\');';
file_put(DT_ROOT.'/file/script/A'.$p['pid'].'.js', $data);
} else {
file_del($filename);
if($p['code']) {
   file_put(DT_ROOT.'/file/script/A'.$p['pid'].'.js', $p['code']);
} else {
   file_del(DT_ROOT.'/file/script/A'.$p['pid'].'.js');
}
}
}


根据调用广告代码,标签传参方法行不通,国为广告是已生成了静态文件,后根据不同地区,调用不同静态广告文件,所以修改广告生成代码部分。


三、以下的文字全是个人观点不代表所有人,有更好的方法可以贴上来,大家一起分享讨论。

(当然标签传参方法,也不是绝对行不通,这个方法有点麻烦,要修改很多东西,因为调用部分,调用的是静态文件,要想以传参数的方法显示广告,比如:{ad{21,
num显示数量
}},这样的话,广告还是单个文件,必须再次生成多个的广告代码文件。因为程序的架构,为了不影响程序架构,所以这有可能就要用到ajax了,至于怎么实现,大家可以想想,因为时间问题我在这里就不想写了。)

[ 本帖最后由 lzy305 于 2012-1-17 10:00 编辑 ]

duoluozhe 发表于 2012-1-16 13:11:36


技术贴我一般都顶的
http://bbs.destoon.com/static/image/smiley/default/smile.gif
,不错

千帝娱乐 发表于 2012-1-16 17:11:01


好多代码 看着就迷糊啊
http://bbs.destoon.com/static/image/smiley/default/sad.gif

chenlihong_521 发表于 2012-1-17 20:29:47


这个真的很强悍啊

西兰化蝶飞 发表于 2012-4-12 11:52:29


http://bbs.destoon.com/static/image/smiley/default/lol.gif
正在找这个,多谢楼主,我拿走啦

h161671056 发表于 2012-4-12 12:55:43


这个真的很强悍啊
http://bbs.destoon.com/static/image/smiley/default/smile.gif

http://bbs.destoon.com/static/image/smiley/default/smile.gif

http://bbs.destoon.com/static/image/smiley/default/smile.gif

atatat 发表于 2012-6-10 12:50:23


做个记号,免得以后找不着了

七月 发表于 2012-6-10 13:00:35


支持。。。。。。。。。。

jerrymsj 发表于 2012-6-10 15:16:29


可以在公共方法中加个函数

destoon教程,destoon二次开发,destoon模板修改
destoon二次开发之家扣扣1797587524交流群:84902806欢迎大家交流destoon开发运营 技术

88tyq 发表于 2012-8-17 16:46:56


正在找这个,多谢楼主,我拿走啦
页: [1] 2 3
查看完整版本: 分享同广告位下,多个广告显示办法!