TIPO3:¿Cómo renderizo elementos de texto tt_content en mis propias extensiones?

StackOverflow https://stackoverflow.com/questions/71223

  •  09-06-2019
  •  | 
  •  

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?

¿Fue útil?

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>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top