我仍在我更新的TYPO3 v6.2.7中使用piBased-Plugins - 安装。 从6.2。开始,我的小前端插件出现了一些问题。
我的插件只显示标题,链接和图片。如果在后端没有选择图像,我的插件不会在前端显示HTML输出:
<f:if condition="{imgTeaser}">
<f:image src="{imgTeaser}" alt="" />
</f:if>
但现在我收到了一个错误。 如果我上传图片一切都很好。但是如果没有图像,我将在后端和前端获得这些错误警告。
我如何更新我的piBASED-PLUGIN(FLEXFORM)? 图像或路径到图像一定存在问题。 我不是PHP程序员,所以我不知道..;)
“提供的文件对象类型TYPO3 \ CMS \ Core \ Resource \ Folder必须是File或FileReference。”
感谢您的帮助! 燕姿
-
堕落日志:
|在TCA中注册向导的方式在6.2中已更改。请设置module [name] = module_name,而不是在TCA中使用script = path / to / sctipt.php。以这种方式注册向导的可能性将在2个版本中删除。|
前端错误:
Supplied file object type TYPO3\CMS\Core\Resource\Folder must be File or FileReference.
和
09-12-14 10:56:
| TYPO3 \ CMS \ Core \ Utility \ GeneralUtility :: loadTCA() - 自6.1以来,将删除两个版本 - require(typo3 / sysext / cms / tslib / index_ts.php),index.php#28 / / TYPO3 \ CMS \ Core \ Core \ Bootstrap-&gt; loadExtensionTables#123 // TYPO3 \ CMS \ Core \ Utility \ ExtensionManagementUtility :: loadExtTables#925 // TYPO3 \ CMS \ Core \ Cache \ Frontend \ PhpFrontend-&gt; requireOnce# 1729 // TYPO3 \ CMS \ Core \ Cache \ Backend \ SimpleFileBackend-&gt; requireOnce#72 // require_once(typo3temp / Cache / Code / cache_core / ext_tables_8daea175f152090331d107ba834640863df1679e.php),typo3 / sysext / core / Classes / Cache / Backend / SimpleFileBackend .php#364 // TYPO3 \ CMS \ Core \ Utility \ GeneralUtility :: loadTCA#3183 // TYPO3 \ CMS \ Core \ Utility \ GeneralUtility :: logDeprecatedFunction#4167(typo3 / sysext / core / Classes / Utility / GeneralUtility.php #4165)|
我使用flexform将我的图片从插件上传到/ uploads-Folder,如下所示:
<image>
<TCEforms>
<label>LLL:EXT:my_modules/pi3/locallang_flex.xml:label.imgTeaser</label>
<config>
<type>group</type>
<internal_type>file</internal_type>
<allowed>jpg,png,gif</allowed>
<max_size>500000</max_size>
<uploadfolder>uploads/tx_mymodules/</uploadfolder>
<size>1</size>
<maxitems>1</maxitems>
<minitems>0</minitems>
<show_thumbs>1</show_thumbs>
</config>
</TCEforms>
</image>
PHP级:
class tx_mymodules_pi3 extends tslib_pibase {
...
var $imagePath = 'uploads/tx_mymodules/';
...
public function main($content, array $conf) {
$image = $this-> imagePath . $this->pi_getFFvalue($this->cObj->data['pi_flexform'], 'image', 'basicsheet');
...
$this->view->assign('imgTeaser', $image);
...
return ($content);
}
}
答案 0 :(得分:0)
我的FLUID模板错了。但我不知道为什么?!
当时:
<f:if condition="{imgTeaser}">
<f:image src="{imgTeaser}" alt="" />
</f:if>
现在:
<f:if condition="{imgTeaser}">
<f:image src="uploads/tx_mymodules/{imgTeaser}" alt="" />
</f:if>
在我的PHP CLass中:
var $imagePath = 'uploads/tx_mymodules/';
public function main($content, array $conf) {
...
$image = $this-> imagePath . $this->pi_getFFvalue($this->cObj->data['pi_flexform'], 'image', 'basicsheet');
...
}
更改为:
public function main($content, array $conf) {
...
$image = $this->pi_getFFvalue($this->cObj->data['pi_flexform'], 'image', 'basicsheet');
...
}
现在它有效!也许有人可以解释一下......谢谢