编辑“EZ Publish/EZ Publish内容管理(二)

跳转至: 导航、​ 搜索
警告:您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您登录创建一个账户,您的编辑将归属于您的用户名,且将享受其他好处。

该编辑可以被撤销。 请检查下面的对比以核实您想要撤销的内容,然后发布下面的更改以完成撤销。

最后版本 您的文本
第4行: 第4行:
系统开始运作后,新的内容对象可以被即时创建。例如:当撰写一篇新闻文章时,一个新的文章对象会被相应创建。显然,内容对象本身不能漂浮在空间中,他们必须以某种方式组织起来。这时就需要节点和节点树。内容节点只是对内容对象的封装。在eZ Publish 中,每个对象可以由一个或多个几点表示。
系统开始运作后,新的内容对象可以被即时创建。例如:当撰写一篇新闻文章时,一个新的文章对象会被相应创建。显然,内容对象本身不能漂浮在空间中,他们必须以某种方式组织起来。这时就需要节点和节点树。内容节点只是对内容对象的封装。在eZ Publish 中,每个对象可以由一个或多个几点表示。


下图演示了内容节点和它对应的内容[[对象]](被节点引用)在系统内部的实现。
下图演示了内容节点和它对应的内容对象(被节点引用)在系统内部的实现。
[[Image:ezpublishNRJD.jpg|center|700px|thumb|节点内容对象]]


[[Image:ezpublishNRJD.jpg]]
内容节点树有节点构成。节点是对象在节点树中的位置。节点树用来以树状结构组织系统中的对象。
 
内容节点树有节点构成。节点是对象在节点树中的位置。节点树用来以[[树状结构]]组织系统中的对象。


'''节点结构'''
'''节点结构'''
第14行: 第13行:
内容节点由以下元素构成:
内容节点由以下元素构成:


. 节点[[ID]]
. 节点ID


. 父节点ID
. 父节点ID
第47行: 第46行:
     <td><font size="+2">类标识符</font></td>
     <td><font size="+2">类标识符</font></td>
     <td align="center"><font size="+2">6</font></td>
     <td align="center"><font size="+2">6</font></td>
     <td><font size="+2">节点按照对象的[[类]][[标识符]]排序</font></td>
     <td><font size="+2">节点按照对象的类标识符排序</font></td>
   </tr>
   </tr>
   <tr>
   <tr>
第62行: 第61行:
     <td><font size="+2">修改时间</font></td>
     <td><font size="+2">修改时间</font></td>
     <td align="center"><font size="+2">3</font></td>
     <td align="center"><font size="+2">3</font></td>
     <td><font size="+2">节点按照对象的修改时间排序</font></td>
     <td><font size="+2">节点按照对象的修改时间排序。</font></td>
   </tr>
   </tr>
   <tr>
   <tr>
     <td><font size="+2">子节点修改时间</font></td>
     <td><font size="+2">子节点修改时间</font></td>
     <td align="center"><font size="+2">10</font></td>
     <td align="center"><font size="+2">10</font></td>
     <td><font size="+2">节点按照它们子节点的修改时间排序</font></td>
     <td><font size="+2">节点按照它们子节点的修改时间排序。</font></td>
   </tr>
   </tr>
   <tr>
   <tr>
     <td><font size="+2">名称</font></td>
     <td><font size="+2">名称</font></td>
     <td align="center"><font size="+2">9</font></td>
     <td align="center"><font size="+2">9</font></td>
     <td><font size="+2">节点按照对象名排序</font></td>
     <td><font size="+2">节点按照对象名排序。</font></td>
   </tr>
   </tr>
   <tr>
   <tr>
第96行: 第95行:
</table>
</table>


<font color="red">注意:可以把多种排序方法组合使用来实现复杂排序。但是,因为节点无法“记住”组合(只能对每个节点指定一种排序方法和排序顺序),必须在模板中实现复杂排序。</font>
<font color="red">注意:可以把多种排序方法组合使用来实现复杂排序。但是,因为节点无法“记住”组合(您只能对每个节点指定一种排序方法和排序顺序),您必须在模板中实现复杂排序。</font>


'''排序顺序'''
'''排序顺序'''
第105行: 第104行:
#升序(1/TRUE)
#升序(1/TRUE)


例如:如果排序方法为“名称”并且排序顺序为“升序”,子节点会按照[[字符表]]顺序从A 到Z 排列。如果排序顺序为“降序”,子节点会按照字符表顺序从Z 到A 排列。
例如:如果排序方法为“名称”并且排序顺序为“升序”,子节点会按照字符表顺序从A 到Z 排列。如果排序顺序为“降序”,子节点会按照字符表顺序从Z 到A 排列。


'''优先级'''
'''优先级'''
第112行: 第111行:


== 内容节点树 ==
== 内容节点树 ==
节点树是对象的树状结构。每个叶子是一个节点(也被称为位置)。每个节点引用一个对象。一般情况下一个对象被一个节点引用。因为节点[[封装]]了对象,任何类型的内容对象可以被放置在任何位置。节点树至少包含一个节点,称为根节点。根节点的ID 为1。根节点是一个虚拟节点,它不封装任何真实对象。直接位于根节点下方的节点称为顶极节点(顶极节点在下一章解释)。理论上,节点树的深度和广度没有限制。下图演示了对象如何被节点引用,并共同构成节点树。
节点树是对象的树状结构。每个叶子是一个节点(也被称为位置)。每个节点引用一个对象。一般情况下一个对象被一个节点引用。因为节点封装了对象,任何类型的内容对象可以被放置在任何位置。节点树至少包含一个节点,称为根节点。根节点的ID 为1。根节点是一个虚拟节点,它不封装任何真实对象。直接位于根节点下方的节点称为顶极节点(顶极节点在下一章解释)。理论上,节点树的深度和广度没有限制。下图演示了对象如何被节点引用,并共同构成节点树。


[[Image:ezpublishNRJDS.jpg]]
[[Image:ezpublishNRJDS.jpg]]
第132行: 第131行:
'''易犯的错误'''
'''易犯的错误'''


在计划内容结构时,一个很容易犯的错误是把多位置想象成为文件系统中的[[快捷方式]]/链接。不幸的是,节点树并不是这样工作的。当为对象添加新位置时,[[eZ Publish]] 不会遍历并为对象原始位置的子节点添加位置。例如:如果一个文件夹包含若干子文件夹,子文件夹包含文章,图像等等。当为这个文件夹指派第二个位置时,它的子文件夹和子文件夹不会自动出现在文件夹的新位置下。
在计划内容结构时,一个很容易犯的错误是把多位置想象成为文件系统中的快捷方式/链接。不幸的是,节点树并不是这样工作的。当为对象添加新位置时,eZ Publish 不会遍历并为对象原始位置的子节点添加位置。例如:如果一个文件夹包含若干子文件夹,子文件夹包含文章,图像等等。当为这个文件夹指派第二个位置时,它的子文件夹和子文件夹不会自动出现在文件夹的新位置下。


'''附加说明'''
'''附加说明'''


只有发布的对象会出现在节点树中。新创建的对象(草稿)在第一次发布前没有被指派的节点。只有所有引用某个对象的节点都被从节点树移除,才能说这个对象被移除(状态设置为归档)。被移除的对象会出现在回收站。需要牢记,eZ Publish 的回收站是只用扁平结构。这与[[操作系统]]中的回收站不同。回收站中的对象可以被恢复到原始位置,但是只有在它们的原始位置的父节点没有被删除时才可行。否则,用户必须在恢复过程中手动为其指定一个备选的/新的位置。
只有发布的对象会出现在节点树中。新创建的对象(草稿)在第一次发布前没有被指派的节点。只有所有引用某个对象的节点都被从节点树移除,才能说这个对象被移除(状态设置为归档)。被移除的对象会出现在回收站。需要牢记,eZ Publish 的回收站是只用扁平结构。这与操作系统中的回收站不同。回收站中的对象可以被恢复到原始位置,但是只有在它们的原始位置的父节点没有被删除时才可行。否则,用户必须在恢复过程中手动为其指定一个备选的/新的位置。


<font color="red">注意:无论对象的原始父节点是否仍然存在,用户都可以为其手动指定恢复的位置。</font>
<font color="red">注意:无论对象的原始父节点是否仍然存在,用户都可以为其手动指定恢复的位置。</font>


此外,如果一个包含新闻文章的[[文件夹]]被移除,文件夹和文章都会在回收站中以同一级别显示。只恢复文件夹不会自动恢复文件夹下的文章,因为当移除节点时,文件夹和文章之间的关联已经丢失。这种情况下,需要先恢复文件夹。之后,每篇文章需要被手动恢复并指定位置。
此外,如果一个包含新闻文章的文件夹被移除,文件夹和文章都会在回收站中以同一级别显示。只恢复
文件夹不会自动恢复文件夹下的文章,因为当移除节点时,文件夹和文章之间的关联已经丢失。这种情
况下,需要先恢复文件夹。之后,每篇文章需要被手动恢复并指定位置。


