如何实现网站的多语言版本

多语言网站,顾名思义就是能够以多种语言(而不是单种语言)为用户提供信息服务,让使用不同语言的用户都能够从同个网站获得内容相同的信息。

多语言网站实现方案

1,静态:就是为每种语言分别准备一套页面文件,要么通过文件后缀名来区分不同语言,要么通过子目录来区分不同语言。

例如对于首页文件index_en.htm提供英语界面,index_gb.htm提供简体中文界面,index_big.htm提供繁体中文界面,或者是en/index.htm提供英语界面,gb/index.htm提供简体中文界面,big/index.htm提供繁体中文界面,一旦用户选择了需要的语言后,自动跳转到相应的页面,首页以下其他链接也是按照同样方式处理。从维护的角度来看,通过子目录比通过文件后缀名来区分不同语言版本显得要简单明了。

2,动态:站点内所有页面文件都是动态页面文件(PHP,ASP等)而不是静态页面文件,在需要输出语言文字的地方统一采用语言变量来表示,这些语言变量可以根据用户选择不同的语言赋予不同的值,从而能够实现在不同的语言环境下输出不同的文字。

例如:语言变量ln_name,当用户选择的语言是英语时赋值为“Name”,当用户选择的语言是简体中文时赋值为“姓名”,这样就可以适应不同语言时的输出。

采用静态方式的优点是页面直接输出到客户端,不需要在服务器上运行,占用服务器的资源比较少,系统能够支持的并发连接数较多,缺点是要为每种语言制作一套页面文件,很多内容即使是和语言无关的也要分不同语言来存储,因此占用的存储空间较多。

采用动态方式和静态方式的优缺点正好相反,它的优点是动态页面文件只有一套,不同语言的文字使用语言变量来存储,和语言无关的内容只存储一份,占用的存储空间较少,并且扩展新语言比较容易,缺点需要在服务器上运行,然后把结果输入到客户端,占用服务器的资源比较多,系统能够支持的并发连接数较少。

动态数据存贮涉及的一些技术问题

由于现在网站上动态应用日益增多,相当多的网站还会使用文件或者数据库来存储应用信息,因此如果文件或者数据库中存储的内容与语言相关时,还需要特别注意。对于存储在数据库中信息,可以采取以下几种方式支持多语言:

1,在数据库级别支持多语言:为每种语言建立独立的数据库,不同语言的用户操作不同的数据库。

2,在表级别支持多语言:为每种语言建立独立的表,不同语言的用户操作不同的表,但是它们在同一个数据库中。

3,在字段级别支持多语言:在同一个表中为每种语言建立独立的字段,不同语言的用户操作不同的字段,它们在同一个表中。

由于数据库中有大量的信息(如标志,编码,数字等)是用于内部处理使用的,与语言无关的,因此在数据库级别支持多语言会导致空间的极大浪费,在字段级别支持多语言最大的问题是一旦需要支持新的语言,由于需要修改表结构,维护起来非常麻烦,可扩展性不好。

相比之下,在表级别支持多语言比较好,因为并不是所有的表都需要支持多语言,对于与语言无关的表,不同语言的用户共用一套,那些和语言相关的表根据支持语言的种类来建立,不同语言的用户存取访问不同的表格。这样使得维护简单,节省了存储空间,即使是扩展起来也比较方便,只要把需要支持多语言的表,多建立一套即可。

还需要注意的问题是:有些表中某些字段是不同语言版本的表共享的(例如库存量),由于各种语言的表之间的相对独立性,使得数据共享有些困难。解决的方法有两个:

1,不同语言的表的共享字段同步:也就是说,只要修改了其中一个表的共享字段,其他语言表中该字段也作相应改变,实际上当不同语言的用户同时访问时处理还是比较麻烦的,并且扩充新语言时修改工作比较大。

2,增加一个新的表:把所有语言共享的字段(例如货物编号,产地编码等)全部放在这个表,支持多语言的表只存放与各种语言相关的字段。不同语言的用户在使用数据库时,需要操作两个数据表。

比较而言,第二种方法比较简单,并且效率比较高,维护也比较方便。

应用字符集的选择

一个定位于不同语言国家的企业网站势必需要提供多种语言版本的产品和销售信息来满足其世界各地使用不同语言的客户和合作伙伴,其中包括法语、德语、意大利语、葡萄牙语、西班牙语、阿拉伯语等等。但有一个问题却极易被网站设计者们所忽略。这就是网站的字符集设置问题。

一般我们使用的是简体中文(GB2312)字符集,而对多语言网站来说,中文字符集却可能会使你辛辛苦苦的努力功亏一篑。原因很简单:就是这个毫不起眼的小小字符集在作怪。

计算机应用领域中存在着几十种互不相同的字符集,而不同语言客户在浏览不同语言网页时,往往会因为相互间所使用字符集无法兼容而出现乱码情况。我们在浏览国外一些网站时,往往也会出现为了能正常地看到网站上的信息而不得不在各种字符集之间来回切换的情况。

试想一下:如果一个网站提供了中,英,法,德等多种语言版本的内容,内容全之又全,设计美仑美奂。我们在中文编码环境下浏览这些非中文版本的页面觉得非常完美,现在一个法国客户对你的产品发生了兴趣,当他进到法语版面一看—乱码多多,甚至可能整个版面都一塌里糊涂。你的网站再下大工夫又有什么意义呢?

