TYPO3 6 以降、メソッド " function getContentObject($name)
" は *typo3\sysext\cms\tslib\class.tslib_content.php* にありました。
このファイルの内容:
/*
* @deprecated since 6.0, the classname tslib_cObj and this file is obsolete
* and will be removed with 6.2. The class was renamed and is now located at:
* typo3/sysext/frontend/Classes/ContentObject/ContentObjectRenderer.php
*/
require_once \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('frontend') . 'Classes/ContentObject/ContentObjectRenderer.php';
しかし、私の問題を含む古いファイルと新しいファイルの間に違いは見られません。
tt_content-entry "native" のファイル参照を取得する方法がわからなかったので、SQL クエリを作成しました。
public function bla() {
// get data of the content object
$this->contentObj = $this->configurationManager->getContentObject();
$data = $this->contentObj->data;
// Neu ab Typo3 6.0.3 -> Bild in tt_content-Object wird nicht mehr mit zurueckgeliefert, daher:
// https://forge.typo3.org/issues/46090
// http://stackoverflow.com/questions/15250351/missing-image-in-typo3-this-contentobj-in-6-0-3
$res = $GLOBALS['TYPO3_DB']->sql_query(
'select sys_file.identifier from sys_file_reference left join sys_file on sys_file_reference.uid_local = sys_file.uid where sys_file_reference.uid_foreign='.$data['uid'].' and sys_file_reference.deleted=0'
);
while ($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
$data['image'] = $row['identifier'];
}
#print_r($data);
// assign the data to the fluid template
$this->view->assign('data', $data);
}