繁体   English   中英

TYPO3 CMS自动化陷阱

[英]TYPO3 CMS automation gotchas

我们正在使用gitcomposer ,并且当前正在为自动TYPO3 CMS部署实现DDEV 但是有一些我不知道如何自动化的手动过程?

  1. 我们如何自动添加或删除“包括静态(来自扩展名)”? 当前,这是主要TS模板的“包含”标签下的手动过程。
  2. 我们如何处理扩展的激活/停用? PackageStates.php是TYPO3跟踪安装哪些扩展的地方,因此应该在git跟踪PackageStates.php ,还是应该安装extsysext文件夹中存在的所有扩展,并完全删除Helmut Hummel不需要的扩展名暗示他已经在做
  3. 我们如何使每个扩展的自定义配置设置自动化 ,通常是通过转到TYPO3 CMS后端中的“ Extensions ”,然后选择一个特定的扩展来设置的?

这里有一些建议:

  1. 您只需通过INCLUDE_TYPOSCRIPT将所需的contant / setup文件添加到您的网站扩展中,至少可以避免通过TYPO3后端的往返。 它不是自动的,但可以确保进行原子性更改,并且无需单击即可轻松删除。 当然,您需要在指向站点扩展的后端的模板记录的contant和setup字段中具有单个INCLUDE_TYPOSCRIPT
  2. 我强烈推荐Helmut在这里建立的方法:只require您真正需要的软件包即可。 如果将TYPO3控制台命令install:generatepackagestatespost-autoload-dump 脚本 ,则可以自动更新PackageStates.php 在大多数情况下,如果您也执行此部署步骤,则甚至无需再将此文件添加到存储库中。
  3. 这些配置设置最终以$GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']作为序列化字符串,因此您可以根据需要简单地进行设置,并在必要时对现有配置进行反序列化。 您可以在AdditionalConfiguration.php执行此操作,以使代码保持配置更改。 请注意, $GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']被TYPO3v9弃用,并替换为纯数组和适当的API。
  1. 要“包括静态”,您始终必须在数据库中执行更改。 添加的模板保存在sys_template表中。 因此,您可以创建一个sh脚本在每次部署时仅导入该表。

  2. 如果不使用composer安装扩展,则可以在git中添加PackageStates。 当我不使用作曲家扩展时,我就是用这种方式做的。

  3. 请检查此链接https://docs.typo3.org/typo3cms/CoreApiReference/ExtensionArchitecture/ConfigurationOptions/Index.html

关于1.),您可以使用钩子$ GLOBALS ['TYPO3_CONF_VARS'] ['SC_OPTIONS'] ['Core / TypoScript / TemplateService'] ['runThroughTemplatesPostProcessing']。 例如,请查看https://github.com/CMSExperts/bolt/blob/master/Classes/TypoScript/TemplateService.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM