当前位置: 首页 > 后端技术 > PHP

OctoberCMS-5-Parts

时间:2023-03-29 19:36:29 PHP

Partialspartials我们在这里称为[Parts],它们是可重用的Twig标记块。可以在网站的任何地方使用。例如页眉和页脚或其他Ajax内容。partials模板文件存储在模板目录的partials子目录中。扩展名是htm。最简单的例子:

这是一个partial

partials的配置部分是可选的,可选的参数description用于向后端用户提供功能描述。description="Demopartial"==

这是一个partial

可以在配置部分定义组件,后续组件部分会学习到。零件渲染如何渲染零件:{%partial"partial-name"%}。这里需要的参数只有一个,就是[文件名]这里的文件名是指文件的名称部分,不包括扩展名部分。如果在子目录中,则需要指定路径。页面、布局或其他小部件可以使用小部件。下面是一个引用另一个组件的组件。{%partial"sidebar-contacts"%}
向小部件传递变量小部件的一个强大的特性是我们可以向小部件传递可变参数。例如,如果我们有一个呈现博客列表的小部件,我们可以将一组帖子传递给中国博客列表小部件。这个时候,这个组件可以用在多个不同的页面或者布局中。投递方式:组件名后面跟着组件的变量名和投递值变量名:{%partial"blog-posts"posts=posts%}
当然,也可以一次指定多个变量。要在小部件内传递{%partial"sidebar-contacts"city="Vancouver"country="Canada"%}
,您可以像使用任何其他标记变量一样使用它们。

国家:{{country}},城市:{{city}}。

动态小部件,如页面,也可以使用Twig标记。widget的执行生命周期onStart函数在widget渲染之前和部分执行之前执行。onEnd函数在小部件呈现之前和小部件执行之后执行。在onStart和onEnd函数中,您可以将变量注入到Twig环境中。使用数组表示法向页面传递变量:==functiononStart(){$this['hello']="Helloworld!";}==

{{hello}}

由于声明周期限制towidgets组件的实例化时间比较晚,在页面渲染时会限制组件的生命周期。AJax事件未注册且无法执行。生命周期函数不能返回任何值。呈现小部件时执行表单的正常POST操作。一般来说,widget中的组件一般都被设计成基础组件,用来渲染一些不需要复杂处理的情况,比如按钮。