DEDECMS實現(xiàn)“文章標題-欄目名稱-網(wǎng)站名”實現(xiàn)方法。
第一種:
在/include/inc_archives_view.php文件中。
查找tp.typedir,然后替換成tp.typedir,tp.typename。
最后在文章模板中用{dede:field name=’typename’/}調(diào)出來。這樣就OK啦。。
第二種:
就“{dede:field name=’title’/}-{dede:field name=’typename’/}-{dede:global name=’cfg_webname’/}”這樣就可以顯示啦。
第三種:
本來想修改inc_archives_view.php來實現(xiàn),
后來發(fā)現(xiàn)用“position”更簡便。。。(不知道有沒有人發(fā)過,現(xiàn)在分享一下,有不足之處還請高手多多指點哦:)
代碼如下:
{dede:field name=’title’/}-{dede:field name=’position’ runphp=’yes’}
$tc=”-”; //分隔符
$tw=$GLOBALS['cfg_list_symbol']; //調(diào)用位置分隔符
@me=html2text(@me); //去除html標簽
$tf=split($tw,@me); //分解成數(shù)組
for($ta=(count($tf)-2);$ta>=1;$ta–){ //循環(huán)賦值給$tk
$tk.=trim($tf[$ta]).$tc;
}
$tk=substr($tk,0,-1);
@me=$tk; //賦值給@me
{/dede:field}-{dede:global name=’cfg_webname’/}將以上代碼放在<title></title>之間就可以實現(xiàn)“文章標題-2級欄目-1級欄目-網(wǎng)站名”的形式了另外:文章頁里顯示欄目的方法
文章頁里沒有單獨的標簽用于顯示欄目名稱,也不能用{dede:filed name=’****’ /}這種形式,因為在archives表及其附加表中沒有欄目名稱這個字段。那么,我們?nèi)绾卧谖恼马擄@示欄目名稱呢?我們可以用有附加函數(shù)的標簽。那么我們首先需要自己編寫一個函數(shù),用來處理標簽里的內(nèi)容。
function My_GetCName($typeid){
$dsql = new DedeSql(false);
$row = $dsql->GetOne(”select typename From xkzzz_arctype where ID=$typeid; “);
return $row['typename'];
}
將這個函數(shù)加到 網(wǎng)站目錄\include\inc_functions.php 這個文件中。
在文章頁模版中需要引用欄目標題的地方加入這個標簽。
{dede:field name=’typeid’ function=’My_GetCName(@me)’/}