艾利百科--临沂网站制作,临沂网页设计,临沂微信公众号,兼容并蓄,开放共赢!

艾利百科

当前位置: 主页 > 网站制作 > 织梦系统 >

后台栏目管理添加英文名称的方法

时间:2018-08-09 11:21来源:未知 作者:kunbeatable 点击:
很多时候顶级栏目会添加上英文名称。这个功能如何实现?今天临沂网站制作专家艾利百科为您详细解答。 这里需要修改一下四个文件: dede/catalog_add.php dede/catalog_edit.php dede/templets/catalog_add.htm dede/templets/catalog_edit.htm dede根据网站后
很多时候顶级栏目会添加上英文名称。这个功能如何实现?今天临沂网站制作专家艾利百科为您详细解答。
这里需要根据需要修改以下几个文件:

//内容页,列表页调用单独使用
dede/catalog_add.php 
dede/catalog_edit.php
dede/templets/catalog_add.htm
dede/templets/catalog_edit.htm

//嵌套使用
include/taglib/channel.lib.php

//文章页单独使用
include/arc.archives.class.php 
include/taglib/type.lib.php 

dede根据网站后台登录地址的更改而相应的更改。

首先、添加新的字段:typenameen;这是所有操作的第一步。
后台执行SQL(前缀默认为dede_ 具体前缀根据自己网站修改):
alter table `dede_arctype` add `typenameen` char(100) NOT NULL default '';

方式一:内容页、列表页单独使用。

1、找到文件dede/catalog_add.php,找到第65行,在typename后面添加上typenameen,第66行,~‘typename’~,后面添加~'typenameen'~。

2、找到文件dede/catalog_edit.php,找到第41行,在typename='$typename'后面添加 typenameen='$typenameen',;

3、找到文件dede/templets/catalog_add.htm,找到第252行,在栏目名称整个<tr></tr>后面添加:
<tr>
   <td class='bline' height="26" style="padding-left:10px;"><font color='red'>英文名称:</font></td>
   <td class='bline'><input name="typenameen" type="text" id="typenameen" size="30" class="iptxt" /></td>
</tr>

4、找到文件dede/templets/catalog_edit.htm,找到第219行,在栏目整个<tr></tr>后面添加:
<tr>
     <td class='bline' height="26" style="padding-left:10px;">英文名称:</td>
     <td class='bline'><input name="typenameen" type="text" id="typenameen" size="30" value="<?php echo $myrow['typenameen']?>" class="iptxt" />
      (栏目模板里用{dede:field.typenameen /}调用)</td>
</tr>

调用:{dede:field.typenameen /}

方式二:嵌套使用。
结合以上有步骤,再修改include/taglib/channel.lib.php文件。
将:
if($type=='top')
{
    $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
      From `dede_arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit 0, $line ";
}
else if($type=='son')
{
    if($typeid==0) return '';
    $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
      From `dede_arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
else if($type=='self')
{
    if($reid==0) return '';
    $sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
        FROM `dede_arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}

替换为:
if($type=='top')
{
    $sql = "SELECT id,typename,typenameen,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
      From `dede_arctype` WHERE reid=0 And ishidden<>1 order by sortrank asc limit 0, $line ";
}
else if($type=='son')
{
    if($typeid==0) return '';
    $sql = "SELECT id,typename,typenameen,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
      From `dede_arctype` WHERE reid='$typeid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
else if($type=='self')
{
    if($reid==0) return '';
    $sql = "SELECT id,typename,typenameen,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
        FROM `dede_arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}

调用:{dede:channel type='top'}[field:typenameen/]{/dede:channel}

方法三:文章页使用。
修改include/arc.archives.class.php文件:

查找
if($this->ChannelUnit->ChannelInfos['issystem']!=-1)  //(大约74行)

$query = "SELECT arc.*,tp.reid,tp.typedir,ch.addtable
FROM `dede_archives` arc
LEFT JOIN dede_arctype tp on tp.id=arc.typeid
LEFT JOIN dede_channeltype as ch on arc.channel = ch.id
WHERE arc.id='$aid' ";
$this->Fields = $this->dsql->GetOne($query);
替换为
$query = "SELECT arc.*,tp.reid,tp.typedir,tp.typenameen,ch.addtable
FROM `dede_archives` arc
LEFT JOIN dede_arctype tp on tp.id=arc.typeid
LEFT JOIN dede_channeltype as ch on arc.channel = ch.id
WHERE arc.id='$aid' ";
$this->Fields = $this->dsql->GetOne($query);

调用:{dede:field.typenameen/}

方法四:{dede:type typeid=''}调用:
修改include/taglib/type.lib.php文件:
$row = $dsql->GetOne("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
                          FROM `dede_arctype` WHERE id='$typeid' ");
修改为
$row = $dsql->GetOne("SELECT id,typename,typenameen,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
                          FROM `dede_arctype` WHERE id='$typeid' ");

调用:{dede:type typeid='6'}[field:typename_en/]{/dede:type}


顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片