此包的最新版本(dev-master)没有提供许可信息。

一个用于使所有前端内容(来自不同模块)通过同一接口可用的Zend-Framework-Module。

dev-master 2016-04-13 21:01 UTC

This package is auto-updated.

Last update: 2024-08-29 04:09:08 UTC


README

此模块做什么?

Node 是一个模块,随着时间的推移,其功能已经超过了最初的计划。它为您的 Zend-Framework 应用程序引入了一层,用于为每个内容创建 URL 重写(路由)。

该模块提供了 3 种类型的节点:MVC-节点、内容-节点和重定向-节点。

MVC-节点 可以从模块的后端(需要 ZfcAdmin)创建。配置表单允许您指定此节点应可用的 URL 路径。在下拉列表中,您可以选择控制器(应用程序中的所有控制器都从服务管理器中检索)和控制器内的操作。您可以提供进一步参数,这些参数将按 1:1 传递到路由器。您还可以提供原始 URL 路径,如果指定的控制器、操作和参数已经分配给某个路由。每当输出此路由时,例如在模板中,它将被替换为您刚刚创建的新节点基础 URL。

因此 MVC-节点允许您实现以下功能:将 URL http://yourdomain.com/news/ 路由到潜在的新闻控制器,到 Index-操作,参数为 Sort=ASC

重定向-节点 是一个最初并未计划但非常有用的额外功能。就像 MVC-节点一样,您可以在后端通过表单配置创建这类节点。您指定此节点的 URL 路径以及节点应重定向到的目标 URL(可以是外部 URL)。您还可以指定用于重定向的 HTTP 状态码。

因此重定向-节点允许您实现以下功能:从 http://yourdomain.com/facebook/ 重定向到 https://facebook.de/your-name/

内容-节点 是模块的最初想法。它们是节点,不能从后端手动创建,因为它们始终应与内容相关(例如,博客文章)。每当您创建特定内容时,都应该创建一个节点 - 当您删除此内容时,节点也应该被删除。由于此节点模块不知道提供内容的其他模块的内部结构,您需要创建一个第三方模块,将允许管理特定内容的模块与节点模块关联起来。

因此内容-节点基本上与 MVC-节点相同。但是您不能手动创建或删除它们,因为这项任务必须在代码中实现。可以使用内容-节点实现以下任务:当调用 http://yourdomain.com/blog/why-i-am-great/ 时,在 BlogController 中内部执行 View-操作,参数为 id=5

附加功能

有一些其他功能可以在配置文件中启用或禁用。

  • 启用元字段。如果启用,节点后端的添加/编辑表单允许您指定元描述、元关键字和机器人设置,以满足您的 SEO 需求。
  • 启用访问计数器。如果启用,每当调用节点路由时,此节点的计数器就会增加。同时,保存此节点最后访问的时间戳。这些信息在节点概览中呈现。
  • 缓存。节点存储在数据库中。第一次调用页面时,会获取所有节点,进行处理,并放入您应用程序的路由器中。在这个过程中,路由器配置被缓存,因此在下一次请求时,没有必要再次获取所有节点。
  • 可翻译。模块内的所有字符串都通过翻译实例的 translate() 方法进行包装。
  • 丰富的事件使用。此模块在特定点触发事件,这给了您扩展节点以附加字段的机会,例如。将节点视为存储与所有您的内容相关的信息的中心位置。也许您希望为每个节点有不同的标题图片 - 没有问题。通过触发的事件,您可以轻松修改后端表单或挂钩到将节点保存到数据库的过程。

未来计划

  • 此模块目前是为 ZF2 编写的,但我希望使其与 ZF3 兼容。因此,我可能将创建另一个分支。
  • 此模块的 composer.json 没有列出正确的要求。如果您安装了整个 ZF2,一切都应该正常。然而实际上,您只需要某些组件。
  • 也许我会花一些时间将此模块翻译成德语。现在它是英文的,但是如果您有可用的翻译,可以轻松调用您自己的翻译。