十月内容管理系统 |在布局之间共享代码

octoberCMS | share the code between layouts

在我的默认布局中,我有很多 AJAX handlers,但对于我的项目,我需要创建具有相同布局但具有不同变量(客户端字段)的静态页面...

据我所知,我需要创建不同的布局来扩展 default layout...

但是有一些方法可以在布局之间共享代码以防止重复吗?

或者,有一些方法可以在布局上为不同的静态页面创建不同的变量吗?

例如。变种。代码:

{variable name="tagline" label="Tagline" tab="Header" type="text"}{/variable}
{variable name="banner" label="Banner" tab="Header" type="mediafinder" mode="image"}{/variable}

October 不支持布局继承,所以确实需要为每个结构(可以有不同的变量)创建一个全新的(单独的)布局文件。

要重用代码,您可以按照以下几种方法来实现:

  • 当您有重复的 HTML(标记)代码时使用部分代码
  • 将您的 AJAX 处理程序封装到组件中。这些是可重用的,并且能够定义处理程序。请注意,您不能在 partials 中定义处理程序,因此不要将组件添加到 partials,而是将它们安装在您的布局中。这需要您将组件添加到您创建的任何新布局中,但我认为您比使用代码复制方法更好。