我们通过以下方式创建了主题扩展:
安装了MASK和Power邮件扩展,因为为了实现模板扩展,我们使用MASK和PowerMail进行表单提交。
然后将主题相关的模板,样式,Js,typoscript放在扩展文件夹中。
7.1。在我们的扩展文件夹下创建了一个新文件夹Initialisation,Initialisation / Extensions,Initialisation / Files。
7.2。将依赖项扩展包放入Initialisation / Extensions。
7.3。将所有fileadmin文件()放入Initialisation / Files。
7.4。修改了ext_emconf.php文件,提到了扩展细节及其依赖扩展。
7.5。将导出的T3d pagetree文件放在Initialisation文件夹下,名称为data.t3d
7.6。在文件ext_localconf.php中添加了以下代码,用于更改掩码后端配置
<pre>
<code>
$GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['mask'] = serialize([
'json' => 'typo3conf/ext/key-name/mask.json',
'content' => 'fileadmin/key-name/templates/content/',
'layouts' => 'fileadmin/key-name/templates/content/Layouts/',
'partials' => 'fileadmin/key-name/templates/content/Partials/',
'backend' => 'fileadmin/key-name/templates/backend/',
'layouts_backend' => 'fileadmin/key-name/templates/backend/Layouts/',
'partials_backend' => 'fileadmin/key-name/templates/backend/Partials/',
'preview' => 'fileadmin/key-name/templates/preview/',
]);
</code>
</pre>
7.7。如果我们在掩码中添加新的内容元素,掩码将向tt_content表添加一个新字段,并创建一个用于存储该内容元素值的新表。 由于此主题包含太多内容元素,因此我们在ext_tables.sql文件中添加了ALTER和CREATE TABLE查询。我们还为掩码内容元素值添加了UPDATE和INSERT查询。
问题:现在的问题是,7.6和7.7点(创建和更新查询没有被执行),即在干净的typo3包中安装我们的扩展时不能正常工作。
请告诉我们哪里出错了。
非常感谢 问候 Sharmistha
答案 0 :(得分:1)
这个答案是基于应该创建“TYPO3分发包”的假设。如果没有使用用于呈现网站前端的模板或后端布局定义,原始答案中提到的“站点包”方法可能是多余的。
简要介绍了为TYPO3创建分发包此处记录了扩展程序的常规文件位置https://docs.typo3.org/typo3cms/CoreApiReference/ExtensionArchitecture/FilesAndLocations/Index.html - 尤其要查看ext_tables_static+adt.sql
所需的内容,例如1}}或INSERT
数据明确。
关于SQL声明和调整,以下解释很重要:
UPDATE
仅支持表格声明,因此仅支持并执行ext_tables.sql
- 不考虑CREATE
或UPDATE
等修改INSERT
文件中的定义进行比较,并在存在差异时进行调整(更改) - 在此步骤中考虑并合并已安装扩展的所有ext_table.sql
个文件ext_table.sql
语句未在ALTER TABLE
中进行评估 - 如果您要调整字段声明,请使用包含新字段的其他ext_table.sql
语句或要更改的类型 - 例如TYPO3核心的CREATE
正在改变https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_8-7/typo3/sysext/felogin/ext_tables.sql ext:felogin
和fe_groups
fe_users
语句必须是文件INSERT
的一部分,请参阅https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_8-7/typo3/sysext/extensionmanager/ext_tables_static%2Badt.sql ext_tables_static+adt.sql
ext:extensionmanager
,可以使用“导入/导出模块”创建,作为TYPO3核心包的一部分希望有所帮助。如果还有其他问题,请提供错误消息或警告,并描述您想要实现的目标。 THX