我们最近启动了我们的第一个TYPO3 10项目,目前正在与一个自定义导入脚本进行斗争,该脚本将数据移动到Algolia。基本上,一切都很好,但是FAL图像有一个问题,特别是当它们需要处理的时候。
从日志中,我可以找到名为DeferredBackendImageProcessor的东西,但是文档没有提到这一点,或者我没有寻找正确的东西。我没有把握。
显然,后端环境中的图像不再仅仅被处理了。有一种叫做"processingUrl“的东西,必须调用一次才能处理图像。
我试着用卷发给那个网址打电话,但不起作用。问题是,当我在浏览器中打开"processingUrl“时,它没有效果--但是如果我在浏览器中打开该链接,在浏览器中登录到TYPO3后端,那么图像就会被处理。
我在这里有点迷失了,因为我需要在导入脚本中处理图像,导入脚本通过后端的调度程序运行(手动,而不是通过cron)。
这就是问题发生的地方,卷曲部分在这里没有影响,可悲的是。
protected function processImage($image, $imageProcessingConfiguration)
{
if ($image) {
$scalingOptions = array (
'width' => 170
);
$result = $this->contentObject->getImgResource('fileadmin/'.$image, $scalingOptions);
if (isset($result[3]) && $result[3]) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $result[3]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
return '/fileadmin'.$result['processedFile']->getIdentifier();
}
}
return '';
}$result[3]是处理url。网址的例子:
domain.com/typo3/index.phproute=%2Fimage%2Fprocess&token=6cbf8275c13623a0d90f15165b9ea1672fe5ad74&id=141所以我的问题是,我如何处理来自导入脚本的图像?
发布于 2021-02-11 16:10:50
我不确定是否有更优雅的解决方案,但您可以在工作期间禁用延迟处理:
$processorConfiguration = $GLOBALS['TYPO3_CONF_VARS']['SYS']['fal']['processors']
unset ($GLOBALS['TYPO3_CONF_VARS']['SYS']['fal']['processors']['DeferredBackendImageProcessor'])
// ... LocalImageProcessor will be used
$GLOBALS['TYPO3_CONF_VARS']['SYS']['fal']['processors'] = $processorConfiguration;参考文献:
https://stackoverflow.com/questions/66131876
复制相似问题