找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 143|回复: 0

[cms教程] dedecms织梦网站栏目增加英文名称并高亮显示的方法

[复制链接]

该用户从未签到

发表于 2019-5-19 15:01:21 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
有时候因为网站功能需求,我们需要为织梦程序的栏目添加英文名称,这里有一个栏目添加英文名称的方法,下面站长和大家分享一下。
        因为客户需要做这样一个需要中英转换的栏目,在网上找了很多方法,但都不适用,终于被我找到了个能用的,也很简单,只需修改几个地方
        就完全可以在后台添加了!
         
        一、方法步骤:
        涉及到文件如下(注意备份):
         
        dede/catalog_add.php 
         
        dede/catalog_edit.php
         
        dede/templets/catalog_add.htm
         
        dede/templets/catalog_edit.htm
         
         
        二、新加字段 typenameen
         
        后台执行SQL(前缀默认为dede_ 具体前缀根据自己网站修改):
         
        alter table `dede_arctype` add `typenameen` char(100) NOT NULL default '';
         
        dedecms织梦网站栏目增加英文名称并高亮显示的方法
         
         
        二、打开dede/catalog_add.php 查找:v5.7在第65行。
         
        在65行typename后面增加【typenameen,】,在66行'~typename~'增加【'~typenameen~',】。
         
        dedecms织梦网站栏目增加英文名称并高亮显示的方法
         
         
        二、打开dede/catalog_edit.php 查找:v5.7在第41行。
         
        在typename='$typename',后面增加一行 【typenameen='$typenameen',】。
         
        dedecms织梦网站栏目增加英文名称并高亮显示的方法
         
        二、打开dede/templets/catalog_add.htm 查找:v5.7在252行。
         
        图
         
         
         
        在252行换行增加:
         
                  [tr]
         
                    [td]
[color=red,英文名称:
[/td]
         
                    [td][i,[/td]
         
                  [/tr]
         
        dedecms织梦网站栏目增加英文名称并高亮显示的方法
         
         
         
        二、打开dede/templets/catalog_edit.htm 查找:v5.7在219行。
         
        图
         
         
         
        在219行换行增加:
         
          [tr]
         
                    [td]英文名称:[/td]
         
                    [td][i," class="iptxt" />
         
                      (栏目模板里用{dede:field.typenameen /}调用)[/td]
         
                  [/tr]
         
        dedecms织梦网站栏目增加英文名称并高亮显示的方法
         
         
         
         
        设置到此就完成了!英文调用的标签是:{dede:field.typenameen /}
         
        再过来你的后台看看效果如下:
         
        dedecms织梦网站栏目增加英文名称并高亮显示的方法
         
         
        想要在channel 中使用,例如:
         
        {dede:channel type='son' row='10' typeid='1'}
                            [*,[url=[field:typeurl/],[field:typename/][field:typenameng/][/url]
         {/dede:channel}
         
        则还要修改一个文件,找到include\taglib\channel.lib.php
         
        第一处:
        if($type=='top')
            {
                $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                  From `#分隔符@__arctype` WHERE reid=0 And ishidden1 order by sortrank asc limit 0] $line ";
            }
            else if($type=='son')
            {
                if($typeid==0) return '';
                $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                  From `#分隔符@__arctype` WHERE reid='$typeid' And ishidden1 order by sortrank asc limit 0] $line ";
            }
            else if($type=='self')
            {
                if($reid==0) return '';
                $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                    FROM `#分隔符@__arctype` WHERE reid='$reid' And ishidden1 order by sortrank asc limit 0] $line ";
            }
         
        第二处:
         
        //如果用子栏目模式,当没有子栏目时显示同级栏目
            if($type=='son' && $reid!=0 && $totalRow==0)
            {
                $sql = "SELECT id,typename,typenameng,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl]sitepath
                    FROM `#分隔符@__arctype` WHERE reid='$reid' And ishidden1 order by sortrank asc limit 0] $line ";
                $dsql->SetQuery($sql);
              $dsql->Execute();
            } 增加查询字段就可以在channel中使用了,还有type,channelartlist等标签页是在相应的lib类中添加查询的字段,在此限于篇幅就不错详细的叙述了。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-11-29 06:45

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表