扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
最近的调查表明,全世界三分之二的 Internet 用户生活在美国之外的其他国家,他们非常愿意看到以他们自己的语言显示的站点,对自己的文化和传统习惯更为敏感。因此,对于电子商务解决方案,全球化非常重要。全球化体系结构的关键是单个可执行文件:它是在单个服务器上执行的一个软件实例,该服务器能够处理多种语言数据,并以对应于当地文化的方式表示信息。
本文将说明如何使用 IBM Lotus Workplace Web Content Management 2.0 快速构建一个简单的全球化网站。 Lotus Workplace Web Content Management 提供了复杂的网站内容管理系统,技术用户和非技术用户都可以使用它。它的一个主要特点是动态表示:网页显示的内容随观察对象的角度和参数的不同而有所不同。在这个解决方案中,我们将利用 Lotus Workplace Web Content Management 的组件化和个性化特性实现全球化解决方案:一个全球化网站。本文假设读者熟悉 Lotus Workplace Web Content Management 开发,并了解其中的软件术语。
概述
Lotus Workplace Web Content Management 管理网站页面的内容和设计、站点的框架和导航以及站点内容的创建、编辑、审批和发布过程。 Lotus Workplace Web Content Management 为创建个性化站点提供了非常灵活的方法。我们的解决方案使用了一个以多种语言提供内容的网站。 Lotus Workplace Web Content Management 如下所示。
图 1. Lotus Workplace Web Content Management
Lotus Workplace Web Content Management 的个性化和多语言特性
个性化使 Web 设计人员能够利用用户和网站的交互,确定每个用户所能看到和访问的内容。可以将个性化组件放到任何 Lotus Workplace Web Content Management 网页中。这意味着可以完全按照用户的要求定制信息。
多语言网站是针对不同用户以多种语言提供内容的站点。通常,Multilingual Site Management 引擎提供了同时在多个不同的数据库(可能在不同的服务器上)中创建文档的多个副本的能力。但是,虽然 Lotus Workplace Web Content Management Java edition 2.0 在内容存储和用户界面上都支持 National Language Support for Group 2 语言,却没有提供 Multilingual Site Management 引擎,将公共内容链接到其他语言版本。
本文中,我们将使用个性化特性手工实现一个多语言网站。在这个解决方案中,还可以定制用户首选语言。比如,当一位中国用户到网站注册时,他可能会把首选语言设置为 Simplified Chinese(简体中文)。那么当该用户登录到网站时,所有的内容都会以简体中文显示。用户也可以选择另一种语言,并以那种语言阅读内容。
在这个解决方案中,我们将使用类别指定用户可以使用的语言。可以将内容看作是全球化解决方案中的本地化包(LP)。这些包以不同的语言提供内容。网页中的每个可视化组件都是作为内容组件创建的,以便能够用适当的语言显示这些组件。页面设计中不直接引用公共内容组件(请参见后面的叙述),而是使用一个菜单组件选择当前语言的公共内容组件。这样,不同语言的内容就可以使用一个页面设计显示了。
下面分别说明使用 Lotus Workplace Web Content Management 创建全球化网站的步骤。因为我们只关注与解决方案有关的步骤,所以省略了其他一些步骤,比如站点、站点区域和工作流的创建。有关如何创建站点、站点区域和工作流的信息,请参阅 Lotus Workplace Web Content Management InfoCenter。
创建分类和类别
在 Lotus Workplace Web Content Management 中,类别指的是内容的主题(即内容是关于什么的)。类别可以按照分类组织。在我们的站点中,使用语言信息作为分类标准,不同的语言具有不同的类别。比如,简体中文是我们的语言信息分类中的一个类别。下图中显示了两种语言类别:英语和简体中文,这两种类别组成了我们的分类:
图 2. 类别管理
创建内容模板
确定类别分类之后,我们将创建两个基本的内容模板,LP_Template 和 DocumentTemplate。
LP_Template
典型的 Lotus Workplace Web Content Management 网页中包含一个页面设计,其中的元素被使用该设计的不同内容文档所共享。全球化站点要求在页面的公共元素中支持不同的语言,因此要使用第二个模板定义每种语言的标签。 LP_Template 用来包含在网站中呈现的所有公共信息。比如,在该例中,内容是作为表格发布的。以不同语言呈现的表头和其他标签作为组件包含在 LP_Template 中。通常,LP_Template 中都是文本组件,但也可能包含其他组件,如 HTML 组件。图 3 中显示的是我们的 LP_Template 中的一些组件。所有这些组件都是文本组件,都以不同的语言呈现在网站中。
图 3. LP_Template 组件
DocumentTemplate
DocumentTemplate 用于发布网页(文档)。在该例中,这个模板包含三个文本组件(标题、发表日期和部门)和一个丰富文本组件(内容)。
图 4. DocumentTemplate 组件
其他模板
其他模板是可选的。比如,在该例中,我们实现了一个名为 ListTemplate 的内容模板,将它用作所有文档列表的模板。
创建 Web 内容
实现了工作流和内容模板之后,就可以构建 Web 内容了。因为我们的目的是要创建一个多语言网站,所以每一部分内容都应有相应的多语言版本。这里以简体中文和英语为例。首先,我们在 LWWCM/Regulation/docs 站点区域中使用 DocumentTemplate 创建一个文档 r_en_0003,类别设为 /Language/en,表示其内容是英语。
图 5. 创建内容(英语)
下一步是创建文档 r_en_0003 相应的简体中文版。我们将这个新文档命名为 r_zh_0003,并保存到 LWWCM/Regulation/docs 目录中。该文档也使用文档模板 DocumentTemplate,区别在于该组件的值都用中文编写,类别设为 /Language/zh。
图 6. 创建内容(简体中文)
站点区域 LWWCM/Regulation/docs 保存有两部分内容。为了在 DocumentTemplate 的基础上完成这两个文档,我们使用 LP_Template 模板作为内容模板创建了另外两个文档,lp_en 和 lp_zh。这两个文档分别归属于 /Language/en 和 /Language/zh 类别。
创建菜单
创建所有的内容之后,还有另外一个重要部分需要创建:菜单。所有的菜单都设置 Matching Profile Search Rules 选项作为 Current User Categories。每个菜单还应该规定相应的内容模板或者站点区域,以便互相区分。下面是用来搜索已发表文档的菜单组件设计的代码:
<tr> <td width="18%" class="table2"> <div align="center"> <AptrixCmpnt context="autoFill" key="PublishDate" type="content"/> </div> </td> <td width="64%" class="table1"> <a href="<Placeholder tag="href"/>" target="_blank"> <AptrixCmpnt context="autoFill" key="Title" type="content"/> </a> </td> </tr> |
创建页面设计
接下来将创建页面设计。组件和内容都不是直接呈现在页面设计中。所有的内容都应该通过菜单呈现。下面是页面设计的一个示例:
<html> <head> <title>Untitle document</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <meta name="ProgId" content="FrontPage.Editor.Document"> <link href="<PathCmpnt type="server"/>/images/style3.css" rel="stylesheet" type="text/css"> </head> <body bgcolor="#FFFFFF" text="#000000"> <AptrixCmpnt context="current" key="Menu_List" type="content"/> <AprtixLibCmpnt name="HTML_Taxonomy"/> </body> </html> |
这里的 Menu_List 组件被用来在网页中显示菜单列表。
创建语言选择表单
完成基本内容之后,还需要添加一个语言选择表单,让登录的用户选择首选语言。 Lotus Workplace Web Content Management InfoCenter 提供了一个示例类别选择表单,不过,该表单被创建为一个复选框。在该例中,我们创建了易于使用的下拉列表。该表单包括两个分类组件。一个组件用来建立表单的外观,另一个用来设置隐含参数,细节如下:
TaxonomyComponent1
项 | 值 |
开始区域 | 语言 |
标题 | <PathCmpnt end="/LWWCM?MOD=AJPECatSelect' method=post>"start="< FORM name=category action='" type="servlet"/> <input type="hidden" name="redirectURL" value="< PathCmpnt ype="noprefixservlet"/> /Lotus Workplace Web Content Management/ <AptrixCmpnt context="current" key="RedirectURL" type="sitearea"/>"> <input type="hidden" name="updateSourceProfile" value="true"> <input type="hidden" name="profileMapperName" value="Current User Categories"> <select name="selectedCategories" onChange="document.category.submit()"> <option value="" > === </option> |
未选择的组件设计 | <option value="<Placeholder tag="idnum"/>" > <Placeholder tag="name"/> </option> |
选择的组件设计 | <option selected value="<Placeholder tag="idnum"/>" > <Placeholder tag="name"/> </option> |
脚注 | </select> |
TaxonomyComponent2
项 | 值 |
开始区域 | 语言 |
标题 | N/A |
未选择的组件设计 | <input type="hidden" name="visibleCategories" value="<Placeholder tag="idnum"/>"/> |
选择的组件设计 | <input type="hidden" name="visibleCategories" value="<Placeholder tag="idnum"/>"/> |
脚注 | </form> |
在该页面设计中,我们需要检索两个分类组件。可以在 HTML Component 附签中输入以下代码:
<AptrixLibCmpnt name="TaxonomyComponent1"/>
<AptrixLibCmpnt name="TaxonomyComponent2"/>
将 TaxonomyComponent1 和 TaxonomyComponent2 改为您使用的分类名称。至此,这个简单的网站的创建就算完成了。下面是该站点的简体中文版和英文版。
图 7. 简体中文版
图 8. 英文版
添加一种新的语言
即使已经发布了网站,添加新的语言也不是件难事。假设要添加网站的日文版,首先需要在语言分类中添加类别名 jp,然后将 LP_template 作为文本模板来创建新的文档,并在该文档中添加用日文编写的所有站点公共组件,最后将日文版添加到站点的当前文档中。比如新文档可以命名为 r_jp_0003,类别为 /Language/jp。
添加一种新的语言时,不需要了解 HTML,也不需要掌握 Lotus Workplace Web Content Management 的高级开发技巧。这种解决方案的一个优点是,可以开发内容模板来创建简单的内容。
|
结束语
本文使用 Lotus Workplace Web Content Management 提供了一种全球化管理方案,可以帮助您快速有效地开发多语言网站。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者