所以对提供了多语言版本的网站来说,Unicode字符集应该是最理想的选择。它是一种双字节编码机制的字符集,不管是东方文字还是西方文字,在Unicode中一律用两个字节来表示,因而至少可以定义65536个不同的字符,几乎可以涵盖世界上目前所有通用的语言的每一种字符。 所以在设计和开发多语言网站时,一定要注意先把非中文页面的字符集定义为“utf-8”格式。

这一步非常重要,原因在于若等页面做好之后再更改字符集设置,可说是一件非常非常吃力不讨好的工作,有时候甚至可能需要从头再来,重新输入网站的文字内容。

HTML中的META标签:

META HTTP-EQUIV=“Content-Type” CONTENT=“text/html; CHARSET=字符集"

不写,根据浏览器默认字符集显示

charset=gb2312 简体中文

charset=big5 繁体中文

charset=EUC_KR 韩语

charset=Shift_JIS 或 EUC_JP 日语

charset= KOI8-R / Windows-1251 俄语

charset=iso-8859-1 西欧语系(荷兰语,英语,法语,德语,意大利语,挪威语,葡萄牙语,瑞士语.等十八种语言)

charset=iso-8859-2 中欧语系

charset=iso-8859-5 斯拉夫语系(保加利亚语,Byelorussian语,马其顿语,俄语,塞尔维亚语,乌克兰语等)

charset=uft-8 unicode多语言

ASP与脚本引擎页码的概念

由于我们传统使用的内码像Big5,GB2312与unicode并不是一一对应,故两者之间的转换要靠codepage(页码)来实现

%@ Language=VBScript CodePage=xxx%

不写,根据服务器端解析引擎默认代码页自动解析并返回浏览器。

如果制作的网页脚本与WEB服务端的默认代码页不同,则必须指明代码页:

codepage=936 简体中文GBK

codepage=950 繁体中文BIG5

codepage=437 美国/加拿大英语

codepage=932 日文

codepage=949 韩文

codepage=866 俄文

codepage=65001 unicode UFT-8

建议采用utf8的静态和动态文档。即:

%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%

meta http-equiv="Content-Type" content="text/html; charset=utf-8" /

优秀的网站页面设计说起来很简单,可具体怎么做?

额……理论知识这个东西,不懂的人的确是看不懂呀……我这说了估计还是理论知识,建议这种理论知识不要强迫自己理解, 用来学一学作为后期对别人给自己做的网站的检查可能更好一点~

首先应该有一个设计方案,把想放在网站页面设计上的东西做一个规划,比如说网站的整体风格,栏目和项目的具体样式有一个初步的规划,定下了初稿之后,才能更好的进行下一步。这一步呢就需要你来好好思考一下了!

如果是跨国公司或者韩国本土公司,需要做韩语网站的话,还需要把相对应的项目翻译一下,这样才能让网民有更高的阅读体验。并且这种情况建议使用三种语言,中文+该国语言+英语。

接下来就是具体的分步骤的网站页面设计了。一般来说分三个部分,首页,栏目页,内容页。那么大部分公司网站如何制作的呢?很大一步部分的公司网站都会选择把公司的logo放在左上角或者右上角等比较醒目的位置上。

顶部做一个导航栏,假如网页的整体背景使用的是公司图片的话,最好建议导航栏设计的与众不同一点,但是不要遮挡别的信息。栏目页,和内容页就比较简单,顶部底部不变,中间按照自己的需求改一下就ok了。

除了页面布局的规划、色彩的搭配、字体的选取需合理得当,还应合理利用标签、静态网页还是动态网页的选择上有一个笃定的规划。标签建议不要太少或太长,合理地利用网页标题、描述、关键字才能在同行业中具有竞争力。网页选择上建议选择静态网页,静态网页更容易被搜索引擎检索。除此之外,网页文件名的设置也格外重要,忌设置一些复杂、深奥的文件名。

总而言之,优秀的网站页面设计需要明确设计思路、有条不紊的栏目设置、熟悉制作流程、重视链接的插入、标签的设置、文件名的命名以及独立性、关联性的考量。只要遵循围绕主题进行的设计理念,才可以拥有一个适合自己公司,对公司有帮助的网站~

以上就是设计小能手redtrans_cs小姐姐的意见了~以下提供点我做的某韩国公司网站的一小部分参考~

请英文;日语;韩语;台语高手帮忙,高分酬谢:)

繁体中文:

"电脑维修,

数据恢复,

网站建设,

IT工程,

企业IT外包,

24小时服务,

电话:88888888"

英语:

"Computer repair,

data recovery,

web site construction,

IT engineering,

IT outsourcing,

24-hour service,

Tel: 88888888"

日语:

"コンピュータの修理、

データ复旧、

ウェブサイトの建设、

エンジニアリング、

アウトソーシングすることは、

24时间のサービスは、

电话番号: 88888888 "

韩语(朝鲜语):

"컴퓨터를 복구,

데이터 복구,

웹 사이트를 건설,

엔지니어링,

그것 아웃소싱,

24 - 시간 서비스,

전화 : 88888888"

本人并非高手,你用翻译软件也能做到!

给你推荐一个在线翻译,以后像这样的简短的内容,你可以直接用它翻译就行。