首页 » 工作 » 正文

双语导航:让 DedeCMS 导航菜单同时显示英文栏目名称 [手动版]

发布者:站点默认
2012/06/28 浏览数(4,119) 分类:工作 双语导航:让 DedeCMS 导航菜单同时显示英文栏目名称 [手动版]已关闭评论

说明:

让 DedeCMS 的导航菜单也可以显示英文名称。

此文的方法需要手动将中文翻译为E文后再创建栏目,栏目名称要创建为“新闻中心/News”的格式。

这种方法翻译准确,但是会出现“当前位置:首页 > 新闻中心/News > 列表”的情况。

另有一种自动版的文档不会出现此问题,但翻译可能会不准确(字典够的话也可以准确,^_^)。

自动翻译版 请转至《双语导航:让 DedeCMS 导航菜单同时显示英文栏目名称 [自动版]》。

效果:

导航菜单中同时显示英文名称

DedeCMS 导航菜单中同时显示英文名称

DedeCMS 导航菜单中同时显示英文名称 示例二

DedeCMS 导航菜单中同时显示英文名称 示例二

用法:

{dede:channel type='top'
	currentstyle="<li class='hover'><a href='~typelink~' ~rel~>~typename~</a></li>"}
	<li>
		<a href="[field:typeurl/]" [field:rel/]>[field:typename function="cnName(@me)"/]
		<div>[field:typename function="enName(@me)"/]</div>
	</a></li>
{/dede:channel}

操作:

第一步:

打开“/include/extend.func.php”文件,添加以下代码:

/**
 * 获取 DedeCMS 中栏目的中文名称和英文名称
 * 注意:创建栏目时请使用格式“新闻中心/News”
 */
function mutiTypeName($typename = '', $index = 0){
    if (FALSE === strpos($typename,'/')) return $typename;
    $typename = explode("/",$typename);
    return $typename[0];
}
function cnName($typename = '', $index = 0){
    return mutiTypeName($typename, $index);
}
function enName($typename = '', $index = 1){
    return mutiTypeName($typename, $index);
}

第二步:

请参照“用法”部分。

第三步:

完成了,去看效果吧,^_^

<完>

点击返回顶部
  1. 留言
  2. 联系方式