最新公告
  • 欢迎您光临仿站吧 帝国CMS模板一站式建站供应平台 . 欢迎加入VIP
  • 织梦CMS获取当前栏目路径及栏目名称

    正文概述 仿站吧   2023-02-04 10:51:37  

    标签如下:

    当前:

    1. {dede:type}
    2. <a href=" [field:typelink  /] "> [field:typename/] </a>
    3. {/dede:type}

    因为{dede:field  name='arcurl'/} 这个获取当前页面路径的标签只能在内容页使用,栏目页没有效果的。所以在栏目页想获取当前栏目的路径及名称的话,就要用上面这个标签。 

    而获取网站所有栏目名称及路径列表的话,就要用到另一个标签: {dede:channel},调用方式如下:

    所有栏目

    1. <ul>
    2. {dede:channel  type='top' row='11'}
    3. <li class="navbg"><a  href='[field:typelink/]'>[field:typename/]</a></li>
    4. {/dede:channel}
    5. </ul>

    织梦dedeCMS网站栏目页获取当前栏目的顶级栏目名称的标签教程: 

    我们在使用做一些网站的时候,时常会碰到需要调用当前栏目的顶级栏目名称的时候,织梦默认{dede:field name='typename' /}  可以获取当前栏目页上一级栏目的名称,而不是当前栏目顶级栏目名称。 

    下面拓展出一个方法来实现这个效果、: 

    在include/common.func.php的最下方加入: 

    顶级栏目名

    1. function GetTopTypename($id)
    2. {
    3. global $dsql;
    4. $row = $dsql->GetOne("SELECT typename,topid FROM jiemou_arctype WHERE id=  $id");
    5. if ($row['topid'] == '0')
    6. {
    7. return  $row['typename'];
    8. }
    9. else
    10. {
    11. $row1 =  $dsql->GetOne("SELECT typename FROM jiemou_arctype WHERE id=  $row[topid]");
    12. return $row1['typename'];
    13. }
    14. }

    在文章页或者栏目列表页调用时,在所要调用栏目名称的位置加上下面这行代码即可实现。 

    1. {dede:field name='typeid' function="GetTopTypename(@me)" /}

    在文章页中用下面这个方法来调用 

    获取当前栏目的父栏目

    写成一个函数放入include/extend.func.php文件中

    1. function GetParentCategoryNameByID($CurrentID){
    2. $tsql = new DedeSql(false); 
    3. $typelink2 = '';
    4. $tsql->SetQuery("Select i.typedir,i.typename From zz5unet_arctype t left join zz5unet_arctype i on i.id=t.reid where t.id='$CurrentID'");
    5. $tsql->Execute('t');   
    6. while($row = $tsql->GetArray('t',MYSQL_ASSOC))  
    7. {
    8. $typelink2 .= $row['typename'];  
    9. }
    10. return $typelink2;
    11. }

    调用方法:

    1. {dede:field name='id' function='GetParentCategoryNameByID(@me)' /}
    仿站吧,一个优质的源码资源平台!
    仿站吧 » 织梦CMS获取当前栏目路径及栏目名称