gpt4 book ai didi

php - TYPO3 TCA 值作为 Fluid 上的变量

转载 作者:行者123 更新时间:2023-12-05 06:33:52 26 4
gpt4 key购买 nike

我有一个基本扩展,所以我可以对我的网站进行版本控制。这意味着我在扩展上没有 Controller 或存储库。所以我想做的是在现有元素上创建我自己的设置。我正在试验标题内容元素上的文本对齐值。

Keep in mind, there is already a setting for this, but i am just experimenting.

我想出了如何添加它们并将值保存在数据库中。

我现在想做的是获取值并将它们添加为 FLUID 上的一个类。这就是我卡住的地方。我无法获得这些值。知道怎么做吗?

本指南之后How to enable header_position in TYPO3 7.6我设法得到我的代码:

在文件夹/Configuration/TCA/Overrides/tt_content.php

use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;
ExtensionManagementUtility::addTCAcolumns('tt_content',[
'header_position_custom' => [
'exclude' => 1,
'label' => 'header position',
'config' => [
'type' => 'select',
'renderType' => 'selectSingle',
'items' => [
['left', 'left'],
['right', 'right'],
['center', 'center']
]
]
]
]);

ExtensionManagementUtility::addFieldsToPalette('tt_content', 'header', '--linebreak--,header_position_custom', 'after:header_layout');
ExtensionManagementUtility::addFieldsToPalette('tt_content', 'headers', '--linebreak--,header_position_custom', 'after:header_layout');

在文件夹/Configuration/Typoscript/Constants/Base.typoscript

styles.templates.templateRootPath = EXT:my_website_base/Resources/Private/Extensions/Fluid_styled_content/Resources/Private/Templates/
styles.templates.partialRootPath = EXT:my_website_base/Resources/Private/Extensions/Fluid_styled_content/Resources/Private/Partials/
styles.templates.layoutRootPath = EXT:my_website_base/Resources/Private/Extensions/Fluid_styled_content/Resources/Private/Layouts/

在/Resources/Private/Extensions/Fluid_styled_content/Resourcs/Private/Partials/Header.html 上

<h1 class="{positionClass} {header_position_custom} {data.header_position_custom} showed">
<f:link.typolink parameter="{link}">{header}</f:link.typolink>
</h1>

I 've put the class showed just to make sure that i am reading the file from the path i gave on the constants

文件 ext_tables.php

TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY,'Configuration/TypoScript', 'Website Base');

文件 ext_tables.sql

CREATE TABLE tt_content (
header_position_custom varchar(255) DEFAULT '' NOT NULL,
);

有了所有这些,我就可以在我想要的位置获得我的选择框,并且我获得了数据库中的值。这意味着如果我在选择框中选择值“Center”,那么它将保存在数据库中。我怎样才能获得这个值并将其用作 FLUID 上的类?

提前致谢

最佳答案

您将在 data 对象中找到您的字段。

要检查流体变量,您可以使用 f:debug-VH:

<f:debug title="the data">{data}</f:debug>

为了检查所有(在当前上下文中)可用的变量,您可以调试 _all:

<f:debug title="all data">{_all}</f:debug>

提示使用title属性来标识输出

并且不要忘记为新字段编写 get*set* 函数!

关于php - TYPO3 TCA 值作为 Fluid 上的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50482605/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com