小编Pet*_*ume的帖子

如何在 TYPO3 Fluid 中比较字符串与变量

我想做一个简单的比较,例如相当于:

if ($somevar === 'somestring')

现在,我找到了一些这样做的例子:

<f:if condition="{somevar} == 'somestring'"> 
...
Run Code Online (Sandbox Code Playgroud)

TYPO3 core 9.5 中也有很多地方,例如.

但官方文档告诉我们不然,我们必须使用基于数组的奇怪的解决方法:

不允许使用 XX/YY 处的字符串,但暂时可以通过比较数组来实现字符串比较

如果查看助手

由于实现复杂,Fluid 还无法与字符串进行比较,例如 ....。

外部基础/流体

不管什么意思 ...

为了避免问为什么:在 TYPO3 9 中比较字符串和变量的推荐方法是什么?从什么时候可以做到这一点?

typo3 fluid view-helpers typo3-9.x

4
推荐指数
1
解决办法
4250
查看次数

如何在 TYPO3 CKEditor 中启用颜色按钮

我正在尝试启用colorbutton插件以使用 TYPO3 CKEditor 中的 TextColor 功能,但它不起作用。

我已经尝试包含 colorbutton 插件所需的所有需要​​的外部插件。我已经直接从 CKEditor 网站(buttonpanelbuttonpanelfloatpanel)下载了 4.7 版的插件。但是每次当我包含 panelbutton 或 colorbutton 时,TYPO3 后端中的编辑器不再工作。

包含插件的代码: 包含插件的代码

包含 panelbutton 或 colorbutton 插件后,编辑器坏了: 编辑器在包含 panelbutton 或 colorbutton 后坏了 我的目标是在工具栏中有这个按钮: 目标

typo3 rte ckeditor typo3-extensions typo3-8.x

3
推荐指数
1
解决办法
2916
查看次数

如何用方面替换 TYPO3 9 中的 data = TSFE:sys_language_uid

我们有一个打字稿配置来告诉 CSS 我们使用哪种语言,使用 classnames 将一个类添加到 body 标签中language-x

由于似乎没有关于如何在 Typoscript 中执行此操作的记录,因此我还没有尝试太多来解决这个问题。

为此,我们使用了以下打字稿:

// Language
    30 = TEXT
    30 {
        data = TSFE:sys_language_uid
        noTrimWrap = | language-||
    }
Run Code Online (Sandbox Code Playgroud)

现在这提出了E_USER_DEPRECATED

Property $TSFE->sys_language_uid is not in use anymore as this information is now stored within the language aspect
Run Code Online (Sandbox Code Playgroud)

提前致谢。问候托米

typo3 typoscript typo3-9.x

3
推荐指数
1
解决办法
2321
查看次数

TYPO3 新闻:在预览中显示第一张图片

我在 TYPO3 8.7.13 中使用 Georg Ringer 的 News Extension。

如果未选择任何图像进行预览,则扩展程序将显示一个虚拟图像。是否可以改用文章中的第一张图片?

谢谢

image typo3 preview typo3-8.x

2
推荐指数
1
解决办法
3445
查看次数

网站在浏览器中打开但在 WebView 中不起作用

我曾多次尝试在 webview ( https://www.prpal.com/#/ ) 中打开此链接,但总是失败

此链接适用于 Android 或 iOS 中的所有浏览器。

请有人帮我在 Android Studio 的 webview 中打开此链接

webView=(WebView)findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient(){
    @Override
    public void onReceivedSslError(WebView view, SslErrorHandler 
    handler, SslError error) {
        handler.proceed();
    }
});
webView.loadUrl("https://www.prpal.com/#/");
webView.setWebChromeClient(new WebChromeClient());
Run Code Online (Sandbox Code Playgroud)

}

android webview android-webview

2
推荐指数
1
解决办法
1493
查看次数

如何在 Typo3 9.5.8 中设置 maxFileSize

我将我的 php.ini 设置为 upload_max_filesize=12M,这在 phpinfo() 中工作正常;

但是typo3 9.5.8 仍然不接受上传大于8mb 的文件。

在 Typosettings 中找不到更多选项,例如 ['BE']['maxFileSize'],我可以在其中更改这些设置。

有什么方法可以改变?

typo3 typo3-9.x upload-max-filesize

2
推荐指数
1
解决办法
1266
查看次数

从 TYPO3 v9 升级到 v10 后:显示页面不再工作(无法访问受保护的属性)

我已经编写了一个基于 TYPO3 版本 9 的扩展。我现在已将其安装在 TYPO3 版本 10 系统中,一切似乎都工作正常。只有显示页面无法再打开。

错误来了:

Cannot access protected property myname\myextension\Domain\Model\Country::$name
Run Code Online (Sandbox Code Playgroud)

我不明白这个错误。在列表页面上我通常使用国家/地区名称。在“显示”页面上我根本不使用它。因此,为什么这会引起问题是没有意义的。

这是我的 Show.html

