渲染图像的 TYPO3 自定义文件名
TYPO3 Custom File Name for rendered images
我想问一下 TYPO3 LTS 11 是否可以更改 TYPO3 生成渲染图像名称的方式?
在模板中,我使用带有 cropVariant 选项的 f:image Viewhelper 来生成图像(由 TYPO3 Image Rendering 完成)。
<f:image image="{file}" cropVariant="desktop" />
该图像的名称类似于:csm_my-image_88ade60319.jpg
我可以定义 TYPO3 应该如何命名那些渲染图像吗?
例如“my-image_large.jpg”
文件名的 cms_
部分在 TYPO3\CMS\Core\Resource\Processing\ImageCropScaleMaskTask::getTargetFileName
函数中被硬编码。最后的散列被添加到 TYPO3\CMS\Core\Resource\Processing\AbstractGraphicalTask::getTargetFileName
函数中。不确定为什么添加 cms_
,但散列是为了确保文件名是唯一的。哈希是使用文件和配置生成的。
所以默认情况下是不可能的。如果你真的想要不同的文件名,你可以 XCLASS TYPO3\CMS\Core\Resource\Processing\ImageCropScaleMaskTask
像这样:
<?php
namespace Vendor\MyExtension\Resource\Processing;
class ImageCropScaleMaskTask extends \TYPO3\CMS\Core\Resource\Processing\ImageCropScaleMaskTask
{
public function getTargetFileName()
{
$originalFileName = parent::getTargetFilename();
$fancyFileName = ... // Do your things to change the file name
return $fancyFileName;
}
}
您可能还想添加一些内容来配置文件名应该是什么。因此,您可能还需要 XCLASS TYPO3\CMS\Fluid\ViewHelpers\ImageViewHelper
class 或创建一个新的 ViewHelper 以向处理指令添加一些设置。
只需确保文件名是唯一的,否则您可能会得到奇怪的结果。
我想问一下 TYPO3 LTS 11 是否可以更改 TYPO3 生成渲染图像名称的方式?
在模板中,我使用带有 cropVariant 选项的 f:image Viewhelper 来生成图像(由 TYPO3 Image Rendering 完成)。
<f:image image="{file}" cropVariant="desktop" />
该图像的名称类似于:csm_my-image_88ade60319.jpg
我可以定义 TYPO3 应该如何命名那些渲染图像吗?
例如“my-image_large.jpg”
文件名的 cms_
部分在 TYPO3\CMS\Core\Resource\Processing\ImageCropScaleMaskTask::getTargetFileName
函数中被硬编码。最后的散列被添加到 TYPO3\CMS\Core\Resource\Processing\AbstractGraphicalTask::getTargetFileName
函数中。不确定为什么添加 cms_
,但散列是为了确保文件名是唯一的。哈希是使用文件和配置生成的。
所以默认情况下是不可能的。如果你真的想要不同的文件名,你可以 XCLASS TYPO3\CMS\Core\Resource\Processing\ImageCropScaleMaskTask
像这样:
<?php
namespace Vendor\MyExtension\Resource\Processing;
class ImageCropScaleMaskTask extends \TYPO3\CMS\Core\Resource\Processing\ImageCropScaleMaskTask
{
public function getTargetFileName()
{
$originalFileName = parent::getTargetFilename();
$fancyFileName = ... // Do your things to change the file name
return $fancyFileName;
}
}
您可能还想添加一些内容来配置文件名应该是什么。因此,您可能还需要 XCLASS TYPO3\CMS\Fluid\ViewHelpers\ImageViewHelper
class 或创建一个新的 ViewHelper 以向处理指令添加一些设置。
只需确保文件名是唯一的,否则您可能会得到奇怪的结果。