== 顶级节点 ==
== 顶级节点 ==
第165行: 第166行:
'''用户'''
'''用户'''


内建的多用户解决方案使用eZ Publish 原生的内容结构。一个用户实际上就是一个包含“用户帐号”[[数据类型]]的类的实体。用户节点被保存在“用户”顶极节点下的“用户组”节点下。换言之,“用户”顶极节点实际上包含用户组和用户。“用户”节点的默认ID 为5。在管理界面中选择“用户帐号”标签查看这个节点的内容。默认情况下,这个节点引用一个“用户组”对象。
内建的多用户解决方案使用eZ Publish 原生的内容结构。一个用户实际上就是一个包含“用户帐号”数据类型的类的实体。用户节点被保存在“用户”顶极节点下的“用户组”节点下。换言之,“用户”顶极节点实际上包含用户组和用户。“用户”节点的默认ID 为5。在管理界面中选择“用户帐号”标签查看这个节点的内容。默认情况下,这个节点引用一个“用户组”对象。


'''设置'''
'''设置'''
第222行: 第223行:
'''关联类型'''
'''关联类型'''


对象间的关联可以在对象级别,也可以在对象属性级别实现。系统用相同的[[数据库]]表保存对象间不同类型的关联关系。对象不能与自己关联。
对象间的关联可以在对象级别,也可以在对象属性级别实现。系统用相同的数据库表保存对象间不同类型的关联关系。对象不能与自己关联。


'''对象级别的关联'''
'''对象级别的关联'''
第229行: 第230行:


#通用
#通用
#[[XML]] 链接
#XML 链接
#XML 嵌入
#XML 嵌入


第242行: 第243行:
'''XML 嵌入'''
'''XML 嵌入'''


当一个"[[embed]]"标签被嵌入一个“XML 块”类型的属性中时,系统会自动创建一个“XML 嵌入”类型的对象关联,例如:将对象嵌入到正在编辑的对象。注意,这种类型的关联在"embed“标签被删除时候,会被自动删除。
当一个"embed"标签被嵌入一个“XML 块”类型的属性中时,系统会自动创建一个“XML 嵌入”类型的对象关联,例如:将对象嵌入到正在编辑的对象。注意,这种类型的关联在"embed“标签被删除时候,会被自动删除。


'''属性级别的关联'''
'''属性级别的关联'''


当使用“对象关联(单数)”或“对象关联(复数)”数据类型的属性时,这种类型的关联会被自动创建。第一种数据类型只允许关联一个对象,第二种数据类型允许关联多个对象。对象关联没有分组。但是,通过使用不同的这两种数据类型的属性,可以创建出具有关联分组的自定义[[数据结构]]。
当使用“对象关联(单数)”或“对象关联(复数)”数据类型的属性时,这种类型的关联会被自动创建。第一种数据类型只允许关联一个对象,第二种数据类型允许关联多个对象。对象关联没有分组。但是,通过使用不同的这两种数据类型的属性,可以创建出具有关联分组的自定义数据结构。


== 分区 ==
== 分区 ==
第258行: 第259行:
eZ Publish 默认安装会创建以下分区:
eZ Publish 默认安装会创建以下分区:


[[Image:FQBG.jpg]]
[[Image:Example.jpg]]


在管理界面中可以添加,修改和删除分区定义。下图演示了如何利用分区对内容分段。
在管理界面中可以添加,修改和删除分区定义。下图演示了如何利用分区对内容分段。
第272行: 第273行:


== URL存储 ==
== URL存储 ==
每个在“XML 块”或“URL ”类型的属性中输入的地址都会在数据库的独立区域保存。这些属性的数据中只保存到[[URL]] 表中记录的引用。这种特性允许调查和编辑已发布的URL,而不需要与内容对象互动。URL 表中的地址可以用"linkcheck.[[php]]"脚本来检查。这个脚本可以通过eZ Publish 内建的[[cronjob]] [[脚本]]来执行。这个脚本会通过逐个访问URL 表中的地址来检查它们时候可用。如果目标[[服务器]]返回一个异常的反馈(404 页面丢失,500 内部服务器错误,403 拒绝访问等等)或没有反馈,URL 会被标记为非法URL。用管理界面中的“URL 管理”功能可以很容易地过滤出非法的URL 和使用非法URL 的对象。URL 表中的记录由以下数据构成:
每个在“XML 块”或“URL ”类型的属性中输入的地址都会在数据库的独立区域保存。这些属性的数据中只保存到URL 表中记录的引用。这种特性允许调查和编辑已发布的URL,而不需要与内容对象互动。URL 表中的地址可以用"linkcheck.php"脚本来检查。这个脚本可以通过eZ Publish 内建的cronjob 脚本来执行。这个脚本会通过逐个访问URL 表中的地址来检查它们时候可用。如果目标服务器返回一个异常的反馈(404 页面丢失,500 内部服务器错误,403 拒绝访问等等)或没有反馈,URL 会被标记为非法URL。用管理界面中的“URL 管理”功能可以很容易地过滤出非法的URL 和使用非法URL 的对象。URL 表中的记录由以下数据构成:


