Send the link below via email or IMCopy
Present to your audienceStart remote presentation
- Invited audience members will follow you as you navigate and present
- People invited to a presentation do not need a Prezi account
- This link expires 10 minutes after you close the presentation
- A maximum of 30 users can follow your presentation
- Learn more about this feature in our knowledge base article
Transcript of DXA Extensibility
How to customize and extend for customer implementations
1.0 or 2.0
You can use CT Metadata to route the processing of Component Presentations to custom controllers other than the default EntityController
(demo - Search Controller)
Search, SmartTarget, Broker Queries, Product Data...
The Content Provider is responsible for the loading and transformation of content models from the underlying domain (CMS)
(demo - show interface & configuration)
If a customer doesn't want to use DD4T, you could publish content in another format, and create your own Content Provider to load and transform this data into the DXA View Models
The Content Resolver takes care of any additional resolving required when mapping the domain (CMS) models to the presentation (View) models (mapping templates to views, link/RTF resolving)
(demo - interface and configuration)
You might want to extend the logic for resolving RTF content (for example embedding linked content), or alter the behaviour of dynamic linking (resolving DCP links to special URLs)
Defines screen breakpoints for responsive design and generation of responsive URLs for media items (images, videos etc.)
(demo - interface and configuration)
DXA has two implementations of this for native image resizing and Contextual Image Delivery. You could extend to create media URLs which map to a CDN
The Content Provider uses a set of Model Builders to map the domain model to the view models.
(demo - interface, content provider)
You could extend the default Builder, or create a custom Model Builder for a very complex model, that required content transformations not handled by the default model builder logic.
DD4T Content Provider does not implement GetEntityModel and GetEntityContent (DCPs)
TRI 2.0 has additional
method, which can be used for conditional rendering of CPs
This extension pattern is documented at:
The 2.0 Difference
- run many sites in one web app
Page Model fully
Zero-code syndication of view models in
Extension point for
Conditional CP rendering
Does DXA change the way we do projects?
Install it with the out-of-the-box configuration.
Perfect for POC
"Good" customers get familiar with Tridion
End-to-end working system from day 1
Don't edit the existing site, content, schemas, templates etc. - implement your own so you:
Always have a working example
Can upgrade - see new features
(tip - there is an undocumented website-only installer option)
For some things
the old way is the best...
Some things are new...
Interaction with Design Agency
Traditionally they were the start point
DXA provides a new input
DXA enables a tighter integration between Design and CMS implementation
Still not perfect
Be more Agile....
You have an end-to-end working system from day 1
Design schemas on-the-fly within DXA (no more 150 page FDs!)
Test them in Experience Manager (end the
"XPM in phase 2"
Stub custom controllers to allow View developers to work independently and show "integrated" functionality from an early stage
Design your security model in the CMS
Instead of How?... What?
The basics are done for you, so focus on
is done with them rather than
Navigation & Sitemap
Common page elements (includes)
Configuration & Resources
Simple Broker Queries
for Logical Separation
Modules need not be a concept purely for sharing between implementations.
Logically organize functionality
Turn features on/off in the blueprint
Bundle items for deployment