在使用织梦程序制作网站时,经常会在设计模版的时候用到栏目名称、栏目id 、当前栏目或者顶级栏目名称等信息,我们该怎样调用呢?
页面中调用当前栏目名称 :
{dede:field name='typename'/}
调用当前栏目的url链接:
{dede:field name='typelink'/}
上级栏目ID:
{dede:field.reid/}
当前栏目子栏目名称与链接:
{dede:channel type ='son' }<a href="[field:typelink/]">[field:typename/]</a>{/dede:channel}
其中son表示下级栏目、self则代表同级栏目、top则为顶级栏目.
如果想要在任意页面中调用顶级栏目的名称与id该怎样做
修改dedecms根目录中的include文件夹、helpers目录extend.helper.php文件
在文件的最后结束标签前添加如下代码:
if ( !function_exists( 'gettoptotype' ) ) {
function gettoptotype( $hqid, $shuxing ) {
global $dsql, $cfg_Cs;
if ( !is_array( $cfg_Cs ) ) {
require_once( DEDEDATA . "/cache/inc_catalog_base.inc" );
}
if ( !isset( $cfg_Cs[ $hqid ][ 0 ] ) || $cfg_Cs[ $hqid ][ 0 ] == 0 ) {
$newtopid = $hqid;
} else {
$newtopid = GetTopid( $cfg_Cs[ $hqid ][ 0 ] );
}
$row = $dsql->GetOne( "SELECT * FROM `dede_arctype` WHERE id=$newtopid" );
$newtypename = $row[ 'typename' ];
$toptypeurl = $newtopid;
switch ( $shuxing ) {
case "id":
return $newtopid;
break;
case "name":
return $newtypename;
break;
case "link":
return GetOneTypeUrlA( $row );
break;
}
}
}
修改完成后保存修改的dedecms文件.
在需要调用的页面中可以使用:
{dede:field.typeid function="gettoptotype(@me,name)"/}
调用顶级栏目名称
{dede:field.typeid function="gettoptotype(@me,id)"/}
顶级栏目的id
{dede:field.typeid function="gettoptotype(@me,link)"/}
当前栏目所属的一级栏目的url地址.
以上就是一些常见的在织梦页面中调用栏目信息的几种方式.