SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
FLUID POWERED TYPO3Presented by Christof Rodejohann /
TYPO3 Developer at
@UrsaBerlin
Sächsische Landesbibliothek – Staats- und Universitätsbibliothek Dresden
More detailed informations and source of this presentation: /http://www.fedext.net
@FluidPoweredT3
A FAMILY OF EXTENSIONS
FlexForm engine, Page Template engine, Content Element
engine and many ViewHelpers, Service and content
collections
flux
vhs
fluidcontentfluidpages
fed
fluidpages_bootstrap
fluidcontent_bootstrap
fluidcontent_fed
dialog
notify
fluidwidget
viewschemaker
extbase_realurl google_auth
tool uncache sysutils
dropbox_sync
FLUX
Very dynamic Flex Forms to be written directly into specialised Fluid templates.
Used by extension developers and template developers as
development tool to create configuration inside Fluid
templates.
Used by extension developers to allow any plugin which
renders a Fluid template to be able to contain other
content elements.
VHS
Extensive library of ViewHelpers which allow advanced formatting, array/iterator analysis and
manipulation.
A large collection of ViewHelpers.
No scripts, no stylesheets - just ViewHelpers.
No configuration to be included, no DB changes.
Documentation:
173 ViewHelpers.
http://fedext.net/viewhelpers/vhs.html
VHS
Example ViewHelpers.
v:format.replace
Replaces $substring in $content with $replacement.
v:media.exists
File/Directory Exists Condition ViewHelper
v:content.render
ViewHelper used to render content elements in Fluid page templates
Many many more ...
FLUIDPAGES
Templating engine designed for Fluid templates.
It uses specially registered and constructed Fluid templates as page templates.
Also enables integration between the Fluid Page template and Backend Layouts (TYPO3 6 needed)
FLUIDCONTENT
Content rendering engine - a content plugin which renders Fluid templates as content elements.
Flux is used to allow dynamic configuration as well as support nested content elements.
FLUIDPAGES
KONFIGURATION
plugin.tx_fed {
page.UNIQUENAME {
templateRootPath = EXT:EXTENSIONKEY/Resources/Private/Pages/
partialRootPath = EXT:EXTENSIONKEY/Resources/Private/Partials/
layoutRootPath = EXT:EXTENSIONKEY/Resources/Private/Layouts/
}
}
Beware: templateRootPath gets automagically /Page/ added to the path
A PAGE WITH TWO COLUMNS
{namespace flux=Tx_Flux_ViewHelpers}
{namespace v=Tx_Vhs_ViewHelpers}
<f:layout name="Default"></f:layout>
<f:section name="Configuration">
<flux:flexform id="two-col" label="Two Cols">
<flux:flexform.grid>
<flux:flexform.grid.row>
<flux:flexform.grid.column colpos="1" name="Linke Spalte"></flux:fl
<flux:flexform.grid.column colpos="2" name="Rechte Spalte"></flux:f
</flux:flexform.grid.row>
</flux:flexform.grid>
</flux:flexform>
</f:section>
<f:section name="Content">
<div class="content-links">
<v:page.content.render column="1"></v:page.content.render>
</div>
<div class="content-rechts">
<v:page.content.render column="2"></v:page.content.render>
</div>
</f:section>
VERY BASIC LAYOUT USED
<f:layout name="Default"></f:layout>
<div class="container">
<f:render section="Content"></f:render>
</div>
FLUIDCONTENT
KONFIGURATION
plugin.tx_fed {
fce.UNIQUENAME {
label = Main label for this set of CE
templateRootPath = EXT:EXTENSIONKEY/Resources/Private/Elements/
partialRootPath = EXT:flux/Resources/Private/Partials/
layoutRootPath = EXT:fluidcontent/Resources/Private/Layouts/
}
}
Default partial and layout pathes can be overwritten if needed
A CONTENT ELEMENT WITH 2 COLS
{namespace flux=Tx_Flux_ViewHelpers}
<f:layout name="Content"></f:layout>
<f:section name="Configuration">
<flux:flexform wizardtab="Tabname" id="unique-id" label="2 Spalten" description
<flux:flexform.grid>
<flux:flexform.grid.row>
<flux:flexform.grid.column>
<flux:flexform.content name="content" label="Linker Inhalt"></f
</flux:flexform.grid.column>
<flux:flexform.grid.column>
<flux:flexform.content name="content2" label="Rechter Inhalt"><
</flux:flexform.grid.column>
</flux:flexform.grid.row>
</flux:flexform.grid>
</flux:flexform>
</f:section>
<f:section name="Preview">
<flux:widget.grid></flux:widget.grid>
</f:section>
<f:section name="Main">
<div class="links">
<flux:flexform.rendercontent area="content"></flux:flexform.rendercontent>
</div>
<div class="rechts">
<flux:flexform.rendercontent area="content2"></flux:flexform.rendercontent>
</div>
</f:section>
A CONTENT ELEMENT WITH FLEXIBLE COLS
{namespace flux=Tx_Flux_ViewHelpers}
{namespace v=Tx_Vhs_ViewHelpers}
<f:layout name="Content"></f:layout>
<f:section name="Configuration">
<flux:flexform wizardtab="Tabname" id="flexible-cols" label="Flexible Spalten"
<flux:flexform.sheet name="cols" label="Cols">
<flux:flexform.section name="cols" label="Cols">
<flux:flexform.object name="col" label="Col">
<flux:flexform.field.input name="title" label="Col title"></flu
</flux:flexform.object>
</flux:flexform.section>
</flux:flexform.sheet>
<flux:flexform.grid>
<flux:flexform.grid.row>
<f:if condition="{cols}">
<f:for each="{cols}" as="col" iteration="iteration">
<flux:flexform.grid.column style="width: {v:math.division(b
<flux:flexform.content name="content.{iteration.index}"
</flux:flexform.grid.column>
</f:for>
</f:if>
</flux:flexform.grid.row>
</flux:flexform.grid>
</flux:flexform>
</f:section>
<f:section name="Preview">
DANKE

