Microtemplate para TYPO3
Micro-Template-Engine para TYPO3: Pequenos blocos de texto com substituição de variáveis. Mais simples que Fluid para tarefas simples de templating de strings.
Agendar reunião inicial gratuitaFluid ist manchmal Overkill, wenn man nur einen String mit Variablen füllen will
Nicht jedes Template-Problem braucht die volle Fluid-Engine. Wenn eine E-Mail-Betreffzeile “Hallo {name}, Ihre Bestellung #{orderNumber}” lauten soll oder ein Snippet im Footer “Letzte Aktualisierung: {date}” anzeigen soll, ist Fluid mit ViewHelpers, Layouts und Partials architektonischer Overhead. microtemplate liefert eine minimale Template-Engine für TYPO3, die Variablen in Textbausteinen ersetzt. Kein Fluid, kein TypoScript-Objekt-Pfad, kein Template-File. Ein String mit Platzhaltern, ein Array mit Werten, fertig.
Die Extension ist ein Nischenwerkzeug für Entwickler, die in Extensions oder TypoScript-Konfigurationen einfache String-Substitutionen brauchen, ohne die Fluid-Rendering-Pipeline zu starten. Für Redakteure ist microtemplate nicht direkt sichtbar, es arbeitet im Hintergrund als Utility. Der Anwendungsbereich ist bewusst eng: Wo Fluid die richtige Wahl für komplexe Templates mit Schleifen, Bedingungen und Vererbung ist, deckt microtemplate den simplen Fall ab, in dem ein fertiger String an drei Stellen einen dynamischen Wert braucht.
Cenários típicos de uso são E-Mail-Texte, dynamische Snippets und Konfigurations-Templates
Das häufigste Szenario ist die Generierung von E-Mail-Texten in Extensions. Eine Custom-Extension verschickt Bestätigungs-Mails, und der Betreff und Body sollen konfigurierbar sein, ohne dass der Entwickler Fluid-Templates anlegen muss. microtemplate liest den Text aus einer TypoScript-Konstante (“Bestellung #{orderNumber} bestätigt”) und ersetzt die Platzhalter mit den aktuellen Werten.
Zweites Szenario: Dynamische Text-Snippets in TypoScript-Konfigurationen. Ein Seitentitel-Pattern wie “{siteName} - {pageTitle} | {category}” wird über microtemplate aufgelöst. Das ist einfacher als ein COA mit mehreren TEXT-Objekten und stdWrap-Funktionen.
Drittes Szenario: Konfigurations-Templates für Third-Party-Integrationen. Wenn eine Extension einen API-Endpoint konfigurierbar macht (“https://api.example.com/{version}/users/{userId}”), kann microtemplate die Platzhalter vor dem API-Call ersetzen. Das ist besonders nützlich für Extensions, die mehrere API-Umgebungen (Staging, Production) unterstützen und die Endpoint-Struktur nicht im Code, sondern in der TypoScript-Konfiguration pflegen wollen.
Ein viertes Szenario, das in der Praxis gelegentlich auftaucht: Log-Nachrichten mit strukturiertem Format. Eine Extension schreibt “Import von {count} Datensätzen aus {source} abgeschlossen um {time}” ins TYPO3-Log. microtemplate macht den Log-Text konfigurierbar, ohne dass der Entwickler sprintf-Aufrufe mit positionsbasierten Argumenten pflegen muss.
Arquitetura técnica ist eine einzige PHP-Klasse mit String-Replacement
microtemplate besteht im Kern aus einer einzigen PHP-Klasse, die str_replace oder preg_replace auf einem Template-String ausführt. Die Platzhalter folgen einer definierbaren Syntax (Standard: {variableName}). Ein assoziatives Array liefert die Werte. Die Klasse hat keine Abhängigkeiten ausser dem PHP-String-Handling.
Die Integration in TYPO3 erfolgt über einen Service oder eine statische Methode, die in anderen Extensions oder TypoScript-Konfigurationen aufgerufen wird. Es gibt kein Frontend-Plugin, kein Backend-Modul und kein Content-Element. microtemplate ist reine Infrastruktur für Entwickler.
Die Performance ist vernachlässigbar: Ein str_replace auf einem 500-Zeichen-String mit 5 Variablen dauert weniger als 0,01ms. Im Vergleich dazu startet die Fluid-Engine für das gleiche Ergebnis einen vollständigen Rendering-Zyklus mit Template-Parsing, ViewHelper-Instanziierung und Caching, was bei 1 bis 5ms liegt. In einem typischen Page-Rendering-Prozess fällt dieser Unterschied nicht auf, aber in Schleifen, die 1.000 E-Mails oder 500 Log-Einträge generieren, wird der Performance-Vorteil messbar.
Die Extension hat keine Datenbank-Tabellen, keine Backend-Module und keine Frontend-Plugins. Sie wird über Composer oder den Extension-Manager installiert und ist sofort einsetzbar. Das macht microtemplate zu einer der leichtgewichtigsten Extensions im gesamten TER (TYPO3 Extension Repository).
Problemas frequentes sind fehlende Escaping-Logik, Syntax-Konflikte und mangelnde Dokumentation
Problem eins: Kein automatisches HTML-Escaping. microtemplate ersetzt Platzhalter 1:1, ohne den eingesetzten Wert zu escapen. Wenn ein Nutzername HTML-Tags enthält (“”), wird das direkt in den Output geschrieben. A solução: Werte vor dem Einsetzen manuell escapen (htmlspecialchars) oder microtemplate nur für interne, nicht nutzergenerierte Daten verwenden.
Problem zwei: Syntax-Konflikte mit Fluid. Wenn microtemplate-Platzhalter ({variable}) in einem Kontext verwendet werden, in dem auch Fluid rendert, versucht Fluid die Platzhalter aufzulösen und wirft einen Fehler. A solução: Unterschiedliche Platzhalter-Syntax verwenden (z.B. {{variable}} oder %variable%) oder sicherstellen, dass microtemplate vor Fluid ausgeführt wird.
Problem drei: Mangelnde Dokumentation und Community-Support. microtemplate ist eine Nischen-Extension mit minimaler Nutzerbasis. Bei Problemen gibt es keine aktive Community, kein Issue-Tracking und keine Stack-Overflow-Antworten. Entwickler müssen den Quellcode lesen, um das Verhalten zu verstehen. Na prática führt das dazu, dass jeder Entwickler im Team die Extension anders nutzt, weil keine Konventionen dokumentiert sind.
Ein weiteres Thema: Debugging. Wenn ein Platzhalter nicht ersetzt wird, weil der Key im Array nicht exakt mit dem Platzhalter-Namen übereinstimmt (Gross-/Kleinschreibung, Leerzeichen), gibt microtemplate keine Warnung aus. Der Platzhalter bleibt einfach stehen, und der Entwickler sucht den Fehler an der falschen Stelle. Ein Debug-Modus, der nicht aufgelöste Platzhalter loggt, wäre hilfreich, fehlt aber.
Die Extension ist TYPO3-versionsunabhängig, aber für moderne Projekte gibt es bessere Alternativen
Da microtemplate nur Standard-PHP-Funktionen nutzt, funktioniert die Extension prinzipiell mit jeder TYPO3-Version von v7 bis v13. Die Frage ist eher, ob sie noch nötig ist: Seit PHP 8.0 bietet Named Arguments in Kombination mit sprintf oder str_replace die gleiche Funktionalität ohne Extension. Für komplexere Templates ist Fluid trotz des Overheads die bessere Wahl, weil es Caching, Escaping und Template-Vererbung mitbringt. A Gosign utiliza microtemplate in Bestandsprojekten nicht aktiv ein und empfiehlt bei Neuimplementierungen, die Funktionalität direkt in der eigenen Extension oder im TypoScript über stdWrap abzubilden.
Reunião inicial gratuita: 30 minutos com um especialista TYPO3
Analisamos seu projeto, estimamos esforço e prazo - sem compromisso, sem preparação.
Fale sobre projeto, 30 min, gratuito25 anos de experiência em TYPO3 · mais de 800 extensões analisadas · desenvolvimento acelerado por IA
Desenvolvimento acelerado por IA: 65% mais rápido
Atualização TYPO3 e auditoria LGPD
Atualizamos sua instalação TYPO3 de forma econômica para a versão LTS atual - incluindo todas as extensões, mesmo as obsoletas e sem manutenção.
Todas as extensões migradas
Também obsoletas, sem manutenção ou desenvolvimentos próprios.
Oferta de preço fixo
Custos transparentes, sem retrabalhos escondidos.
Acelerado por IA
30-50% mais barato que o mercado graças à análise de código assistida por IA.
Zero perda de dados
Migração completa com backup e rollback.
Auditoria LGPD: Auditamos sua instalação TYPO3 quanto à conformidade com a LGPD - consentimento de cookies, rastreamento, extensões, formulários e hospedagem - e implementamos todas as medidas de forma econômica.
A Gosign é uma agência digital sediada em Hamburgo com 25 anos de experiência em desenvolvimento TYPO3. Analisamos mais de 800 extensões TYPO3 e hoje desenvolvemos com assistência de IA até 70% mais rápido que com métodos clássicos. Nossos clientes são empresas de médio porte, universidades e instituições públicas em toda a Europa.
Atualizado: abril 2026
Agendar reunião inicial gratuita
30 minutos com um especialista TYPO3, sem compromisso.