文/刘欢
巧用WordPress创建数字博物馆
文/刘欢
目前,Joomla,WordPress和Drupal是最为常见的三种开源CMS。关于这三种系统谁优谁劣一直是业内讨论和关注的焦点,相关的优缺点分析比较的文章也有很多,但我们仍然很难对“哪一种系统最好”这一问题给出明确的答案。目前来看,Drupal是三者中功能配置最为灵活的,但是学习成本也最高,开发者需要花费较多的时间精力才能加以熟练掌握。从易于上手学习的角度来看,WordPress则是这三种系统中表现得最好的,这一优点使得许多高校信息化从业人员更倾向于选择WordPress来完成一些快速开发的工作。
WordPress本身是一个博客平台,在功能配置和应用的灵活性方面具有一定的局限,因此我们常常看到WordPress被用于制作各类内容展示网站,如个人主页,或是校园网主页,乃至于商业公司的产品网站等。但相比Drupal而言,基于WordPress的特殊功能应用则较少,特别在国内高校层面,鲜有采用WordPress搭建的各类业务管理系统。
华东师范大学于2014年启动了数字博物馆的建设工作。由于该项目的工期比较紧张,项目开发人手严重不足,因此我们从一开始就考虑采用开源系统来作为数字博物馆的基础框架。在综合权衡、比较了多种框架后,最终选择了WordPress。这一选择也获得了令人满意的结果,我们最终在规定的时间内顺利地完成了整个项目的开发任务。在项目实施过程中,我们充分体验了WordPress开发的强大、高效、简洁,并强烈体会到WordPress能够轻松胜任于诸多“另类”高校Web功能应用的开发情境。
每一种开源框架都存在着自己的长处和短板,有着与框架对应的最佳适用情境。在高校的Web应用开发实践中,并不能一味硬套所谓的流行框架,如WordPress就并不适用于业务流程管理类应用。因此,在前期选择开源框架时,首先在项目需求分析上“下功夫”,归纳了数字博物馆项目的几项核心需求,并在此基础之上确定适合的开源框架:
1. 藏品数据库及其Web管理系统的构建。博物馆藏品数据库是整个数字博物馆的核心,该数据库的藏品字段需要严格按照国家文物局颁布的博物馆藏品信息指标体系规范进行建设。其中,每一个藏品都具有数十个复杂的指标项。为了对这些信息进行有效的管理,则需要创建相应的Web管理系统,使得系统管理人员能够方便地增加、编辑和删除藏品信息。同时,在数字博物馆的前端站点中,则需要对这些藏品的详细内容加以展示。
2. 藏品检索系统的构建。数字博物馆的一个重要功能是为使用者提供藏品检索服务,因此我们需要在博物馆前端站点中创建一套完善的藏品检索系统,使得用户能够通过多种字段查询到相应的藏品信息。
3. 数据导入、导出、备份等维护机制的创建。博物馆的藏品数量众多,为了便于管理人员能够更便捷高效地添加藏品信息,需要在后台创建数据的批量导入功能。此外,为了便于数据的后期维护管理,保障数据安全,还需要开发相应的数据维护功能,使得数据能便于导出、随时备份。
4. 其他功能需求。数字博物馆中含有部分类型为影像资料的藏品,这就需要有一套相应的多媒体资源管理系统对资料进行录入、维护,并将其展示在前台站点中。数字博物馆网站不仅要求能够检索藏品资源,还需兼具信息宣传功能,我们需要为工作动态、通知公告等图文内容创建一个前台展示空间,并搭建相应的内容管理后台。此外,在系统中还需要实现管理人员的多级权限分配、站点流量统计分析等功能。
图1 数字博物馆主页面
在确定好以上核心需求之后,我们对比了Joomla、WordPress、Drupal等开源框架,不仅审视这些框架是否能够在功能上满足需求,而且还对开源框架的易用性、灵活性、可拓展性等特征进行细致的考量。其中,WordPress不仅能够实现以上的全部核心功能,而且多数功能都可以由成熟的第三方插件实现,这就能够大大节省开发人员的工作量,缩短研发周期。此外,WordPress本身架构简单易懂,网上又有大量丰富详实的说明文档,以及多个活跃的在线社区,这为开发人员迅速上手、快捷开发提供了非常便利的条件。
WordPress本身提供了一个非常简洁、易用的内容管理平台,在此基础之上,来自世界各地的大量开发者贡献了数以千万的主题、模板、第三方插件等。数字博物馆的开发过程就是一个“集众之所长”的过程,在充分发掘各类第三方插件特点的基础之上,将其和WordPress平台本身糅合在一起。
1. 藏品数据库及其管理系统的实现。要将WordPress平台改造成为博物馆系统,核心是要将WordPress中每一篇“文章”转变成为相应的藏品“记录”。在WordPress的文章中只有标题、内容、特色图像等字段,而藏品记录则需要具备文物类别、年代、地域、人文信息、质地、颜色、尺寸、数量、文物来源、入馆登记号等数十个自定义字段。在此,我们使用了颇负盛名的WordPress第三方插件:Advanced Custom Fields(简称ACF)来解决这一核心问题。ACF可用于在WordPress中创建自定义字段,并为这些字段创建相应的表单。ACF提供的表单类型之丰富,甚至于一些级联下拉菜单也能够方便地直接生成。例如藏品的基本部类有文物藏品、标本藏品、模型藏品等数种,其中文物藏品又包括石器、陶瓷、玉器等文物类别,标本藏品也包含了植物标本、动物标本、人体标本等标本类别。用户在第一级下拉列表中选择好藏品基本部类后,ACF会自动生成相应的次级下拉列表,以便于用户选择更细分的文物类别。
2. 藏品检索系统的实现。WordPress的搜索功能默认为文章的标题和内容搜索,当我们使用ACF增加了各种藏品自定义字段后,如何能够对这些字段的内容进行检索成为关键。在此我们使用了另一个名为“Search Everything”的插件。这个插件能够帮助我们不仅在前台,而且在后台页面中也能够搜索所有的自定义字段,大大增强了系统的搜索能力,使得我们能够在前台站点中轻松快捷地创建带有丰富的过滤条件的搜索页面。此外,这一插件还提供了多样化的检索配置选项,如设置只在某些分类中进行检索,或是在检索的结果页中为关键字词标示背景色,等等。
3. 数据导入、导出、备份等功能的实现。WordPress有大量的第三方导入插件,但是大部分插件的导入格式都是基于默认的文章字段的,在此我们使用了“WordPress Importer”,该插件支持自定义字段的数据导入。为了使其与ACF的自定义字段相契合,我们还对该插件进行了局部的改进。数据的导出则采用XLS格式,在此使用了WP CSV插件。数据的备份功能通过WP-DBManager插件来实现。
4. 数字博物馆充分利用了WordPress本身的平台功能和一些第三方插件来实现其余的重要功能。如通过WordPress自带的多媒体管理、媒体库等功能实现影像资料藏品的管理,通过WordPress自带的文章管理实现信息展示功能,通过User Role Editor插件实现人员权限的分级管理,通过Google Analytics来实现流量的统计和分析等。
通过数字博物馆的开发实践,我们总结了使用WordPress这一开源框架的三大优点:
一是开发快捷,成本极低。博物馆网站中大多数系统功能都借助了第三方插件予以实现,这大大节省了开发人员的时间和精力。而且WordPress本身也非常容易学习,即使是刚入门的高校信息化从业者,也能在很短的时间内做出成型的作品。另外,WordPress的使用者众多,教程、参考资源极为丰富,在开发过程中遇到的绝大多数问题都可以在网络上搜索到直接的答案。
二是系统开放,易于修改。WordPress的系统本身有较强的可修改性,如我们通过修改系统语言包,就能够将系统后台的一些关键文字加以修改(比如,将“文章”字样修改为“记录”),这样管理人员在后台操作时会感觉不出他们实际上是在操作一个博客系统的后台。此外,我们也可以通过修改系统的主题模板,方便地更改前台页面的设计样式。
三是后台简洁,美观大方。WordPress在其官网的自我介绍中就强调它是一个“注重美学”的平台,在实际使用中我们也确确实实地感受到WordPress在图形设计方面的用心之专。整个后台在性能上易于操作和浏览,在外观上也非常优雅大方、风格清新、色彩诱人,管理者的使用体验极佳。在套用了Spacious主题后,数字博物馆的前台页面颇具美感,得到了用户的好评。
然而,不可否认的是这一架构方式也存在着一系列问题。如第三方插件有其不稳定性和功能的局限性,常常是被动地去满足系统需求;在不深入改动系统的前提下,数据库的表和字段只能遵循WordPress的既定内容数据格式,有可能给后续工作带来不便;对系统的深入修改可能导致无法简单地升级WordPress后续版本等。然而,从投入、产出方面来看,使用WordPress这一类开源框架来进行快捷开发,对于人力、物力、时间都普遍并不充裕的高校信息化建设部门而言,无疑是较具吸引力的一种选择。
(作者单位为华东师范大学信息化办公室)