我的第一步是TYPO3 CMS
...composer
但是我无法安装我自己的发行包。尝试:
composer require stsa/hellotypo3
Run Code Online (Sandbox Code Playgroud)
我有这个错误:
[InvalidArgumentException]
Could not find a version of package stsa/hellotypo3 matching your minimum-stability (stable). Require it with an explicit version constraint allowing its desired stability.
Run Code Online (Sandbox Code Playgroud)
我已经TYPO3 9.5.1
通过 Composer 安装并(用于测试)安装了第 3 方扩展,mask
例如composer require mask/mask
. 它工作完美。
这是我composer.json
的分发扩展,我已将其上传到packgist
. json 文件是有效的,但必须有某物。错误的 ..
{
"name": "stsa/hellotypo3",
"type": "typo3-cms-extension",
"description": "FLUID Templates & TypoScript",
"homepage": "https://www.hello.de/",
"keywords": [
"TYPO3",
"CMS",
"extension"
],
"authors": [
{
"name": "Stsa", …
Run Code Online (Sandbox Code Playgroud) 这是我在这里的第一个问题所以你好!对于我的问题:我正在练习一个非常简单的Extbase Extension并使用FlexForm来获得三个公式字段.其中一个被称为"代码",应该转到EmbedderController.php,然后转到查看器List.html.
我尝试了很多并检查了我能找到的所有教程.但不知何故,我真的不明白如何将FlexForm值"代码"放入我的控制器中.无论我做什么,我都没有得到任何价值或空页.
这是我的FlexForm:Embedder.xml
<T3DataStructure>
<meta type="array">
<langChildren>0</langChildren>
<langDisable>1</langDisable>
</meta>
<ROOT>
<type>array</type>
<el>
<settings.code>
<TCEforms>
<label>Video Code</label>
<config>
<type>input</type>
<size>20</size>
<max>30</max>
<eval>trim</eval>
</config>
</TCEforms>
</settings.code>
<settings.width>
<TCEforms>
<exclude>1</exclude>
<label>Breite in Pixel</label>
<config>
<type>input</type>
<size>10</size>
<max>10</max>
<eval>trim</eval>
</config>
</TCEforms>
</settings.width>
<settings.height>
<TCEforms>
<exclude>1</exclude>
<label>Höhe in Pixel</label>
<config>
<type>input</type>
<size>10</size>
<max>10</max>
<eval>trim</eval>
</config>
</TCEforms>
</settings.height>
</el>
</ROOT>
</T3DataStructure>
Run Code Online (Sandbox Code Playgroud)
这是我的EmbedderController.php
<?php
namespace HhuMediathek\Hhumediathek\Controller;
/**
* EmbedderController
*/
class EmbedderController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController {
/**
* embedderRepository
*
* @var \HhuMediathek\Hhumediathek\Domain\Repository\EmbedderRepository
* @inject
*/
protected …
Run Code Online (Sandbox Code Playgroud) 对于受限页面、登录和重定向,是否有任何实际的最佳实践?
我找到了很多示例,但都是针对较旧的 TYPO3 / felogin /.... 版本(没有站点配置)
我有以下场景:
我有几个受限页面和一个登录页面(felogin)
我希望能够将深层链接(例如按邮件发送)到受限页面 - 如果用户未登录,则应显示登录表单 - 成功登录/注册后,应显示深层链接页面。
我使用 TYPO3 9.5 并在站点配置中添加了 403 处理来显示我的登录页面的内容。
这一步工作正常 - 显示登录页面。
我在 felogin 插件中配置了 referrer 和 GET/POST 重定向,但这些都不起作用。
有没有人举个例子,我如何在成功登录/注册后重定向到原始调用(受限)页面?
谢谢
基督教
如果通过后端保存对象,我想操作一些值并执行自定义函数。我通过谷歌搜索发现我必须在ext_localconfphp中指定这一点:
$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass']['extkey'] = 'Vendor\\Extension\\Hook\\TCEmainHook';
$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processCmdmapClass']['extkey'] = 'Vendor\\Extension\\Hook\\TCEmainHook';
Run Code Online (Sandbox Code Playgroud)
此外,我在扩展/Classes/Hook/TCEmainHook.php中创建了以下类
<?php
namespace Vendor\Extension\Hook;
class TCEmainHook {
public function processCmdmap_postProcess(
$command, $table, $id, $value,
TYPO3\CMS\Core\DataHandling\DataHandler &$pObj) {
echo '<pre>';
var_dump($command);
echo '<pre>';
die();
}
}
Run Code Online (Sandbox Code Playgroud)
但无论我尝试以下哪个选项,在保存对象后我都会得到一个空的后端框架:
$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processCmdmapClass']['NXS\\NxsReferenzen\\Hook\\TCEmainHook'] = 'EXT:nxs_referenzen/Classes/Hook/TCEmainHook.php';
$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processCmdmapClass'][''] = 'NXS\\NxsReferenzen\\Hook\\TCEmainHook';
$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processCmdmapClass'][''] = 'EXT:nxs_referenzen/Classes/Hook/TCEmainHook.php:\NXS\\NxsReferenzen\\Hook\\TCEmainHook';
Run Code Online (Sandbox Code Playgroud)
我不明白我做错了什么。有人有什么建议吗?
参考解决方案: 感谢 Jokumer 的建议,我查找了 BE 模块“配置”中加载了哪些以及如何加载其他钩子。我发现我的钩子看起来与其他钩子不同,所以我检查了 powermail 钩子的定义方式(这是我正在使用的另一个扩展),并通过以下更改,钩子终于可以工作了:
$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processDatamapClass'][] = 'EXT:nxs_referenzen/Classes/Hook/TCEmainHook.php:NXS\\NxsReferenzen\\Hook\\TCEmainHook';
$GLOBALS ['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processCmdmapClass'][] = 'EXT:nxs_referenzen/Classes/Hook/TCEmainHook.php:NXS\\NxsReferenzen\\Hook\\TCEmainHook';
Run Code Online (Sandbox Code Playgroud) 从powermail 6.0开始。可以根据文档在复选框标签中添加链接(针对 GDPR):
它说:
只需使用 FlexForm 中的一个选项,例如(带有指向隐私条款所在的第 123 页的示例链接):
I accept the <f:link.page pageUid="123">privacy terms</f:link.page> | privacy terms accepted
Run Code Online (Sandbox Code Playgroud)
之后,您必须在标签中启用 html(出于安全原因,此功能已关闭)。TypoScript 常量示例:
plugin.tx_powermail.settings.misc.htmlForLabels = 1
Run Code Online (Sandbox Code Playgroud)
...但它还说“(出于安全原因此功能已关闭)”。
还有哪些其他选择可以实现这一目标?(没有安全损失?)
我只是想向我新安装的 TYPO3 站点添加一个表单。
表单看起来不错,但在前端我收到以下错误:
***The Prototype "standard" was not found.***
Run Code Online (Sandbox Code Playgroud)
我实在不明白这个消息想告诉我什么。在谷歌搜索问题后,我发现了以下解决方案:
编辑TypoScript模板记录并在“Include static(来自扩展)[include_static_file]”中添加“Form(表单)[EXT:form/Configuration/TypoScript/]”
即使有了这个解决方案,我也被困在这里。
这些文件在哪里?如何向模板文件添加记录?
我真的很感谢这里的任何帮助。
谢谢
仅供参考:我的 TYPO3 版本是 11.5.3
ext:news 列表视图插件位于 www.domain.com/news [ID 9] 页面上,详细视图位于 www.domain.com/article [ID 39] 上。
我尝试了功能描述的“Extbase插件增强器”示例,但这引起了一些问题:
造成某些问题的原因之一可能是分页器未在其链接中指定控制器:news?tx_news_pi1[@widget_0][currentPage]=2&cHash=123456789
我将其拆分为两个单独的路由增强器(Extbase + 插件),删除了“defaultController”、“defaults”、“requirements”段并添加了“aspects”:
routeEnhancers:
NewsDetail:
type: Extbase
limitToPages: [39]
extension: News
plugin: Pi1
routes:
- { routePath: '/{news_title}', _controller: 'News::detail', _arguments: {'news_title': 'news'} }
aspects:
news_title:
type: PersistedAliasMapper
tableName: 'tx_news_domain_model_news'
routeFieldName: 'path_segment'
NewsList:
type: Plugin
limitToPages: [9]
routePath: '/{@widget_0/currentPage}'
namespace: 'tx_news_pi1'
aspects:
'@widget_0/currentPage':
type: …
Run Code Online (Sandbox Code Playgroud) 我的目标是使用TYPO3 7.6.2版本中的扩展构建器创建扩展.我从扩展构建器文档创建了Category Product扩展,除上传单个图像外,它工作正常.
但我必须创建功能,将多个图像添加到单个产品,并在前端显示图像轮播.但扩展构建器不适用于文件上载.
我是TYPO3的新手,所以我不明白如何添加多个图像?我读了太多文件,但没有找到完美的解决方案.
我只是想知道如何向产品添加多个图像的过程?
提前致谢!
在我的TYPO3扩展中,我创建了一个自定义控制器类,从TYPO3后端的某个钩子调用.
在这个控制器中我想从中得到一些东西,$GLOBALS['TSFE']
但是当var_dump($GLOBALS['TSFE'])
我接到时null
.问题是如何正确初始化$GLOBALS['TSFE'
]?
我正在尝试启用colorbutton插件以使用 TYPO3 CKEditor 中的 TextColor 功能,但它不起作用。
我已经尝试包含 colorbutton 插件所需的所有需要的外部插件。我已经直接从 CKEditor 网站(button、panelbutton、panel、floatpanel)下载了 4.7 版的插件。但是每次当我包含 panelbutton 或 colorbutton 时,TYPO3 后端中的编辑器不再工作。
typo3 ×10
typo3-extensions ×10
typo3-9.x ×3
extbase ×2
php ×2
typo3-8.x ×2
ckeditor ×1
composer-php ×1
felogin ×1
hook ×1
powermail ×1
rte ×1
tx-news ×1
typo3-11.x ×1
typo3-7.6.x ×1