从解决网站中传统的内容管理系统存在的诸多问题出发,提出利用WordPress对内容管理系统(CMS) 进行架设和 管理,能有效地解决用户网站建设与信息发布中常见的问题与需求。阐述基本概念,对模块功能的分析及模块的实现和 安全性等方面都作了较详细的介绍。
随着网络技术的不断发展,网站的开发与维护若 不跟上信息衍生及业务模式变革的步伐,将需要花费 大量时间、人力和物力去处理信息更新和维护工作。 如若网站扩充,整合内外网及分支网站的工作将变得 更加复杂,甚至需要重新建设网站。如此,用户始终 在一个高成本、低效率的循环中升级、整合,归纳起来 传统的内容管理存在的问题如表1所示。
表 1 内容管理存在的常见问题1-2]
问题类型 | 问题描述 |
网站风格不一 | 页面制作无序,大量信息堆积冗余,发布异常沉重 |
管理效率低下 | 内容繁杂,链接视音频信息经常无法实现 |
角色分工不明确 | 应用复杂,许多工作必须技术人员配合才能完成 |
系统扩展能力差 | 改版工作量大,集成其它应用时更是降低了灵活性 |
对于网站建设和信息发布人员来说,最关注系统 的易用性和功能的完善性,因此对网站建设和信息发 布工具提出了一个较高的要求。
首先,角色定位明确,以充分保证各方人员的工 作效率;功能完整,使各种信息发布准确无误,为开发 人员提供人性化的管理功能。
次,保障网站架构的安全性也非常关键。能有效 管理网站访问者的登录权限,使数据库不受外来侵害, 时刻保证网站的安全稳定运行,免除用户的后顾之忧。
根据以上要求,利用WordPress 对相应数据内容进 行架设并管理,能有效解决用户网站建设与信息发布中 常见的问题和需求。对网站内容管理是该软件的最大 优势,它功能完善、主题丰富,可将稿件分类并授权给合 法用户编辑管理,无需用户去理会专业生涩的语法。
1 内容管理系统的概念
内容管理系统,简称 CMS(Content Management System), 是指组织和协助共同合作的内容,方便数字 内容的管理系统。对内容管理,业界还没有一个统一 的定义,不同的机构有不同的理解[34]。
“内容”是任何类型的数字信息的结合体,可以 是文本、图形图像、Web 页面、业务文档、数据库表 单、视频、声音、XML文件等。或者说,“内容”是一个 比数据、文档和信息更广的概念,是对各种结构化数 据和非结构化文档及信息的聚合。“管理”就是施加 在“内容”对象上的一系列处理过程,包括收集、存 储、审批、整理、定位、转换、分发、搜索、分析等,目的是使“内容”能够在正确的时间,以正确的形式传递 到正确的地点和人。“内容管理”可定义为:协助组 织和个人,借助信息技术,实现内容的创建、储存、分 享、应用、检索,并在企业、个人、组织、业务、战略等诸 方面产生价值的过程。“内容管理系统”就是能够支 撑内容管理的一种工具或一套工具的软件系统。内容管理系统的定义分为狭义和广义。狭义通 常是指门户或商业网站的发布和管理系统;广义则指 个人网站系统也归入其中。维基(Wiki) 和博客 (Blog)都是一种内容管理系统。
2 WordPress 概述
WordPress 是一个免费的开源项目,在GNU通用 公共许可证下授权发布,使用PHP 语言开发,支持用 户在PHP 和 MySQL数据库的服务器上架设自己的 网志,也可将其当作一个内容管理系统来使用,同时 也是功能强大的博客系统,它支持多种语言,插件众 多,易于扩充功能,安装和使用非常方便。美国知名 互联网统计公司ComScore 2008 年的数据显示, Wordpress.com的日独立IP 数已2090万,全球数据 显示为9780万用户,而且呈逐年递增的趋势,足以说 明 WordPress已成为主流的博客发布系统之一。用 户可根据它的核心程序提供的规则自己开发模板和 插件,把博客改变成CMS、Forums、门户等各种类型的 站点[78],能够用CMS 开发的网站,基本上都能用 WordPress完成,可能更为简单,因为其主要功能都是 管理文章。如比较著名的 Joomla、Drupal 与 Word- Press 没有太大的区别。但不以文章为核心的网站都 不适合用WordPress,目前的最新版本为3.03,主要 功能如表2所示。
表2 WordPress主要功能
组成 | 功 能 | 描 述 |
配 置 | 基本配置 | 标题、关键词、地址 |
发布 | 设置文本编辑器的默认高度、格式化等 | |
阅读 | CMS每页显示多少篇文章或显示多少篇最新文章等 | |
评论 | 如留言设置、通知设置等 | |
隐私 | 希望或不希望CMS能够被搜索引擎进行搜索 | |
永久链接 格式 | 通过自定义设置可以更改 | |
杂项 | 设置上传图片的相对保存路径或绝对保存路径及图 片尺寸等 | |
管 理 | 自定义发布 类型 | 自定义发布内容的类型,为不同的发布类型定制各 异的主题 |
菜单管理 | 方便易用的拖拽界面,用户可以创建各种菜单,让菜 单链接至内部网页、网站分类、外部站点等地方 | |
自定义分类 | 每篇文章都可以用类别(Categories)和标签(Tag)来 分类,用户可添加额外的信息进一步给内容分类 | |
多站点管理 | 管理多个不同网站,包括跨域名网站或是同一域名 下的子网站等 |
本文以实验预约管理系统中的学习讨论模块为 例,并加以分析如何利用WordPress 架设CMS。
3 CMS模块功能分析
3.1 功能组成
整个版块从功能上,由3部分组成:用户管理、版 块管理和留言管理。
(1)用户管理:实现用户的登录、注册、注销、修 改个人资料和在线用户的列表。为管理用户,系统建 立一个用户数据表,用于存储注册的合法用户信息, 此外,系统还设计了一个在线用户数据表,用来存储 在线用户信息。
(2)版块管理:包括添加新版块和子版块、删除 现有版块和子版块、发表新文章、回复文章、检索文章 并且设置当有人回复文章时的邮件通知。
(3)留言版管理:主要实现显示和查询留言并且 可以给己注册的任意合法用户留言。在查看留言模 块中,若有新来的留言,则系统提示相应信息。学习 讨论模块数据流图。
3.2添加子版块
在子版块数据表中添加一条记录并且把它的字 段值赋为相应版块的序号(Board 中的字段值),新建 一个版块栏目,需要先在版块数据表中添加一条记录,然后在子版块数据表中添加子版块。删除版块和 子版块的算法与其相反。
3.3 实现的方法
在文章数据表(Publish _Article)中,用 Child- BoardNo.字段记录该节点的父节点数,即回复文章个 数,用parentid字段记录它的父节点序号,以layer 字 段来标示它所处的层数,用root 字段标示它的根节点 序号,用orders 字段标示它的节点序号。然后根据 boardid 把所有该版的文章按照root 记值逆序和or- ders 值进行排列,再按照layer 的值进行退格处理。
当文章数目很大时,为了方便浏览就要采用分页技 术。在MySQL中,用下面的语句可限制数据集的大小:
select *from Publish_Article limit $offset,$psize;
其中$offset为偏移量,$psize 为显示记录数。这 样,用公式$offset =$page *psize-$psize求出剩余记录 的偏移量,就可动态定位到任意页面。
4 CMS 模块的实现
4.1 本地安装WordPress
在本地安装WordPress对管理人员十分有益,尤 其是自己制作一个主题或插件时,就更需要在本地安 装,因为反复的调试,本地操作金非常方便和高效。
WordPress需要PHP与MySQL的环境支持,在本 地测试就要安装PHP、MySQL以及APACHE服务器。
4 .2数据库配置
(1)利用图形管理工具 MySQL Workbench新 建 一个数据库,如“LabServer”。
(2)下载WordPress 安装包,并把 WordPress 解压后 的整个文件夹放到LabServer中 的wwwroot 文件夹内。
(3)修改WordPress文件夹中的wp-config-sam- ple.php文件[10],见如下PHP代码:
//**MySQL settings-You can get this info from your web host **//
/**The name of the database for WordPress */ define('DB_NAME','lab');
/**MySQLdatabase username */ define('DB_USER','root');
/**MySQL database password*/
define('DB_PASSWORD','123456′); /**MySQL hostname*/
define('DB_HOST','localhost');
/**Database Charset to use in creating database tables.*/ define('DB_CHARSET','ut8');
数据库名称填入新建的数据库“LabServer”,为 方便起见,数据库用户名填“root”, 密码为“123456”, 文件另存为wp-config.php 即可。
4 . 3用户设置
可利用功能强大的IDE 工具Zend Studio的配 置,对WordPress 进行架设、管理、调试和发布1]。在 安装了Zend Studio后,需要一些基本的配置,使其支 持PHP/MySQL环境,具体可参阅相关用户手册。
1.修改个人信息。
W WoRDPRESS Welcome
Wekcome to the lamous fve rinute WordPress mstalabon process Youmay wan to browse the Readhe t oendable e and powenul personal pubishingplatfomm in the warld
Information needed
Pleaseprovide the folowing infomabon.Dontwomy,youcanahways chanoethese settngs later.
8log Ttn
tiyp@163com
Double-dhedk you mai adtreps betore contnuno
F Aiow my bog to appear in search engines ske Gooole and Tednorai. Instt Wordress
图 4 注册界面
注册WordPress后,如图4所示,即可进行安装。 登录后点击导航栏右边的“Users”菜单,会出现两个 子菜单,“Authors&Users(作者与用户管理)”和“Your Profile(你的空间)”,点击“Your Profile”,包含很多个 人信息的配置。
2.创建新用户。
WordPress 支持多用户同时更新一个 Blog或 CMS,将其设为必须注册才能留言,这时需要创建新 用户。用户可以自己直接注册,管理员则在后台直接 管理用户。在上面介绍的“Authors&Users”页面,会 看到已经存在的用户列表,在用户列表下方就是新建 用户的表单,输入用户的名称、电子邮件、网址和密码
以及用户等级等内容。
WordPress的用户等级分为以下5类:
(1)Administartor (管理员账号):拥有对整个后 台的所有操作权限。如图5所示
图 5 通过Zend Studio调试 WordPress
(2)Editor (编辑者账号):可发表文章,并对CMS 内的所有文章、页面、留言进行编辑。
(3)Author (作者账号):可发表文章,但只能对 自己的文章进行编辑。
(4)Contributor (贡献者账号):可投递文章,只能 对自己的文章进行编辑。和作者账号不同的是,作者 是一个CMS的一员,而贡献者可能是一个热心网友 注册的账号,偶尔投递一两篇文章或评论。但这些文 章要在管理员审核之后才会发表出来。
(5)Subscriber (订阅用户账号):对后台只有浏览 功能,以及设置自己的个人信息。
若设计的 WordPress 是多作者或开放注册的 CMS,在选择注册权限的时候就需注意。若是开放注 册的CMS, 建议设置为Subscriber, 然后再对相应的用 户进行权限设置。
3.管理用户。
在用户选项中,会列出一份已存在的用户列表, 可根据用户的等级进行过滤查看,也可用关键词进行 用户搜索,点击每个用户名,可对该用户的所有信息 进行更改,除了Username 用户名不能更改,也可以通 过勾选删除一个或批量删除多个用户。
对于个人博客用户来说,并不需要太多关注Us- ers 内容,但如果是开放注册的博客,一个良好的用户 分级和管理,将有助于博客的井然有序,如运用得当, 可以发展为很好的CMSI¹2]。
5 WordPress的安全性[10,13-14]
在构建任何网站时,安全性都极其重要,通过以下设置可对WordPress的安全性加以一定的保护,有 些设置可能很简单,但往往容易被忽略。对 Word- Press的安全性通常要注意以下内容:
( 1 ) 保 持 WordPress 程 序 是 最 新 版 本 以 避 免 bug。
(2)不允许任何人搜索到服务器信息,不要在 Search.php文件中使用搜索代码:<? php echo $_ SERVER['PHP_SELF'];?> 可用代码: php blog- info('home');?> 进行替代。
(3)阻止搜索引擎查找以 WP- 为开头的文件夹 内的文件。
最简单的阻止方法是在CMS根目录建立robots. txt 文件,并在里面添加如下代码:
Disallow:/wp-
Disallow:/*.php $Disallow:/?s=
Does anyone care I love Google Apache htaccess
(4)不要将目录以网页列表的形式暴露出来。
WordPress的一个潜在性的问题会使得其他用户 查看到CMS 的插件目录以及版本号,通常用两种方 法加以解决:
①在 plugins 和 themes 文件夹下面分别建一个名 为index.htm 的空文件。
②在htaccess 文件里添加规则:Options All-Inde-
xes。
(5)将版本号从Meta标签中删除。
一般来说,默认的WordPrss 及主题的 header.php 文件都会有版本号的meta 标签。这极易暴露因没有 及时升级旧版本的漏洞而让他人利用。建议删除该 标签,也可增加代码:
<meta name ="generator"content ="WordPress <?php bloginfo('version');?>"/>
(6)删除默认的 admin 用户。
WordPress中的默认管理员为 admin。建议在 CMS建成后,新建一个用户并设置为最高的管理权 限,以代替原有的admin,并把 admin删除,用户密码 的设置复杂一些。
(7)保护WordPress的重要文件。
建议将配置文件config.php 的权限设置为只读, 禁止他人通过网络非法获取并修改该文件而将 WordPress盗用。并在每次升级 WordPress 后,一定 要把 install.php 文件删除。
通过以上简单设置可以有效地减少非法入侵的 可能性。
6 CMS 发布
WordPress分为定时发布和远程发布。PHP 默认 的时间格式是标准的格林时间,若调整为北京时间可 更改后台主菜单“设置”内的选项,必须先开启Word- Press的远程发布功能,可浏览 Writing Settings 模块, 然后勾选Remote Publishing 里的XML-RPC选项来开 启该功能。
7 结束语
CMS还在不断的发展之中,特别是在信息高速 增长的时代,内容管理系统将在未来的经济社会发展 中发挥越来越重要的作用,今后内容管理平台的焦点 是内容管理平台与使用者工具的整合,随着多媒体内 容资产的迅速增长,也将对信息交换与协同作业的重 视程度不断增加。一个优秀的内容管理系统将为各 部门构建一个具有良好扩展性、稳定性和高效率的信 息共享平台,而WordPress的广泛应用无疑是对CMS 锦上添花。
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.gezhanwang.com/2022/02/24/wordpresscms/
共有 0 条评论