dedecms广告功能和传统的cms同样,和ecshop广告功能的原理也是差很少的。都是先创建对应的广告位置,而后在对应的广告位置下创建广告.不一样的是ecshop能够灵活的在后台设置广告的位置以及数量。而dedecms须要在dedecms模板中动态的插入.javascript
首先咱们看下dedecms数据库是如何存储dedecms的广告位置的。咱们能够研究dedecms数据库dede_myadtype表.这个是存储广告分类的,dede_myad这个表就是用来存储dedecms的广告位置的。php
首先咱们看dedecms后台的广告位置管理。html
后台=>模块=>广告管理.java
在这里咱们先增长广告分类,也就是所谓的广告位置,首先在列表里面循环的显示出全部的广告分类,也就是广告位置.sql
$dsql->SetQuery("Select * From dede_myadtype");
$dsql->Execute();
$k=0;
while($row = $dsql->GetObject())数据库
其次,咱们看到广告位置里面。能够插入广告,惟一条件是广告的名称不能重复,由于广告名称是惟一在dedecms模板中调用广告的标记.ide
$row = $dsql->GetOne("SELECT typeid FROM dede_myad WHERE typeid='$typeid' AND tagname LIKE '$tagname'");
if(is_array($row))
{
ShowMsg("在相同栏目下已经存在同名的标记!","-1");
exit();
}orm
而后到了后台,咱们能够选择插入该广告在数据库中。htm
$query = "
INSERT INTO dede_myad(clsid,typeid,tagname,adname,timeset,starttime,endtime,normbody,expbody)
VALUES('$clsid','$typeid','$tagname','$adname','$timeset','$starttime','$endtime','$normbody','$expbody');
";
$dsql->ExecuteNoneQuery($query);ip
这样就完成了整个的dedecms广告管理的操做.
dedecms广告的调用有两种方式,一种是直接获取JS.以这个方式调用
<!--StartFragment--><script src='/cms/x/plus/ad_js.php?aid=3' language='javascript'></script>
在模板中也能够直接用模板标签,name指的就是广告的惟一标记的名字.
{dede:myad name='indexLeftBanner'/}