利用preg_replace靈活調(diào)用織夢(mèng)DedeCMS文檔標(biāo)題
運(yùn)用preg_replace+正則,靈活調(diào)用DedeCMS文檔標(biāo)題,比如替換標(biāo)題title里的內(nèi)容,刪除隱藏title里的內(nèi)容等,其實(shí)都是利用preg_replace函數(shù)搜索替換的功能。
比如,網(wǎng)站里的DedeCMS視頻教程欄目里,很多文檔標(biāo)題都是2012版開頭的:
織夢(mèng)吧的DedeCMS視頻教程欄目
在調(diào)用的時(shí)候,如果不想顯示“2012版”這幾個(gè)字,那么就可以使用preg_replace函數(shù)替換功能,來把“2012版”替換為空。先來看看preg_replace函數(shù)的用法:
preg_replace( pattern, eplacement, subject [, int limit] )
用法說明:在 subject 中搜索 pattern 模式的匹配項(xiàng)并替換為 replacement。如果指定了 limit,則僅替換 limit 個(gè)匹配,如果省略 limit 或者其值為 -1,則所有的匹配項(xiàng)都會(huì)被替換。
那么這里subject為title,dedecms標(biāo)簽里使用@me代替,從subject 查找“2012版”,先寫好pattern為“/2012版/”,然后eplacement設(shè)置為空,即為:
[field:title function="preg_replace('/2012版/','',@me)"/]
如此:
{dede:arclist typeid = ' ' titlelen=42 row='16'}
<A href="[field:arcurl/]">[field:title function="preg_replace('/2012版/','',@me)"/]</A>
{/dede:arclist}
這樣,調(diào)用的title就不再含有“2012版”了,另外,也可以把“2012版”替換為“2013版”,修改eplacement相應(yīng)值即可。
其他DedeCMS字段也可以使用此函數(shù),當(dāng)然大家也可以嘗試把更多php函數(shù),帶到dedecms標(biāo)簽里來,讓你的DedeCMS更加強(qiáng)大。