SiteFactoryCMS:Xpower模板解析引擎

来自站长百科
跳转至: 导航、​ 搜索

导航: 上一页 | 首页 | DedeCMS | 帝国CMS | Drupal | PHPCMS | PHP168 | Xoops | Joomla | SupeSite

概述

在动易开发Xpower™模板解析引擎之前,已经有了非常知名的XSLT 引擎,PHP 中也有一个很著名的与XSLT类似的Smarty引擎。为什么动易不直接使用这些模板解析引擎,而是花了大力气再开发这样一个引擎呢?因为一般的CMS都是采用“在模板中直接使用XSLT引擎(或Smarty引擎)”的方式,这种方式的缺点是:

1、模板设计师必须需要额外学习XSLT或Smarty引擎的语法和使用知识,才能设计出可以使用的模板。

2、复用性不高。如果多个模板中想使用相同的效果,必须多处复制相同的代码。

3、只能使用一个数据源。

而动易的X p o w e r™ 模板解析引擎则创新性采用“模板中使用标签、标签内部使用X S L T 引擎”的方式,因此动易的Xpower™模板解析引擎是构建在XSLT 基础上的扩展引擎。确切地说,是在标签内部解析时使用了XSLT引擎,而外部则使用模板中内置标签的方式。

Sf573.jpg


Sf574.jpg

“模板中使用标签、标签内部使用XSLT引擎”这种方式即保持了XSLT模板引擎的灵活性,同时克服了XSLT模板引擎的缺点,这样做的好处有:

1、实现标签的设计人群与标签的使用人群相分离。可以让程序员或专业人员来设计标签,而设计师只要专注设计模板,然后在模板中调用设计好的标签即可。

2、增加易用性。因为一般人并不需要学习XSLT专业知识,只需掌握如何使用已经设计好的标签的知识。标签的形式都和目前的HTML标记非常相似,网页设计师几乎不需要学习就能掌握其使用和应用方法。

3、可以实现标签的复用。一个标签可以应用在多个模板中,如果想要不同的效果,只需要调整一下相应的属性的值即可,这样可以最大程度地复用标签。

4、可以使用任意数据源。标签的数据源除了系统数据库外,还可以从外部的任意SQL数据库、ACCESS数据库、XML文档、Excel文档、OLE数据源、ODBC数据源、Oracle数据源中读取数据。

Sf575.jpg

Xpower模板解析引擎的模板解析原理

X p o w e r™ 模板解析引擎是由模板文件(调用了标签的文件)、标签文件和模板解析引擎三部分组成。 Xpower™模板解析引擎的模板解析原理如下图所示:

Sf576.jpg

每个标签都对应一个文件。可以直接通过修改文件来修改标签。使用得标签的管理和分享非常轻松。

Xpower模板解析引擎的特点

1、多数据源的支持

标签的数据源除了系统数据库外,还可以从外部的任意SQL数据库、ACCESS数据库、XML文档、Excel文档、OLE数据源、ODBC数据源、 Oracle数据源中读取数据用于标签,这就意味着动易系统将支持外挂包括DB2/SYBASE/MySQL等所有可以在Windows系统中使用的数据库,极大地方便了用户制作自己的插件以及集成其他程序数据。网站管理人员可以对使用任意数据库的系统进行数据整合,而无须对方提供数据接口,通过对多种不同系统数据源的整理,用户可以把自己的网站建设成一个综合信息查看系统,也可以方便地整合已有的OA等系统。

Sf577.jpg

举例来说,很多企业内部网络上运行着不同数据库构成的各种应用系统,如OA系统、质量信息管理系统、设备管理系统等。通过动易® SiteFactory™ 的多数据源读取功能,则可以将这些系统中的大部分信息读入到网站系统里,处理后输出到同一个页面。这样,网站用户就可以通过网站中统一的界面对这些数据进行查看,而不必依次登录到各个系统中去,从而简化了管理人员对数据的阅览方式,提高了工作效率。

2、标签内容的完全自定义

书写标签的时候采用XSLT语法,可以完全使用XSLT支持的一切编程元素,使原来需要通过编写插件才能实现的很多功能,现在只需要修改现有标签或者新加一个标签即可实现。

Sf578.jpg

3、标签级编程的实现

当XSLT语句、内置扩展方法都不能满足用户的需求时,Xpower™模板引擎还提供了最终级的解决方法- “标签内部编程支持”。通过.net框架的强大支持,Xpower™模板引擎提供在标签内部直接使用编程语句进行 处理的功能,可以在C#VBJAVA这三种语言中任意选取一种或多种进行标签编程,甚至是在一个标签内同 时使用三种语言进行编程。这种编程方式是.NET框架所独有的,在目前市场上可选择的CMS软件中,动易® SiteFactory™所提供的编程功能最为强大和完善。很多用户需要的个性化效果,在其他CMS 软件需要通过 修改源码才能实现时,动易® SiteFactory™可以让您在后台轻松搞定,无须编译、无须等待,更无须将 您辛苦修改的整个系统源码提供给陌生的开发人员。

4、对XSLT引擎的扩展

在XSLT 语法的基础上又进行了功能扩展,系统提供了可以在XSLT 中使用的动易专有方法。比如在XSLT 中并不支持中文字数的计算,而Xpower™模板解析引擎就可以支持中文字数的计算。此外Xpower™模板解 析引擎还有强大的日期处理、字符处理、编码功能等许多方法可供使用。

Sf579.jpg

5、标签的复用和完全跨页面的标签调用方式。

6、标签可以无限级嵌套。