1

我正在尝试在typo3 页面中使用页面内容图像。我上传了 2 张图片,在 DB 中只存储了文件名。

好的 - 我在上传目录中找到了图片!但是现在我必须如何显示图像?!

我可以对上传目录 url 进行 hrdcode 并从 db 添加文件名,但这真的很丑而且不灵活。

我尝试使用<f:image />但没有机会,因为它需要一个资源路径?!好的 - 我找到了资源目录,但我无法从 cms 中的标准typo3 页面上传图像。

<f:image />对我来说真的很有用,因为我需要显示不同尺寸的图像并裁剪它们。这一切都在 ViewHelper 中实现,但我不能告诉 ViewHelper 在上传目录中拍摄我的图像。

请帮助我如何使用页面上的图像。页面内容上的图片上传菜单在后端非常有用,但我无法在前端显示结果。

4

2 回答 2

1

尝试使用这样的东西:<f:image src="uploads/tx_extensionname/{object.image}" alt="foo" title="bar" maxHeight="50" />

请参阅流体 Wiki 页面

于 2011-12-23T15:47:25.077 回答
1

如果上传目录设置在 中TCA columns config (uploadfolder),您可以编写自己的 viewHelper并获取上传目录,例如

/**
 * @param Tx_(extkey)_Domain_Model_(entity class) $entity 
 * @return string rendered image tags
 */
public function render($entity) {

    $html = '';

    $GLOBALS['TSFE']->includeTCA();
    $uploadfolder = $GLOBALS['TCA']['tx_(extkey)_domain_model_(entity class)']['columns']['(column_name)']['config']['uploadfolder'];

    $images = explode(',', $entity->getImages());

    foreach ($images as $image) {
        $html .= $this->getImageTag($uploadfolder, $image, $width);
    }

    return $html;
}

查看用于格式化图像标签的代码的Tx_Fluid_ViewHelpers_ImageViewHelper类(尤其是render方法)。

于 2012-06-07T11:00:42.193 回答