Fluid 的图像 viewhelper 显示过时的图像
Fluid's image viewhelper shows outdated images
以下情况:
- 自动导入项目:
- 项目的图像由一些 cron 任务 perl 更新到文件夹
uploads/myExt/<Vendor>/<Serial>/
(产品之间的供应商和序列号可能不同)
- 图片有命名约定,每个产品都有自己的文件夹
- 命令脚本在命令行上启动,通过XML 文件获取产品数据;数据存储在数据库中 (Extbase
tx_myext_domain_model_item
)
- 前端渲染
- Extbase 控制器扫描项目的图像文件夹
uploads/myExt/<Vendor>/<Serial>/
并发送该文件夹中的文件名数组(名称:imagesInFolder
)以及文件夹名称(名称:imageFolder
) 到模板
- 流体模板在
imagesInFolder
上循环:<f:for each="{imagesInFolder}" as="image">
- 在 Fluid 的
image
视图助手的帮助下,为每个图像渲染图像的缩略图:<f:image src="{item.imageFolder -> f:format.raw()}/{image}" maxWidth="193" maxHeight="145" />
问题是:
更改文件顺序时,仅更改文件名。但是在前端,顺序和以前一样,这是错误的。 _processed_
文件夹中已处理的缩略图不会更新。我尝试将文件的 mtime 和 ctime 更改为比处理后的文件更新,但没有任何改变。
当原始文件较新时,我如何告诉 TYPO3 重新渲染处理过的文件?
也许有一些 Fluid 的 TypoScript 设置可以执行此操作,但我没有找到。
也许有一些我可以在导入过程中调用的服务?
有一个名为 "File Abstraction Layer: Update storage index" 的计划程序任务,它扫描文件存储以查找新的或更改的文件。
确保任务启动的频率足够高。
总的来说:尽量避免替换或重命名文件,因为TYPO3会生成依赖文件和记录,都需要刷新。
注意还有另一个类似的任务:"File Abstraction Layer: Extract metadata in storage",可能需要在另一个之后调用。
以下情况:
- 自动导入项目:
- 项目的图像由一些 cron 任务 perl 更新到文件夹
uploads/myExt/<Vendor>/<Serial>/
(产品之间的供应商和序列号可能不同) - 图片有命名约定,每个产品都有自己的文件夹
- 命令脚本在命令行上启动,通过XML 文件获取产品数据;数据存储在数据库中 (Extbase
tx_myext_domain_model_item
)
- 项目的图像由一些 cron 任务 perl 更新到文件夹
- 前端渲染
- Extbase 控制器扫描项目的图像文件夹
uploads/myExt/<Vendor>/<Serial>/
并发送该文件夹中的文件名数组(名称:imagesInFolder
)以及文件夹名称(名称:imageFolder
) 到模板 - 流体模板在
imagesInFolder
上循环:<f:for each="{imagesInFolder}" as="image">
- 在 Fluid 的
image
视图助手的帮助下,为每个图像渲染图像的缩略图:<f:image src="{item.imageFolder -> f:format.raw()}/{image}" maxWidth="193" maxHeight="145" />
- Extbase 控制器扫描项目的图像文件夹
问题是:
更改文件顺序时,仅更改文件名。但是在前端,顺序和以前一样,这是错误的。 _processed_
文件夹中已处理的缩略图不会更新。我尝试将文件的 mtime 和 ctime 更改为比处理后的文件更新,但没有任何改变。
当原始文件较新时,我如何告诉 TYPO3 重新渲染处理过的文件?
也许有一些 Fluid 的 TypoScript 设置可以执行此操作,但我没有找到。
也许有一些我可以在导入过程中调用的服务?
有一个名为 "File Abstraction Layer: Update storage index" 的计划程序任务,它扫描文件存储以查找新的或更改的文件。
确保任务启动的频率足够高。
总的来说:尽量避免替换或重命名文件,因为TYPO3会生成依赖文件和记录,都需要刷新。
注意还有另一个类似的任务:"File Abstraction Layer: Extract metadata in storage",可能需要在另一个之后调用。