織夢DEDECMS擴展標簽怎么用

織夢DEDECMS擴展標簽怎么用

織夢dedecms擴展標簽怎么用?

織夢DEDEcms擴展標簽演示實例

推薦學習:織夢cms

我們可以看一個示例標簽:demotag.lib.php

if(!defined('DEDEINC'))? {? exit("Request?Error!");? }? function?lib_demotag(&$ctag,&$refObj)? {? global?$dsql,$envs;? ? $attlist="row|12,titlelen|24";? FillAttsDefault($ctag->CAttribute->Items,$attlist);? extract($ctag->CAttribute->Items,?EXTR_SKIP);? $revalue?=?'';? ? //------------------------------------------------------? $revalue?=?'Hello?Word!';? //------------------------------------------------------? return?$revalue;? }? ?>

我們會發現標簽起作用了,輸出了我們的內容。

織夢DEDECMS擴展標簽怎么用

$revalue?=?'Hello?Word!';? $revalue?.="? Row:".$row.";TitleLen:".$titlelen;

織夢DEDECMS擴展標簽怎么用

這樣我們可以看到,這個屬性已經被創建變量并且賦值了。

接下來我們可以再進一步去修改這個標簽。

function?lib_writerarc(&$ctag,&$refObj)

接下來我們就可以編寫查詢語句及對底層模板處理的相關函數了

$revalue?=?'';? $innertext?=?$ctag->GetInnerText();? $ctp?=?new?DedeTagParse();? $ctp->SetNameSpace('field',?'[',?']');? $sql?=?"SELECT?*?FROM?dede_archives?WHERE?writer='{$refObj->Fields['writer']}'?limit?0,?$row";? ? ? ? $dsql->Execute('me',$sql);? while($rs?=?$dsql->GetArray('me'))? {? ? $rs['title']?=?cn_substr($rs['title'],?$titlelen);? ? $ctp->LoadSource($innertext);? foreach($ctp->CTags?as?$tagid=>$ctag)?{? if(!emptyempty($rs[strtolower($ctag->GetName())]))?{? $ctp->Assign($tagid,$rs[$ctag->GetName()]);? }? }? ? $revalue?.=?$ctp->GetResult();? }

最后返回這個值return $revalue;

整個文件內容如下:

if(!defined('DEDEINC'))? {? exit("Request?Error!");? }? function?lib_writerarc(&$ctag,&$refObj)? {? global?$dsql,$envs;? ? $attlist="row|12,titlelen|24";? FillAttsDefault($ctag->CAttribute->Items,$attlist);? extract($ctag->CAttribute->Items,?EXTR_SKIP);? $revalue?=?'';? $innertext?=?$ctag->GetInnerText();? $ctp?=?new?DedeTagParse();? $ctp->SetNameSpace('field',?'[',?']');? $sql?=?"SELECT?*?FROM?dede_archives?WHERE?writer='{$refObj->Fields['writer']}'?limit?0,?$row";? $dsql->Execute('me',$sql);? while($rs?=?$dsql->GetArray('me'))? {? ? $rs['title']?=?cn_substr($rs['title'],?$titlelen);? ? $ctp->LoadSource($innertext);? foreach($ctp->CTags?as?$tagid=>$ctag)?{? if(!emptyempty($rs[strtolower($ctag->GetName())]))?{? $ctp->Assign($tagid,$rs[$ctag->GetName()]);? }? }? ? $revalue?.=?$ctp->GetResult();? }? return?$revalue;? }? ?>

通過動態瀏覽頁面進行查看調試?aid=3

{dede:writerarc?row='10'?titlelen='6'}? [field:title/]?? {/dede:writerarc}

織夢DEDECMS擴展標簽怎么用

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享