Mais conteúdo relacionado

Semelhante a Fluid powered TYPO3

Websites Unlimited - Pay Monthly Websites
Websites Unlimited - Pay Monthly WebsitesWebsites Unlimited - Pay Monthly Websites
Websites Unlimited - Pay Monthly Websiteswebsiteunlimited
 
Stefaan Ponnet, Fusebox
Stefaan Ponnet, FuseboxStefaan Ponnet, Fusebox
Stefaan Ponnet, Fuseboxnascomgenk
 
Digital Fabrication Studio v.0.2: Information
Digital Fabrication Studio v.0.2: InformationDigital Fabrication Studio v.0.2: Information
Digital Fabrication Studio v.0.2: InformationMassimo Menichinelli
 
Digital Fabrication Studio.02 _Information @ Aalto Media Factory
Digital Fabrication Studio.02 _Information @ Aalto Media FactoryDigital Fabrication Studio.02 _Information @ Aalto Media Factory
Digital Fabrication Studio.02 _Information @ Aalto Media FactoryMassimo Menichinelli
 
Extending Alfresco Share 3.3
Extending Alfresco Share 3.3Extending Alfresco Share 3.3
Extending Alfresco Share 3.3Will Abson
 
Creating a Wiki-Based Online Help System (Abridged)
Creating a Wiki-Based Online Help System (Abridged)Creating a Wiki-Based Online Help System (Abridged)
Creating a Wiki-Based Online Help System (Abridged)Rand McKinney
 
Aswc2009 Smw Tutorial Part 3 Halo Extension
Aswc2009 Smw Tutorial Part 3 Halo ExtensionAswc2009 Smw Tutorial Part 3 Halo Extension
Aswc2009 Smw Tutorial Part 3 Halo ExtensionJesse Wang
 
Day 2-presentation
Day 2-presentationDay 2-presentation
Day 2-presentationDeb Forsten
 
SharePoint 2010 For Developers
SharePoint 2010 For DevelopersSharePoint 2010 For Developers
SharePoint 2010 For DevelopersSparked
 
Fundamentals of web_design_v2
Fundamentals of web_design_v2Fundamentals of web_design_v2
Fundamentals of web_design_v2hussain534
 

Semelhante a Fluid powered TYPO3 (20)

PoolParty 2010
PoolParty 2010PoolParty 2010
PoolParty 2010
 
AtoZ about TYPO3 v8 CMS
AtoZ about TYPO3 v8 CMSAtoZ about TYPO3 v8 CMS
AtoZ about TYPO3 v8 CMS
 
