DEDECMS實(shí)現(xiàn)“文章標(biāo)題-欄目名稱-網(wǎng)站名”

字號:


    DEDECMS實(shí)現(xiàn)“文章標(biāo)題-欄目名稱-網(wǎng)站名”實(shí)現(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來實(shí)現(xiàn),
    后來發(fā)現(xiàn)用“position”更簡便。。。(不知道有沒有人發(fā)過,現(xiàn)在分享一下,有不足之處還請高手多多指點(diǎn)哦:)
    代碼如下:
    {dede:field name=’title’/}-{dede:field name=’position’ runphp=’yes’}
    $tc=”-”; //分隔符
    $tw=$GLOBALS['cfg_list_symbol']; //調(diào)用位置分隔符
    @me=html2text(@me); //去除html標(biāo)簽
    $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>之間就可以實(shí)現(xiàn)“文章標(biāo)題-2級欄目-1級欄目-網(wǎng)站名”的形式了另外:文章頁里顯示欄目的方法
    文章頁里沒有單獨(dú)的標(biāo)簽用于顯示欄目名稱,也不能用{dede:filed name=’****’ /}這種形式,因?yàn)樵赼rchives表及其附加表中沒有欄目名稱這個(gè)字段。那么,我們?nèi)绾卧谖恼马擄@示欄目名稱呢?我們可以用有附加函數(shù)的標(biāo)簽。那么我們首先需要自己編寫一個(gè)函數(shù),用來處理標(biāo)簽里的內(nèi)容。
    function My_GetCName($typeid){
    $dsql = new DedeSql(false);
    $row = $dsql->GetOne(”select typename From xkzzz_arctype where ID=$typeid; “);
    return $row['typename'];
    }
    將這個(gè)函數(shù)加到 網(wǎng)站目錄\include\inc_functions.php 這個(gè)文件中。
    在文章頁模版中需要引用欄目標(biāo)題的地方加入這個(gè)標(biāo)簽。
    {dede:field name=’typeid’ function=’My_GetCName(@me)’/}