Zum Zeitpunkt dieses Artikels war gerade Typo3 8 LTS veröffentlicht.
Obwohl alles Richtung fluid_styled_content geht, scheint sich ein Relikt aus den Zeiten der pi-Base wacker gehalten zu haben: Der Fronted-User-Login (fe_login). Diese Core-Extension zum Authentifizieren von Frontend-Usern (fe_users) auf der Webseite setzt in den Templates immer noch auf die ###MARKER### Schreibweise.
So kann man eigene Marker in das Template von fe_login einschleusen:
ext_tables.php
// Hook für eigene Marker für fe_login
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['felogin']['postProcContent']['gwl_add_marker'] = 'Deine\Extension\Hooks\FeUserHook->addMarker';
TS-setup.ts
plugin.tx_felogin_pi1 {
// Pfad zum eigenen Template für fe_login
templateFile = EXT:deinding/Resources/Private/Templates/Felogin/FrontendLogin.html
// Beispiel für Variablen, die per TS gesetzt wurden.
settings {
pidMainPage = 354
}
}
Classes/Hooks/FeUserHook.php
namespace Deine\Extension\Hooks;
use TYPO3\CMS\Core\Utility\GeneralUtility;
class FeUserHook {
/**
* Fügt alle Settings als Marker für das FrontendLogin.html-Template ein
* im Stil von: ###settings.pidMainPage###
*
*/
public function addMarker ( $params, $_this ) {
$objectManager = GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Object\ObjectManager');
$cObj = $objectManager->get('TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer');
$settings = $GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_felogin_pi1.']['settings.'];
$marker = [];
foreach ($settings as $k=>$v) {
$marker["###settings.{$k}###"] = $v;
}
$content = $cObj->substituteMarkerArrayCached($params['content'], $marker);
return $content;
}
}
Resources/Private/Templates/Felogin/FrontendLogin.html
...
###settings.pidMainPage###
...