<div class="card">
    <h5 class="card-header" style="text-align: center">
        {house.name}
    </h5>
    <div class="card-body" style="text-align: center">
        <p class="card-text">
            <f:link.external uri="{house.link}" target="_blank">{house.link}</f:link.external>
        </p>
        <h2>Rooms</h2>
        <ul>
            <f:for each="{house.room}" as="room">
                <li>{room.name}</li>
            </f:for>
        </ul>
    </div>
</div>
<f:link.action action="list" class="btn btn-primary">
    BACK
</f:link.action>
Run Code Online (Sandbox Code Playgroud)

我的控制器

class HouseController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController
{
............
............
    /**
     * @param House $house
     */
    public function showAction(House $house)
    {
        $this->view->assign('house', $house);
    }
Run Code Online (Sandbox Code Playgroud)

正如之前所说,完整的代码在版本 9 上运行良好,在版本 10 中肯定存在一些问题。

编辑:这是我的国家模型 …

typo3 typo3-9.x typo3-10.x

2
推荐指数
1
解决办法
1251
查看次数

TYPO3 9.5 LTS routeEnhancers for news with uid 使路径唯一

您好,我在 TYPO3 Slack 频道上发现了以下内容,作为一个人正在使用的内容。这个片段yaml存在于/config/my-websitename/config.yaml...

routeEnhancers:
  NewsList:
    type: Extbase
    limitToPages: [2,20,21,22,92]
    extension: News
    plugin: Pi1
    routes:
      - routePath: '/p{page}'
        _controller: 'News::list'
        _arguments: {'page': '@widget_0/currentPage'}
      - routePath: '/{news_title}'
        _controller: 'News::detail'
        _arguments: {'news_title': 'news'}
    defaultController: 'News::list'
    defaults:
      page: '0'
    requirements:
      page: '\d+'
      news_title: '^[a-zA-Z0-9].*$'
    aspects:
      page:
        type: StaticRangeMapper
        start: '1'
        end: '100'
      news_title:
        type: PersistedAliasMapper
        tableName: 'tx_news_domain_model_news'
        routeFieldName: 'path_segment'
Run Code Online (Sandbox Code Playgroud)

问题

但是我注意到当我有多篇具有相同标题的文章时,没有唯一的 URL。

问题

如何将文章添加uid到路径中以使其独一无二,或者这是一个好主意?我发现它在文档中被忽略了,但不知道如何让它工作来扩展我已经拥有的东西,或者是否有更好的例子有人可以给我关于如何获取新闻的唯一网址?

https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.5/Feature-86365-RoutingEnhancersAndAspects.html#persistedpatternmapper

typo3 typo3-9.x

1
推荐指数
1
解决办法
1175
查看次数

TYPO3 8 ckeditor 样式设置多个类以“bg”开头的类名不起作用

我注意到 yaml 配置有一个奇怪的行为,因为 TYPO3 从 8.19 更新到 8.22 在具有多个类的部分 stylesSet 中。如果类名以“bg”开头并且未定义为第一类,则它不再起作用。

stylesSet:
  - { name: "bgcolor-pink", element: ['p', 'div'] , attributes: { class: "button bgcolor pink"} }
Run Code Online (Sandbox Code Playgroud)

但是,如果我将类“bgcolor”放在首位,则样式集“bgcolor-pink”将再次显示在 ckeditor 中并且可以正常工作。

 stylesSet:
  - { name: "bgcolor-pink", element: ['p', 'div'] , attributes: { class: "bgcolor button pink"} }
Run Code Online (Sandbox Code Playgroud)

我想这可能与 stylesheetParser_skipSelectors 有关,但找不到线索。

我很感激你的回答。

yaml class typo3 ckeditor typo3-8.x

1
推荐指数
1
解决办法
841
查看次数

如何修复 TYPO3 和 ddev 中的缓存问题?

我最近开始使用 ddev 来开发 TYPO3 页面,但我偶尔会遇到同样的问题。有时(我真的不知道是什么导致了这个问题)页面会停止加载,一段时间后会出现此错误消息:

PHP Warning
Core: Error handler (BE): PHP Warning: rename(/var/www/html/var/cache/code/cache_core/5d5a7572dd900787722599.temp,/var/www/html/var/cache/code/cache_core/site-configuration.php): No such file or directory in /var/www/html/public/typo3/sysext/core/Classes/Cache/Backend/SimpleFileBackend.php line 234
Run Code Online (Sandbox Code Playgroud)

我知道当 TYPO3 没有写入缓存的权限时会出现这个错误,但我不知道我能做些什么来防止这个问题。重新启动 Docker 可以修复它一小段时间,但最终它再次发生,每 10 到 20 分钟重新启动一次 Docker 确实需要花费很多时间.. 有谁知道我需要做什么样的配置来防止这个问题?

顺便说一句,我在 Windows 上使用 Docker 和 TYPO3 9.5.8

typo3 docker ddev typo3-9.x

1
推荐指数
1
解决办法
831
查看次数