• 网站认证
  • 教程:6,666|
  • 话题:6,325|
  • 评论:54|
  • 会员:243|
  • 注册
  • 查看作者
  • DedeCMS 文章实现标题+栏目+站点名称的方法

    在/include/inc_archives_view.php文件中。 

    查找tp.typedir,然后替换成tp.typedir,tp.typename。 

    最后在文章模板中用{dede:field name=’typename’/}调出来。这样就OK啦。。 

    第二种: 

    就“{dede:field name=’title’/}-{dede:field name=’typename’/}-{dede:global name=’cfg_webname’/}”这样就可以显示啦。 

    第三种: 

    本来想修改inc_archives_view.php来实现, 

    后来发现用“position”更简便(不知道有没有人发过,现在分享一下,有不足之处还请高手多多指点哦:) 

    代码如下: 

    {dede:field name=’title’/}-{dede:field name=’position’ runphp=’yes’} 

    $tc=”-”; //分隔符 

    $tw=$GLOBALS['cfg_list_symbol']; //调用位置分隔符 

    @me=html2text(@me); //去除html标签 

    $tf=split($tw,@me); //分解成数组 

    for($ta=(count($tf)-2);$ta>=1;$ta–){ //循环赋值给$tk 

    $tk.=trim($tf[$ta]).$tc; 

    $tk=substr($tk,0,-1); 

    @me=$tk; //赋值给@me 

    {/dede:field}-{dede:global name=’cfg_webname’/}将以上代码放在<title></title>之间就可以实现“文章标题-2级栏目-1级栏目-网站名”的形式了另外:文章页里显示栏目的方法 

    文章页里没有单独的标签用于显示栏目名称,也不能用{dede:filed name=’****’ /}这种形式,因为在archives表及其附加表中没有栏目名称这个字段。那么,我们如何在文章页显示栏目名称呢?我们可以用有附加函数的标签。那么我们首先需要自己编写一个函数,用来处理标签里的内容。 

    function My_GetCName($typeid){ 

    $dsql = new DedeSql(false); 

    $row = $dsql->GetOne(”select typename From xkzzz_arctype where ID=$typeid; “); 

    return $row['typename']; 

    将这个函数加到 网站目录includeinc_functions.php 这个文件中。 

    在文章页模版中需要引用栏目标题的地方加入这个标签。 

    {dede:field name=’typeid’ function=’My_GetCName(@me)’/}

  • 0
  • 0
  • 0
  • 68
  • 请登录之后再进行评论

    登录
  • 做任务
  • 实时动态
  • 偏好设置
  • 单栏布局 侧栏位置: