如何在模板之间共享内容属性

时间:2015-12-30 09:44:52

标签: symfony sulu

我有不同的模板。

  • 默认
  • 类别
  • 制品
  • 概述

他们共享一些属性,如文本编辑器及其设置。

<property name="article" type="text_editor">
    <meta>
        <title lang="de">Inhalt</title>
        <title lang="en">Content</title>
    </meta>
    <params>
        <param name="table" value="true"/>
        <param name="link" value="true"/>
        <param name="paste_from_word" value="true"/>
        <param name="height" value="200"/>
        <param name="max_height" value="2000"/>
        <!-- CKEditor Parameters examples: -->
        <param name="extra_allowed_content" value="img(*)[*]; span(*)[*]; div(*)[*]; iframe(*)[*]; script(*)[*]" />
    </params>
</property>

我不想复制配置,而是从某个地方链接它? 我在Sulu-Docs中没有找到任何关于它的信息,但我确信有一个解决方案。

2 个答案:

答案 0 :(得分:0)

我不知道Sulu工具但是在symfony中如果你想在树枝模板中分解代码,你可以使用宏树枝Twig macro doc

  1. 以树枝格式创建宏文件
  2. 在模板特定页面中导入宏文件
  3. 在宏文件中使用宏,调用宏的名称(不是文件,而是内部宏名称文件)
  4. 使用此功能,您还可以使用参数调用函数宏。对于每个页面生成调用此宏,具有很少的不同方面,以生成此保理代码的少数不同方。

答案 1 :(得分:0)

我们已经考虑过某种导入功能,但我们还没有实现它,并且它没有最高优先级,并且会使某些事情变得更复杂。

但是在此之前你可以做的是继承TextEditor Content Type,将默认值放在那里,将其注册为新的内容类型,然后使用它。然后你至少会一直保存输入参数。

如果您愿意,也可以使用Symfony Bundle Inheritance feature