【问题标题】:Write custom grid layouts with extbase/fluid but without any extension like gridelements使用 extbase/fluid 编写自定义网格布局,但没有任何扩展,如 gridelements
【发布时间】:2019-12-29 14:08:35
【问题描述】:

我正在寻找一个教程、帮助或示例来告诉我如何在基本类型 3 (v9) 中编写像 2-colums 这样的网格元素,使用流畅但没有其他扩展,如 gridelements、DCE、Templa Voila,等等。我想要相同的网格元素可以做,但我不想依赖这个扩展并将其移动到我自己的站点扩展中。

我对普通内容元素 (CE) 进行了同样的尝试,如下所示: https://docs.typo3.org/c/typo3/cms-fluid-styled-content/9.5/en-us/AddingYourOwnContentElements/Index.html

但是如何将 CE 嵌套在 CE 中?我怎样才能通过在后端拖放来做到这一点?

【问题讨论】:

标签: layout grid typo3 frontend backend


【解决方案1】:

你不能。页面模块不支持嵌套

【讨论】:

    【解决方案2】:

    您不能在 CE 中嵌套 CE。在数据库级别,这意味着您必须使 tt_content 记录成为父 tt_content 记录的子记录。您遇到了几个问题,基本上多语言支持将被破坏,并且快捷方式元素无法按您预期的那样运行。这就是扩展“gridelements”和“mask”存在的原因。

    我将 gridelements 配置集成到我的站点包中。所以我不需要再为它烦恼了。

    仅供参考: 现在有一项计划致力于将此功能集成到核心中(结构化内容计划,https://typo3.org/article/a-structured-content-initiative/)。请继续关注它。

    【讨论】:

      【解决方案3】:

      通过外部文件提供 Gridelements 并没有什么特别之处,因为它基于 TSconfigTypoScriptFluid。这就是为什么文档中没有太多关于它的原因,因为它与您对任何其他类型的站点包所做的事情相同。 TSconfig 和 TypoScript 参数已经在此处进行了说明,而 Fluid 则由您决定。

      要拥有一种 kickstarter,只需将任何提供 Gridelements 布局的扩展作为示例。一个非常流行的方法是 bootstrap_grids,可以在 TER 或这里找到:https://github.com/laxap/bootstrap_grids

      您不一定需要该扩展的 flexform 控制器,但 ConfigurationResources 文件夹向您展示了如何配置内容,您可以通过 ext_localconf.php 看到它是如何包含的

      甚至在 TSconfig 文件中也有 cmets 来解释那里可能发生的事情以及如何处理即具有基于记录和文件的设置的混合环境。虽然建议去文件。

      【讨论】:

      • 非常感谢!我会努力的!
      • 好的,开始工作了。如果您理解它,gridelements 是一个不错的 :) 只剩下一点:forge.typo3.org/issues/85183 今天这可能吗?我在网上找不到任何东西。它会让我有机会将网格元素用于一切。
      • 这尚未实现,但可能在 CMS 9、8 和 7 的下一个版本中。
      【解决方案4】:

      您至少必须将必要的后端渲染方法添加到绘图项挂钩中,这将修改容器元素的预览。

      所以基本上你必须重写 DCE、Flux、Gridelements 或其他类似扩展已经做的所有事情。

      这给我们带来了一个问题,为什么要避免这些扩展,因为尤其是这三个是众所周知的、广泛传播的、得到很好的支持并且可用于当前支持的 TYPO3 版本。

      【讨论】:

      • 过去我在扩展方面遇到过很多问题。 First Templa Voila 停止维护。然后从 Typo3 7 到 9 Mask 和 Gridelements 不再按预期工作。我必须从头开始,并希望有一种无需扩展的方法。
      • 使用 Mask_export 的掩码是完整的核心方式。然而 gridelements 是不同的东西
      • Mask 不提供任何网格布局,仅提供基于 IRRE 的嵌套内容元素。所以基本上它是基于 TCA 的元素的启动器,仅此而已。 Gridelements 提供了您一直要求的网格,它一直以相同的方式工作并且向后兼容,而不会破坏从 4 到 9 的几个不同 CMS 版本的更改。因此,如果您在从 CMS 7 到 9 时遇到 Gridelements 问题,也许你应该寻求帮助,而不是从头开始。您可以在此处或在官方 TYPO3 slack 上的 Gridelements 频道中执行此操作。
      • 嗨乔!好的,我知道 gridelements 没有办法;)我找到了一个教程,可以在自己的扩展中移动所有内容(在德语中找到它):typo3-probleme.de/2017/04/07/…。它不起作用,我在您的文档中找不到任何内容。你知道这个来源吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-11
      • 1970-01-01
      • 1970-01-01
      • 2014-11-13
      • 1970-01-01
      • 2013-09-20
      相关资源
      最近更新 更多