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'/}