Flask
FlaskFlask
Flask
 
Websites Unlimited - Pay Monthly Websites
Websites Unlimited - Pay Monthly WebsitesWebsites Unlimited - Pay Monthly Websites
Websites Unlimited - Pay Monthly Websites
 
Creation&imitation
Creation&imitationCreation&imitation
Creation&imitation
 
Stefaan Ponnet, Fusebox
Stefaan Ponnet, FuseboxStefaan Ponnet, Fusebox
Stefaan Ponnet, Fusebox
 
Alfresco Architecture
Alfresco ArchitectureAlfresco Architecture
Alfresco Architecture
 
Digital Fabrication Studio v.0.2: Information
Digital Fabrication Studio v.0.2: InformationDigital Fabrication Studio v.0.2: Information
Digital Fabrication Studio v.0.2: Information
 
cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)cakephp UDUYKTHA (1)
cakephp UDUYKTHA (1)
 
sveltekit-en.pdf
sveltekit-en.pdfsveltekit-en.pdf
sveltekit-en.pdf
 
Digital Fabrication Studio.02 _Information @ Aalto Media Factory
Digital Fabrication Studio.02 _Information @ Aalto Media FactoryDigital Fabrication Studio.02 _Information @ Aalto Media Factory
Digital Fabrication Studio.02 _Information @ Aalto Media Factory
 
Extending Alfresco Share 3.3
Extending Alfresco Share 3.3Extending Alfresco Share 3.3
Extending Alfresco Share 3.3
 
Creating a Wiki-Based Online Help System (Abridged)
Creating a Wiki-Based Online Help System (Abridged)Creating a Wiki-Based Online Help System (Abridged)
Creating a Wiki-Based Online Help System (Abridged)
 
Mla Databases
Mla DatabasesMla Databases
Mla Databases
 
Wordpress
WordpressWordpress
Wordpress
 
Wordpress
WordpressWordpress
Wordpress
 
Aswc2009 Smw Tutorial Part 3 Halo Extension
Aswc2009 Smw Tutorial Part 3 Halo ExtensionAswc2009 Smw Tutorial Part 3 Halo Extension
Aswc2009 Smw Tutorial Part 3 Halo Extension
 
Day 2-presentation
Day 2-presentationDay 2-presentation
Day 2-presentation
 
SharePoint 2010 For Developers
SharePoint 2010 For DevelopersSharePoint 2010 For Developers
SharePoint 2010 For Developers
 
Fundamentals of web_design_v2
Fundamentals of web_design_v2Fundamentals of web_design_v2
Fundamentals of web_design_v2
 

Último

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 

