SiteFactory如何使用多语言
SiteFactory增加了一个多语言的功能,那么怎样做才能使站点编程一个多语言的站点呢?下面先教大家用多语言建立一个英文的栏目。
首先看到 后台管理 >> 系统设置 >> 网站配置 >> 网站参数配置 中看到:
图1
在图1中看到选择前台语言种类,把两个语言种类都钩选上,如果只够选中文的话,站点前台就和默认语言一样。勾选后如下图所示:
图2
在图2中前台默认语言的多选框中就出现了两种语言的选择,默认语言还是选择中文。
再到节点管理中添加一个栏目节点,比如添加一个英文的文章栏目节点,如下图所示:
图3
再看到栏目选项:
图4
如图4所示节点的栏目选项中会多出一个语言设定的项。因为将要把这个节点作为英文的,那么此节点的语言应该设定成英文的。
接着看到模板选项:
图5
图5中显示的三项选择的模板和以往选择模板没有任何区别,但这里要注意:所选择的模板一定要在模板解决方案下的en-US目录里存在。这里为什么在选择模板时不指定到en-US目录下的模板呢?原因此节点指定是英文的,对应此节点的模板都会在en-US目录下查找。站长也要相应的做一套英文的模板,可以把原来模板中的中文全部翻译成英文,再改改样式就行了。
点击保存,再在此节点下添加一篇文章信息,看下前台栏目页的效果吧:
图6
再看下内容页的效果:
图7
图8
图8中显示了对这篇文章的评论信息,这些英文都可以通过修改模板实现,但评论PK是动态页怎么实现英文的呢?接下来介绍如何配置动态页的如何指定英文模板。
进入到 后台管理 >> 系统设置 >> 模板标签管理 >> 动态页模板配置 中看到页面左侧如图9:
图9
由于在网站参数配置中启用了中文和英文两种语言所以这里显示出两个选项,如果没有选择任何一种语言那么这里就显示成图10所示:
图10
打开动态页模板配置页看到全部的动态页都设置好对应的模板了,那是系统默认就为中文。点击左侧的 英文(美国) [en-US] 选项,看到页面右侧如图11所示:
图11
图11里显示出的大部分动态页模板都没配置,这些需要站长自己配置。图11还可以看出动态页模板配置的路径和节点模板路径是有区别的,这里必须加上en-US目录,系统不会自动辨别访问动态页是中文的还是英文的。
选择评论/RSS/WAP选项,配置内容评论PK模板如图12:
图12
指定的评论PK页模板中需要把相关中文改成英文的。点击保存设置,再看到前台内容页,点击PK评论,进入到评论PK页面如图13所示:
图13
图13中还有部分中文,其中红色框部分是图片,教程这里暂时没有修改,蓝色框中的中文是由于资源文件中还有中文没有翻译过来。官方就会在后面发布不同语言的资源文件,当然站长也可以自己修改资源文件。系统中大部分资源文件都在App_GlobalResources目录下,以.resx为后缀,资源文件中还有以.en-us.resx为后缀的都是英文资源文件。比如DynamicPageResources.resx资源文件就是DynamicPageResources的中文资源文件,DynamicPageResources.en-us.resx资源文件就是DynamicPageResources的英文资源文件。下面介绍下系统自带的资源文件作用:
资源文件名 |
资源文件作用 |
CacheResources.resx |
缓存说明资源文件 |
ChargeResources.resx |
收费说明资源文件 |
DynamicPageResources.resx |
全局页面资源文件 |
EnumResources.resx |
枚举资源文件 |
ErrorMessage.resx |
错误信息提示资源文件 |
SuccessMessage.resx |
成功信息提示资源文件 |
GlobalResources.resx |
全局类资源文件 |
SiteMapPathResources.resx |
暂时无用 |
目前系统暂时不支持自定义语言,也就是说不支持站长自己增加语言,只能使用目前系统所提供的两种语言类型。
站长怎么修改目前翻译不全的英文资源文件呢?下面将以DynamicPageResources资源文件做介绍。
用工具分别打开DynamicPageResources.resx文件和DynamicPageResources.en-us.resx文件找到如图14和图15部分:
图14
图15
图14是显示DynamicPageResources.resx文件中的内容,图15是显示DynamicPageResources.en-us.resx中的内容。资源文件的格式与XML文件的格式很相似,都是一个一个节点组成,看到文件中有很多 节点,每个 节点都一个name和一个xml:space属性,还有一个 子节点。 节点的属性不要修改,修改后会产生错误,只需要改动 节点的值就可以了。这里 节点属性name值被称为键,相应的 子节点的值被称为值,每一个键对应一个值。在图14中看到键为‘Analytics_Counter_AllClickCount’的值为‘总访问量:’,而对应的英文资源文件中键为‘Analytics_Counter_AllClickCount’的值为‘The total number of visits:’。中英文资源的区别就是键相同值不同。修改英文资源就找到相同的键,然后修改键的值。在修改完成之后保存文件编码格式一定要为UTF-8。
多语言部分就先介绍到这,只要就是修改模板、标签和资源文件然后进行简单的配置。