Опечатка 3:Как мне визуализировать текстовые элементы tt_content в моих собственных расширениях?
Вопрос
В настоящее время я пишу расширение TYPO3, которое настроено со списком tt_content
UID.Они указывают на элементы контента типа «текст», и я хочу визуализировать их с помощью своего расширения.
Из-за особого способа TYPO3 преобразования текста, который вы вводите при редактировании форматированного текста, когда он поступает в базу данных, и повторного преобразования его при визуализации во внешнем интерфейсе, я не могу просто вывести содержимое базы данных bodytext
поле.
Я хочу визуализировать эти тексты так, как они обычно визуализируются в TYPO3.Как мне это сделать?
Решение
У меня была такая же проблема пару месяцев назад.Теперь я должен сказать, что я не разработчик typo3, поэтому не знаю, правильное ли это решение.
Но я использовал что-то вроде этого:
$output .= $this->pi_RTEcssText( $contentFromDb );
в моем расширении, и оно работает.
Другие советы
PHP
Это подходит для меня;он отображает любой элемент контента с данным идентификатором:
function getCE($id)
{
$conf['tables'] = 'tt_content';
$conf['source'] = $id;
$conf['dontCheckPid'] = 1;
return $GLOBALS['TSFE']->cObj->cObjGetSingle('RECORDS', $conf);
}
Видеть http://lists.typo3.org/pipermail/typo3-dev/2007-May/023467.html
Это работает и для некэшируемых плагинов.Вы получите строку типа <!--INT_SCRIPT.0f1c1787dc3f62e40f944b93a2ad6a81-->
, но TYPO3 заменит его на следующем проходе рендеринга INT реальным содержимым.
Жидкость
Если вы используете гибкий шаблон, VHS content.render
просмотреть помощник Полезно:
<v:content.render contentUids="{0: textelementid}"/>
Если ваш элемент Liquidcontent сам имеет сетку, вы можете визуализировать элементы с помощью собственного Flux. content.get
или content.render
просмотреть помощник:
<f:section name="Configuration>
... <flux:grid.column name="teaser"/> ...
</f:section>
<f:section name="Main>
<flux:content.render area="teaser"/>
<f:section>