Último (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 

Fluid powered TYPO3

  • 1. FLUID POWERED TYPO3Presented by Christof Rodejohann / TYPO3 Developer at @UrsaBerlin Sächsische Landesbibliothek – Staats- und Universitätsbibliothek Dresden More detailed informations and source of this presentation: /http://www.fedext.net @FluidPoweredT3
  • 2. A FAMILY OF EXTENSIONS FlexForm engine, Page Template engine, Content Element engine and many ViewHelpers, Service and content collections flux vhs fluidcontentfluidpages fed fluidpages_bootstrap fluidcontent_bootstrap fluidcontent_fed dialog notify fluidwidget viewschemaker extbase_realurl google_auth tool uncache sysutils dropbox_sync
  • 3. FLUX Very dynamic Flex Forms to be written directly into specialised Fluid templates. Used by extension developers and template developers as development tool to create configuration inside Fluid templates. Used by extension developers to allow any plugin which renders a Fluid template to be able to contain other content elements.
  • 4. VHS Extensive library of ViewHelpers which allow advanced formatting, array/iterator analysis and manipulation. A large collection of ViewHelpers. No scripts, no stylesheets - just ViewHelpers. No configuration to be included, no DB changes. Documentation: 173 ViewHelpers. http://fedext.net/viewhelpers/vhs.html
  • 5. VHS Example ViewHelpers. v:format.replace Replaces $substring in $content with $replacement. v:media.exists File/Directory Exists Condition ViewHelper v:content.render ViewHelper used to render content elements in Fluid page templates Many many more ...
  • 6. FLUIDPAGES Templating engine designed for Fluid templates. It uses specially registered and constructed Fluid templates as page templates. Also enables integration between the Fluid Page template and Backend Layouts (TYPO3 6 needed)
  • 7. FLUIDCONTENT Content rendering engine - a content plugin which renders Fluid templates as content elements. Flux is used to allow dynamic configuration as well as support nested content elements.
  • 9. KONFIGURATION plugin.tx_fed { page.UNIQUENAME { templateRootPath = EXT:EXTENSIONKEY/Resources/Private/Pages/ partialRootPath = EXT:EXTENSIONKEY/Resources/Private/Partials/ layoutRootPath = EXT:EXTENSIONKEY/Resources/Private/Layouts/ } } Beware: templateRootPath gets automagically /Page/ added to the path
  • 10. A PAGE WITH TWO COLUMNS {namespace flux=Tx_Flux_ViewHelpers} {namespace v=Tx_Vhs_ViewHelpers} <f:layout name="Default"></f:layout> <f:section name="Configuration"> <flux:flexform id="two-col" label="Two Cols"> <flux:flexform.grid> <flux:flexform.grid.row> <flux:flexform.grid.column colpos="1" name="Linke Spalte"></flux:fl <flux:flexform.grid.column colpos="2" name="Rechte Spalte"></flux:f </flux:flexform.grid.row> </flux:flexform.grid> </flux:flexform> </f:section> <f:section name="Content"> <div class="content-links"> <v:page.content.render column="1"></v:page.content.render> </div> <div class="content-rechts"> <v:page.content.render column="2"></v:page.content.render> </div> </f:section>
  • 11. VERY BASIC LAYOUT USED <f:layout name="Default"></f:layout> <div class="container"> <f:render section="Content"></f:render> </div>
  • 13. KONFIGURATION plugin.tx_fed { fce.UNIQUENAME { label = Main label for this set of CE templateRootPath = EXT:EXTENSIONKEY/Resources/Private/Elements/ partialRootPath = EXT:flux/Resources/Private/Partials/ layoutRootPath = EXT:fluidcontent/Resources/Private/Layouts/ } } Default partial and layout pathes can be overwritten if needed
  • 14. A CONTENT ELEMENT WITH 2 COLS {namespace flux=Tx_Flux_ViewHelpers} <f:layout name="Content"></f:layout> <f:section name="Configuration"> <flux:flexform wizardtab="Tabname" id="unique-id" label="2 Spalten" description <flux:flexform.grid> <flux:flexform.grid.row> <flux:flexform.grid.column> <flux:flexform.content name="content" label="Linker Inhalt"></f </flux:flexform.grid.column> <flux:flexform.grid.column> <flux:flexform.content name="content2" label="Rechter Inhalt">< </flux:flexform.grid.column> </flux:flexform.grid.row> </flux:flexform.grid> </flux:flexform> </f:section> <f:section name="Preview"> <flux:widget.grid></flux:widget.grid> </f:section> <f:section name="Main"> <div class="links"> <flux:flexform.rendercontent area="content"></flux:flexform.rendercontent> </div> <div class="rechts"> <flux:flexform.rendercontent area="content2"></flux:flexform.rendercontent> </div> </f:section>
  • 15. A CONTENT ELEMENT WITH FLEXIBLE COLS {namespace flux=Tx_Flux_ViewHelpers} {namespace v=Tx_Vhs_ViewHelpers} <f:layout name="Content"></f:layout> <f:section name="Configuration"> <flux:flexform wizardtab="Tabname" id="flexible-cols" label="Flexible Spalten" <flux:flexform.sheet name="cols" label="Cols"> <flux:flexform.section name="cols" label="Cols"> <flux:flexform.object name="col" label="Col"> <flux:flexform.field.input name="title" label="Col title"></flu </flux:flexform.object> </flux:flexform.section> </flux:flexform.sheet> <flux:flexform.grid> <flux:flexform.grid.row> <f:if condition="{cols}"> <f:for each="{cols}" as="col" iteration="iteration"> <flux:flexform.grid.column style="width: {v:math.division(b <flux:flexform.content name="content.{iteration.index}" </flux:flexform.grid.column> </f:for> </f:if> </flux:flexform.grid.row> </flux:flexform.grid> </flux:flexform> </f:section> <f:section name="Preview">
  • 16. DANKE