TemplaVoilà! Plus (TV+) is an extension for the TYPO3 content management system which adds an easy way to extend content elements and rendering to templates in Backend and Frontend. It is the follow up of the popular TemplaVoilà! extension from Kasper Skårhøj prepared for modern versions of TYPO3.
We are using crowdin for translation handling. Please visit https://crowdin.com/project/typo3-extension-templavoilaplu to check state. You can also help there to fix issues. But also our complete documentation needs a rewrite, please help there.
The next TV+ release will be v12, starting with 12.0.0 as first alpha release. It will support TYPO3 v12 LTS.
- The point-and-click mapper as XPath mapping have no feature.
- MultiLanguage as this is very hard and partly confuse, we need a "data donation" for this. Also this isn't realy a core compatible way and so Language Fallback Support isn't easy possible.
- Workspace Support is only somewhat tested, it may be buggy it may be working.
- Documentation and translation parts, please help here.
- Compatible with TYPO3 v8 to v11 (with TV+ v8) or with TYPO3 v12 (with TV+ 12)
- No database records for templates and structures anymore, which helps on servers which use deployments and prepare this rollouts on testing/staging systems.
- Split frontend between data organization and rendering, this allows us to integrate different templating engines like fluid.
- Backend written with fluid templates, which allows us to use fluid templates for the backend layouts or backend previews, instead of the marker based templates.
- Also the good old XPathRenderer got small features which help on recursive data handling.
- Using places, so we could create theme extensions like em_tvplus_theme_demo or UIkit theme which will extensible with your own extension.
- Supporting fluid templating in frontend beside old XPath and marker based templating.
Nobody knows and it depends on the requests from outside, from the community, from you.
The handling of configuration is done inside directories called "Places". This is needed, as we want later, that you can install a base theme and extend/overwrite it partially with your own configuration data. The old configuration parts, DataStructure and TemplateObject, have been rearranged. TV+ uses now four configuration types DataConfiguration (with the clean core DataStructure), MappingConfiguration, TemplateConfiguration and BackendLayoutConfiguration. This allows for a better reusage of configuration parts and the possibility to configure different output renderer. All old entry points to extend TV+ are removed at the moment and some complete new are arising, for example the LoadSaveHandlers, which enables you to write an own configuration loader/saver for your configuration files and your own super duper configuration file format. Please take a look inside the two theme extensions or check the extension which is created while migration to understand how it looks and how it works.
The TV+ Control Center resides in the admin tools section, it includes the "Update Script" to start the migration process. The "Update Script" checks first your system and tells you as much as possible what and how it does. At the end a theme extension will be generated which includes all needed parts for the installation. Afterwards you need to update your TypoScript for starting frontend output. All together can be found in the documentation. If you use deployment strategie you don't have to run the complete migration again, the information for database migration is saved in an json file, a "Server Migration Script" will show up for this.
- em_tvplus_theme_demo - Demo theme using XPath Renderer
- UIkit theme - Theme using the Fluid Renderer and the UIkit inside frontend output
- If you need one of the following things, we would need a data donation from your system (from the tx_templavoilaplus_* tables and StaticDS files if you have), so we can't test this and try to work on a solution.
- Update script for multiple storage pids
- Multilanguage editing support for lDEF/vDEF systems (Systems which use the TemplaVoilà! language things and not the core ones a.k.a. langDisable/langChildren)