我在Typo3 6.2中扩展了扩展构建器,extbase和fluid.
我想在前端添加一个时间戳.
我在网上找到了一个.js文件,并希望在扩展处于活动状态时包含它,因为我经常需要它.
我把这个文件放在这里:EXT:/Resources/Public/JS/timepicker.js.
我看到了一个解决方案这个文章,但增加
page.includeJS.tx_myExtension = EXT:/Resources/Public/JS/timepicker.js
在我的setup.txt底部不起作用.
我没有定义page那里,所以我认为这可能是原因,但我真的不知道 - 这是我的setup.txt(自动生成)在/ typo3conf/ext // Configuration/TypoScript /:
plugin.tx_myext_test {
view {
templateRootPath = {$plugin.tx_myext_test.view.templateRootPath}
partialRootPath = {$plugin.tx_myext_test.view.partialRootPath}
layoutRootPath = {$plugin.tx_myext_test.view.layoutRootPath}
}
persistence {
storagePid = {$plugin.tx_myext_test.persistence.storagePid}
}
}
Run Code Online (Sandbox Code Playgroud)
最终我希望我的前端函数能够与datepicker一起工作,因为我在我的根模板中包含了jQuery.但我不想在那里加入时间戳,只是为了扩展.
<script>
$(function () {
$('.lc-datepicker').datepicker();
$('.lc-timepicker').timepicker();
});
</script>
Run Code Online (Sandbox Code Playgroud) 我是typo3扩展开发的新手,我也使用extension_builder创建了扩展以及后端模块。
ext_tables.php
if (TYPO3_MODE === 'BE') {
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
'USER.Webuser',
'web', // Make module a submodule of 'web'
'bewebuser', // Submodule key
'', // Position
[
'Users' => 'list, show, new, create, edit, update, delete',
],
[
'access' => 'user,group',
'icon' => 'EXT:' . $extKey . '/Resources/Public/Icons/user_mod_bewebuser.svg',
'labels' => 'LLL:EXT:' . $extKey . '/Resources/Private/Language/locallang_bewebuser.xlf',
]
);
}
Run Code Online (Sandbox Code Playgroud)
打字稿:
# Setting up template
module.tx_webuser_web_webuserbewebuser {
persistence {
storagePid = {$module.tx_webuser_bewebuser.persistence.storagePid}
}
view {
templateRootPaths = EXT:webuser/Resources/Private/Backend/Templates/
partialRootPaths = EXT:webuser/Resources/Private/Backend/Partials/
layoutRootPaths = EXT:webuser/Resources/Private/Backend/Layouts/ …Run Code Online (Sandbox Code Playgroud) 我会链接以创建指向后端模块内的前端页面的链接。使用:
<f:link.page pageUid="40" >Link</f:link.page>
Run Code Online (Sandbox Code Playgroud)
不起作用。它生成一个指向当前后端模块的链接。
任何解决方案?
由于 TYPO3 9.5 LTS 建议对 TypoScript 条件使用 Symfony 表达式语言。
旧语法:
// Matches any applicationContext with a rootContext of "Production", for example "Production/Live" or "Production/Staging":
[applicationContext = Development*]
// Matches any applicationContext starting with "Production/Dev"
[applicationContext = /^Production\/Dev/]
Run Code Online (Sandbox Code Playgroud)
我尝试了以下但没有成功:
[applicationContext == "/^Development\/Docker/"]
[applicationContext == "Development*"]
[applicationContext == "Development/*"]
Run Code Online (Sandbox Code Playgroud)
我没有找到任何例子。我不确定条件测试是否已经基于表达式语言。( https://review.typo3.org/#/c/57787/ )
如果有人建议如何使用该功能像以前一样添加条件,那就太好了
是否可以禁用页面上某个特定元素的缓存?我已经尝试了以下打字稿,如本答案所述,但它对我不起作用(TYPO3 v8):
tt_content.textmedia.20 = USER_INT
Run Code Online (Sandbox Code Playgroud)
我正在使用ext:fluid_styled_content自定义 CType。根据我的理解,上面的排版应该禁用内容元素“文本和媒体”的缓存(仅作为示例)。
我的自定义元素使用 ViewHelper 从 API 读取实时数据。但是 ViewHelper 只是在元素未被缓存时被调用。否则将显示缓存的内容。
我在typo3 v8.4中使用过这个方法。这是我的打字稿:
lib.loginBox = plugin.tx_felogin_pi1
lib.loginBox.storagePid = 28
Run Code Online (Sandbox Code Playgroud)
在模板中我使用了这个:
<f:cObject typoscriptObjectPath="lib.loginBox" />
Run Code Online (Sandbox Code Playgroud)
但现在在 v10.4 中,它会抛出此错误并显示“在 TypoScript 对象路径“lib.loginBox”中找不到内容对象定义”。当我将 < 更改为 = 时,它不会加载内容元素。
有什么想法这里可能有什么问题吗?
我在将组合条件从 TYPO3 9 LTS 切换到 TYPO3 10 LTS 时遇到问题。
到目前为止的语法如下所示:
[PIDinRootline = 31] && [treeLevel = 4]
page.10.variables.cagmenu < lib.cagpagebrowser
[global]
Run Code Online (Sandbox Code Playgroud)
我调整了新语法如下:
[31 in tree.rootLineIds] && [tree.level == 5]
page.10.variables.cagmenu < lib.cagpagebrowser
[global]
Run Code Online (Sandbox Code Playgroud)
如果我省略第二个条件,则&& [tree.level ==4]所需的行为将在 ID=31 的页面的所有子页面上实现。
我必须如何相应地实施我的条件,以便它也可以在 TYPO3 10 LTS 下工作?
sysext:filemetadata被激活; 图像(fal引用)存放在页面资源(pages.media)中.
目前我已知2个选项与TYPO3页面相关:
实际上(TYPO3 7.x和8.x)是一种常见的/仅核心的解决方案,可以使用创建者,版权等附加属性(元数据)来呈现这些图像.
我使用以下方法设置了描述元:
page.meta.description.field = description
Run Code Online (Sandbox Code Playgroud)
我可以这样做,所以子页面使用最近页面中有一组的描述吗?
因此,如果根页面有description1,那么所有子页面都使用它,除非子页面有自己的描述2,在这种情况下它和它的任何子页面都会使用description2等等......
也许我完全是瞎子又傻瓜,但是如何在BE Module od typo3 9.5中访问TSFE?
我想在后端模块中使用实际选定站点的某些页面属性,但是自上次使用pi_based以来,我不知道如何获得此属性。
\TYPO3\CMS\Core\Utility\DebugUtility::debug(
$GLOBALS['TSFE']->tmpl->setup['config.']['baseURL']
);
Run Code Online (Sandbox Code Playgroud)
这是行不通的,我坚持:(提前致意和问候
汤姆
typo3 ×10
typoscript ×10
extbase ×3
fluid ×3
typo3-10.x ×2
typo3-9.x ×2
fal ×1
felogin ×1
html ×1
javascript ×1
jquery ×1
typo3-7.6.x ×1
view-helpers ×1