#ID
#ID
第283行: 第284行:
每个URL 有一个唯一的数字ID。地址包含真正的链接。创建时间是包含这个URL 的对象的发布时间。修改时间在每次通过管理界面中的URL 管理功能修改URL(不是当包含URL 的对象被修改)时会被修改。每次URL 被脚本检查后,最后检查字段会被修改。URL 的状态可以为“合法”和“非法”。默认情况下,所有的URL 都是合法的。当脚本执行时,它会自动更新URL 的状态。如果发现一个无效的URL,它的状态会被标记为“非法”。如果一个已经存在的URL 被保存,系统会重用现存的记录。
每个URL 有一个唯一的数字ID。地址包含真正的链接。创建时间是包含这个URL 的对象的发布时间。修改时间在每次通过管理界面中的URL 管理功能修改URL(不是当包含URL 的对象被修改)时会被修改。每次URL 被脚本检查后,最后检查字段会被修改。URL 的状态可以为“合法”和“非法”。默认情况下,所有的URL 都是合法的。当脚本执行时,它会自动更新URL 的状态。如果发现一个无效的URL,它的状态会被标记为“非法”。如果一个已经存在的URL 被保存,系统会重用现存的记录。


<font color="red">注意:链接检查脚本必须可以通过80 端口与外界通讯。换言之,火墙必须允许从[[WEB]] 服务器出栈的[[HTTP]] [[数据包]]。</font>
<font color="red">注意:链接检查脚本必须可以通过80 端口与外界通讯。换言之,火墙必须允许从WEB 服务器出栈的HTTP 数据包。</font>


== 信息收集 ==
== 信息收集 ==
信息收集特性允许在查看一个与信息收集器关联的节点时收集用户输入的数据。它常用于创建反馈[[表单]],投票等功能。一个对象可以用来收集数据,如果它至少有一个被标记为信息收集器的类属性。当对象被显示时,每个收集器属性会用对应数据类型的收集器模板显示。与直接显示内容相反,信息收集器模板提供了数据输入的接口。生成的输入接口依赖于属性的[[数据类型]]。下表列出了可用作信息收集器的数据类型。
信息收集特性允许在查看一个与信息收集器关联的节点时收集用户输入的数据。它常用于创建反馈表单,投票等功能。一个对象可以用来收集数据,如果它至少有一个被标记为信息收集器的类属性。当对象被显示时,每个收集器属性会用对应数据类型的收集器模板显示。与直接显示内容相反,信息收集器模板提供了数据输入的接口。生成的输入接口依赖于属性的数据类型。下表列出了可用作信息收集器的数据类型。


[[Image:XXSJ.jpg]]
[[Image:Example.jpg]]


输入接口必须封装在[[HTML]] 表单中,并通过名称为"ActionCollectInformation"的按钮提交
输入接口必须封装在HTML 表单中,并通过名称为"ActionCollectInformation"的按钮提交
到"/content/action"("content"模块的"action"视图)。提交的数据会被保存在数据库的特殊部分,与对象分别保存但是与对象保持某种联系。此外,如果对象收集了任何数据,收集的信息可以以[[电子邮件]]的形式发送给特性的收件人。在管理界面中“设置”下的“收集的信息”中可以查看和删除收集到的数据。
到"/content/action"("content"模块的"action"视图)。提交的数据会被保存在数据库的特殊部分,与对象分别保存但是与对象保持某种联系。此外,如果对象收集了任何数据,收集的信息可以以电邮邮件的形式发送给特性的收件人。在管理界面中“设置”下的“收集的信息”中可以查看和删除收集到的数据。


==参考来源==
==参考来源==
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅Wordpress-mediawiki:版权的细节)。 未经许可,请勿提交受版权保护的作品!
取消 编辑帮助(在新窗口中打开)

本页使用的模板: