TIPO3:¿Cómo renderizo elementos de texto tt_content en mis propias extensiones?
Pregunta
Actualmente estoy escribiendo una extensión TYPO3 que está configurada con una lista de tt_content
UID.Estos apuntan a elementos de contenido de tipo "texto" y quiero representarlos mediante mi extensión.
Debido a la forma especial que tiene TYPO3 de transformar el texto que ingresa en la edición de texto enriquecido cuando ingresa a la base de datos, y transformarlo nuevamente cuando se representa en la interfaz, no puedo simplemente generar el contenido de la base de datos del bodytext
campo.
Quiero renderizar estos textos como normalmente los renderizaría TYPO3.¿Cómo puedo hacer eso?
Solución
Tuve el mismo problema hace un par de meses.Ahora debo decir que no soy desarrollador de typo3, así que no sé si esta es la solución correcta.
Pero usé algo como esto:
$output .= $this->pi_RTEcssText( $contentFromDb );
en mi extensión y funciona.
Otros consejos
PHP
Funciona para mi;representa cualquier elemento de contenido con el ID dado:
function getCE($id)
{
$conf['tables'] = 'tt_content';
$conf['source'] = $id;
$conf['dontCheckPid'] = 1;
return $GLOBALS['TSFE']->cObj->cObjGetSingle('RECORDS', $conf);
}
Ver http://lists.typo3.org/pipermail/typo3-dev/2007-May/023467.html
Esto también funciona para complementos que no están almacenados en caché.Obtendrás una cadena como <!--INT_SCRIPT.0f1c1787dc3f62e40f944b93a2ad6a81-->
, pero TYPO3 lo reemplazará en el próximo pase de renderizado INT con el contenido real.
Líquido
Si estás en una plantilla fluida, el VHS content.render
ver ayudante es útil:
<v:content.render contentUids="{0: textelementid}"/>
Si su elemento de contenido fluido tiene una cuadrícula, puede renderizar los elementos con el propio flujo. content.get
o content.render
ver ayudante:
<f:section name="Configuration>
... <flux:grid.column name="teaser"/> ...
</f:section>
<f:section name="Main>
<flux:content.render area="teaser"/>
<f:section>