templates - template - usar blade sin laravel
¿Cómo renderizar una plantilla de vista Fuid sin Extbase? I. e una plantilla de correo electrónico por eID (1)
Aquí hay una función simple que escribí para renderizar mis plantillas.
/**
* Renders the fluid email template
* @param string $template
* @param array $assign
* @return string
*/
public function renderFluidTemplate($template, Array $assign = array()) {
$templatePath = /TYPO3/CMS/Core/Utility/GeneralUtility::getFileAbsFileName(''EXT:myextension/Resources/Private/Templates/'' . $template);
$view = /TYPO3/CMS/Core/Utility/GeneralUtility::makeInstance(''TYPO3//CMS//Fluid//View//StandaloneView'');
$view->setTemplatePathAndFilename($templatePath);
$view->assignMultiple($assign);
return $view->render();
}
echo renderFluidTemplate(''mail.html'', array(''test'' => ''This is a test!''));
Y la plantilla de fluido en typo3conf / ext / mytemplate / Resources / Private / Templates / mail.html podría verse así:
Hello
{test}
Con la salida
Hello
This is a test!
¿Necesita diseños y parciales?
/**
* Returns the rendered fluid email template
* @param string $template
* @param array $assign
* @param string $ressourcePath
* @return string
*/
public function renderFluidTemplate($template, Array $assign = array(), $ressourcePath = NULL) {
$ressourcePath = /TYPO3/CMS/Core/Utility/GeneralUtility::getFileAbsFileName($ressourcePath === NULL ? ''EXT:myextension/Resources/Private/'' : $ressourcePath);
/* @var $view /TYPO3/CMS/Fluid/View/StandaloneView */
$view = /TYPO3/CMS/Core/Utility/GeneralUtility::makeInstance(''TYPO3//CMS//Fluid//View//StandaloneView'');
$view->setLayoutRootPath($ressourcePath . ''Layouts/'');
$view->setPartialRootPath($ressourcePath . ''Partials/'');
$view->setTemplatePathAndFilename($ressourcePath . ''Templates/'' . $template);
$view->assignMultiple($assign);
return $view->render();
}
Deseo enviar un correo electrónico mediante una secuencia de comandos eID TYPO3 utilizando un archivo de plantilla Fluid para representar el cuerpo del correo. No pude encontrar una forma sencilla de inicializar una Fuid View fuera del contexto MVC Extbase normal. Todas las fuentes que encontré parecían desactualizadas y muy complejas.
Entonces, ¿qué se necesita para generar una plantilla fluida?