例1:
{dede:arclist titlelen='120' row='8' typeid='2'}
<li class="li[field:global.autoindex/]"><a href="[field:arcurl /]" title="[field:title/]" target="_blank" >[field:title function='cn_substr(@me,10)'/]</a></li>
{/dede:arclist}
例2:
{dede:arclist row='6' titlelen='60' orderby='pubdate' typeid='1' idlist='' channelid='1'}
[field:global name=autoindex/]
[field:global name=autoindex runphp="yes"]@me=@me+5;[/field:global]
[field:global name=autoindex runphp="yes"](@me%2==0)? @me="|":@me="";[/field:global][field:textlink/]
[field:global name=autoindex runphp="yes"](@me!=8)? @me="|":@me="";[/field:global]
意思就是當autoindex等于8時候這個標簽為空,否則為“|”。
{/dede:arclist}
在{dede:arclist/}這個標簽中大家都知道有個[field:global.autoindex/],這個變 量每生成一行就+1,那很多人希望{dede:sql/}標簽也需要加上這個功能,很多朋友提問,肯定會認為官方不會去做,其實不然,官方主要希望大家能 夠一同分享這種使用、開發(fā)的小技巧,小經(jīng)驗,其實這個東西很簡單,自己稍微摸索下就可以知道。
下面 我們就開始增加這個小擴展,我們知道在V5.3中織夢的標簽已經(jīng)分離出來,也就是類似于arclist這樣的標簽可以自己修改或者二次開發(fā),程序這些標簽 存放的目錄在/include/taglib文件夾下面,我們可以看那個文件名,就很容易知道這些標簽文件名和標簽的對應(yīng)關(guān)系。
那我們現(xiàn)在需要修改的是{dede:sql/}這個標簽,那我們就修改sql.lib.php這個文件。
打開后我們找到第34行,也就是代碼
$ctp->LoadSource($Innertext);
處,在下面加上以下一段代碼:
$GLOBALS['autoindex'] = 0;
這段代碼就是定義一個全局變量,并賦值為0,接下來我們只需要將下面代碼進行下修改:
while($row = $dsql->GetArray($thisrs))
{
$sqlCt++;
foreach($ctp->CTags as $tagid=>$ctag){
if(!empty($row[$ctag->GetName()])){ $ctp->Assign($tagid,$row[$ctag->GetName()]); }
}
$GLOBALS['autoindex']++; //每循環(huán)一次加上一個1然后解析出來
$revalue .= $ctp->GetResult();
}
這樣一來,這個[field:global.autoindex/]標簽就可以在那個{dede:sql/}中使用了,我們舉個例子:
{dede:sql sql='select * from[url=mailto:dede_archives]dede_archives'[/url]}
[field:global.autoindex/]-[field:title/]
{/dede:sql}
怎么樣?很簡單吧,其實這種擴展還有很多很多,自己可以試試哦。
你這樣寫就行了:
{dede:global name='b' runphp='yes'}
ob_start();
extract($GLOBALS, EXTR_SKIP);
//-----------------------
//下面是任意PHP代碼
print_r($this->refObj->Fields); //測試調(diào)用當前文檔類的字段數(shù)組(只支持PHP5)
//----------------------
//返回值給標簽自身
@me = ob_get_contents();
ob_clean();
{/dede:global}
當然,你想支持這種語法也行,修改一下模板類,載入模板內(nèi)容時把 替換為
@me = ob_get_contents();
ob_clean();
{/dede:global}
版權(quán)聲明: 本站資源均來自互聯(lián)網(wǎng)或會員發(fā)布,如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除!謝謝!
轉(zhuǎn)載請注明: 織夢自增變量autoindex標簽的使用方法