理解ProcessWire的字段、模板、模块

不知道如何安装PW的请查看《》一文,建议先安装PW,本文部分用例会需要,另外本文只做基本概念认识,后面会有实际项目开发教程。

FieldsTemplatesModulesProcessWire构建应用的核心概念,请一定理解,非常重要!非常重要!非常重要!重要的事情说三遍:

Fields(字段)

字段的管理入口: Setup -> Fields

此字段非彼字段,PW的字段不是我们数据库开发中的字段,而是更高级的封装(数据结构、录入表单、调用),我们新建字段首先需要明确该字段的类型,PW系统默认自带了很多字段类型:复选框Checkbox、时间/日期Datetime、文件上传Files、浮点型数字Float、整形数字Integer、图片上传Images、文本框Text、多行输入域Textarea等等,也有更为高级的Page ReferenceRepeater等字段,当然你也可以开发或通过第三方字段类型的Module来扩展字段的类型。

有了字段类型后我们就可以建立字段,比如一篇文章,我们需要至少需要两个字段:标题(title)和一个正文(body)字段,我们分别建立一个名为title的Text类型字段及body的textarea类型的字段,如果你的PW安装的非Blank版,后台为你已建好这两个字段,可以在后台字段列表中查看,需要说明的是一般文章正文的需要编辑器,所以body字段设置页面需要做一些简单的配置:Details->InputfieldType->CKEditor,当然,CK是系统自带的的编辑器你也可以任意切换和自行开发接入的。

NOTE:PW的字段在数据库中的呈现形式是独立的表“field_fieldName

Templates (模板)

模板的后台管理入口:Setup -> Templates

有了字段,我们需要一个模板来存放字段,模板实际上既是数据集合的模型,也是我们传统理解的用来数据展现的CMS模板

在系统默认的模板中我们找到basic-page,点击打开配置项可以看到该模板下面的字段列表。

字段数据的录入:

我们回到后台首页,鼠标悬停在任何页面树的节点上会出现菜单“Edit-View-New”等菜单,点击New即可完成子页面的新建工作,此时你需要选择模板文件basic-page并录入标题(Title)和名称(name),注意:name只能录入英文或数字,它的作用就是生成页面的url,录入完成后点击Save生成表单,这时候你可以看到完整的数据录入表单,包括带有编辑器的页面正文(Body)字段,录入后可点击Publish[发布]或Save+Unpublish[仅保存,不发布]。

如何将字段在模板中调用输出?

非常简单:每一个页面就是一个$page对象,你只需要在/site/templates/basic-page.php的适当位置

echo $page->title;
echo $page->body;

即可完成字段title、body的输出了。

Module (模块)

模块的后台管理入口:Modules

Module模块是PW的精髓,很多第三方开发者贡献了很多Modules在官方的Modules频道,把PW理解成OS,那么Module就是OS里面的APP,PW的角色是一款平台,它拥有自己的生态圈,你可以根据你的需求安装第三方的module,当然也有高质量的商业模块,包括官方也提供了一些非常好的商业快,个人认为一般应用足以满足无需购入商业模块。

模块的类型官方分类有:管理助手、开发工具、字段类型、数据导入/导出、语言包、语言模块、多媒体等等

篇幅有限,后面独立重点讲解Module吧。

Post Comment