织梦增加英文栏目名称功能方法

网站每个栏目都有不同的栏目英文名称,为了方便客户可以直接在后台栏目处添加和更换这个英文名称,我们需要给dedecms二次开发,增加栏目英文名称输入框。

织梦栏目添加英文名称

1.先给数据库中的dede_arctype表增加一个字段

后台 - 系统 - 系统设置 - SQL命令行工具

ALTER TABLE `dede_arctype` ADD `entypename` CHAR( 30 ) NOT NULL DEFAULT '';

 

2.打开 \dede\templets\catalog_add.htm 搜索

name="typename"

在它的</tr>下面加入

<tr>

<td height="26" style="padding-left:10px;"><font color='red'>英文名称:</font></td>

<td><input name="entypename" type="text" id="entypename" size="30" /></td>

</tr>

 

3.打开 \dede\templets\catalog_edit.htm 搜索

name="typename"

在它的</tr>下面加入

<tr>

<td height="26" style="padding-left:10px;"><font color='red'>英文名称:</font></td>

<td><input name="entypename" type="text" id="entypename" size="30" value="<?php echo $myrow['entypename']?>" /></td>

</tr>

 

4.打开 \dede\catalog_add.php 搜索

$in_query = "INSERT INTO `dede_arctype`(reid,topid,sortrank,typename

改成

$in_query = "INSERT INTO `dede_arctype`(reid,topid,sortrank,typename,entypename

继续搜索

VALUES('$reid','$topid','$sortrank','$typename'

改成

VALUES('$reid','$topid','$sortrank','$typename','$entypename'

5.打开 \dede\catalog_edit.php 搜索

`smalltypes`='$smalltypes'

改成

`smalltypes`='$smalltypes',`entypename`='$entypename'

6.打开 \include\taglib\channelartlist.lib.php 搜索

typedir

改成

typedir,entypename

7.打开 \include\taglib\channel.lib.php 搜索

typedir

改成

typedir,entypename

注意:这个文件有4处都需要改

8.打开 \include\taglib\type.lib.php 搜索

typedir

改成

typedir,entypename

9.\include\arc.listview.class.php 搜索

环境变量

在它下面添加

$this->Fields['entypename'] = $this->TypeLink->TypeInfos['entypename'];

 

10.\include\arc.archives.class.php 搜索

$this->Fields['typeid'] = $arr['typeid'];

在它的下面加入

$this->Fields['typeid'] = $this->TypeLink->TypeInfos['entypename'];

后台栏目效果

 织梦增加英文栏目名称功能方法

前台模板中调用标签

{dede:channelartlist}{dede:field.entypename/}{/dede:channelartlist}

{dede:channel}[field:entypename/]{/dede:channel}

{dede:type}[field:entypename/]{/dede:type}

栏目列表页/内容页 单独调用

{dede:field.entypename/}