多语言网站设计需要注意的问题

阅读  ·  发布日期 2020-06-29 17:05  ·  admin

在设计和开发一个多语言版本的网站前,需要考虑下列因素: 西宁网站建设网站设计西宁网站制作★网页设计-599元全包;企业网络推广☆西宁网站优化seo☆关键词排名☆百度快照-2200元全年展示;做网站优化排名-西宁网站建设公司☎13172194676(注:选好网站模板,请联系客服,百度云盘下载提取网站模板)
1- 应用字符集的选择

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

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

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

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

所以对提供了多语言版本的网站来说,Unicode字符集应该是最理想的选择。它是一种双字节编码机制的字符集,不管是东方文字还是西方文字,在Unicode中一律用两个字节来表示,因而至少可以定义65536个不同的字符,几乎可以涵盖世界上目前所有通用的语言的每一种字符。 所以在设计和开发多语言网站时,一定要注意先把非中文页面的字符集定义为“utf-8”格式,即:这一步非常重要,原因在于若等页面做好之后再更改字符集设置,可说是一件非常非常吃力不讨好的工作,有时候甚至可能需要从头再来,重新输入网站的文字内容。 
2- 语言书写习惯&导航结构 
有些国家的语言书写习惯是从右到左,例如许多中东地区所使用的阿拉伯语,波斯语和希伯来语等等。如果你的市场目标是这些语言的国家,那么在网站设计中就需要考虑这些特殊的语言书写习惯。而且如果你在网站导航结构设计中使用的是一个竖直导航栏,这时候就应该把它放在右边,而不是象我们习惯的那样放在左边了。

3- 数据库驱动型网站 
对一个数据库驱动型的网站,尤其是当客户可以留言并向数据库添加信息时,则应当考虑如何从技术上实现对不同语言数据信息的收集和检索。

4- 搜索引擎&市场推广
对多语言网站来说,搜索引擎优化(SEO)确实是个大问题。而且还需要注意的是:并非所有的主流搜索引擎都会支持多语言网页,这也就是为什么一个多语言的网站不一定被所有的主流搜索引擎收录。当然Google不存在这样的问题。

其次需要考虑,不同语言所面向的不同市场目标国家和客户群体中习惯使用什么搜索引擎或门户网站进行搜索? 就象我们习惯用土生土长的百度搜索一样,在一些语言国家使用最为广泛的可能仍然是其本国的搜索引擎或门户网站。

最好的办法是找一个专业的网站推广公司来帮助进行市场调研。调研内容主要应包括:目标市场国家或地区对什么搜索引擎或门户网站的使用率最高? 一些主要的门户网站的用户真实查询率又是多少? 这一点尤为重要。就象我们常使用新浪、搜狐等大型国内门户网站,但一般更多是为了使用其邮件服务。而查询的话还是喜欢百度或Google一样,你需要了解在这些人们青睐有加的门户网站上,到底有多少人是奔查询而来的。充分的市场考察才能做到有的放矢,从而保证最丰厚的投资回报

语言是信息传播的重要障碍。

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

多语言网站实现计划 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多语言

PHP与脚本引擎页码的概念 由于我们传统应用的内码像Big5,GB2312与unicode并不是逐一对应,故两者之间的转换要靠codepage(页码)来实现
<?php=Language=VBScript CodePage=xxx?> 

不写,根据服务器端解析引擎默认代码页主动解析并返回浏览器。 假如制作的网页脚本与WEB服务真个默认代码页不同,则必需指明代码页: 

codepage=936 简体中文
GBK codepage=950 繁体中文
BIG5 codepage=437 美国/加拿大英语 
codepage=932 日文 codepage=949