SlideShare a Scribd company logo
1 of 39
Drupal architectures for
flexible content
Hernâni Borges de Freitas / @hernanibf
Site Building track
About me
Technical Team Lead Acquia EMEA
.PT
Drupal* many things
hernani.pt
Twitter.com/hernanibf
A typical web site for a CMS:
• Structured and fixed content: news items, job posts,
events.
• Same content structure and typically same layout.
• Flexible content: home pages, landing pages,
collection pages, rich pages.
• Content structure and layout vary per item and can
be changed by editors.
Today’s session:
• Architecture and patterns available for building a Drupal
site with flexible content:
• Content Architecture
• Layout Architecture
• Workflow
• Building an unified and comprehensible experience
for content editors
Meet the content editor:
• Wants to control most of the details how content
appears on the web site. Flexible content is a major need.
• He is a major stakeholder in websites where content is
king: media, entertainment, corporate websites.
• Tech savvy on his own way - does not accept technical
limits - if the system does not allow something, he will find
a way of doing it anyway.
Typical demands:
 Change website look and feel.
 Reuse content anywhere.
 Review / preview / approve / schedule content as it
will appear.
 Readapt site purpose on special events.
 CMS should be easy to understand, fast to
execute and free of problems 
Problem in Drupal:
 Disconnection between content and layout.
 Disconnection between site building and
content edition.
 Drupal mantra of create content first, and it will
display on different sections “automagically”.
 Lack of revisioning system in many pieces of
the puzzle (menus, taxonomy, blocks).
Breaking the problem
How to create a rich page?
http://paragraphs.site-showcase.com/demos/creme-caramel
Options
A. Free form HTML.
B. Structured inclusive content including all items.
C. Structured referenced content with references
among items.
D. Unreferenced content being added through
layout.
Option A - Free form HTML
 Typically this is never a good solution, but in theory
can give a lot of flexibility.
 Hard to maintain consistency.
 Hard to reuse content.
 WYSIWYG hard to use and manage even with
placeholders.
 Hard to avoid errors from Content Editors (CE’s)
Option B – Inclusive content
All content details are stored in the content item using
complex fields. Good for pages with lots of details
reused elsewhere.
Typical implementations:
• Compound fields (custom or contributed).
• Field collection module / Paragraphs module treat
the different entity as part of the host entity.
Option C – Referenced content
Different parts of content items are split in different
entities which are referenced from the main entity.
Typical implementations:
 Entity reference field with inline entity form.
 Extra modules like references dialog module can
help on browsing existing content.
 Back references to help glue content (CER).
Option C – Referenced content
Different parts of content items are split in different
entities which are referenced from the main entity.
Typical implementations:
 Entity reference field with inline entity form.
 Extra modules like references dialog module can
help on browsing existing content.
 Back references to help glue content (CER).
Breaking the problem
Manage individual page layout
How do I create a new rich page layout in Drupal?
Some options:
A. Core template system
B. Display suite
C. Panels / Panelizer
Template system
• Prepare different Drupal templates that are selected
depending on some attributes (node type, field,
etc..).
• Use display modes and template suggestions to
pick the correct template.
Display suite
View modes created by configuration. Drag and drop
fields with different formatters for different regions.
 Most of the layout/style can be done by site
builders.
 Good to maintain consistency between view modes.
Panels
• Customized layouts for different means, including
for entity layout.
• Support creation of pages with custom/fixed
layouts.
• Fits well with the idea of widgets than can be drag
and dropped and configured in different regions.
How to create pages with panels?
Different ways of creating pages:
• Create independent panels.
• Page manager with variants.
• Panel nodes.
• Panelizer
Panelizer
• Panel display associated with an entity.
• Panel displays available to be used as templates.
• Panelize an entity and add panes and fields to
different regions.
• Slick interface with Panels IPE.
• You can try in Panopoly or Lightning distribution.
Panes
• Configuration per instance where the pane is
present (e.g: A view that receives configuration that
depends from page to page.
• Fieldable Panel Panes (FAPE)
• Panels In place editor (IPE)
• Panopoly magic
• Panopoly widgets
Ctools content types
Breaking the problem
How to workflow content and
layout together?
• Content workflow is easy
• Workbench moderation / Workflow / …
modules
• Layout workflow is harder (!)
How to preview?
• Easier to achieve when rich content exists as a unit.
• Harder to achieve with lots of referenced content.
• Easier to achieve when layout stores all the needed
configuration and is associated with revisions
(panelizer).
Workflow of flexible content
Directly in production
• Limited if not well
addressed.
• Dependency on revision
system.
• Panelizer integrates with
with workbench moderation
(with patches) 
Different environments
• Tricky balance between
content and layout.
• Both need to be pushed
amongst environments.
Workflow of complex items
Directly in production
Modules like:
• Quick edit and panels in place
editor contextual links.
• Workbench or workflow
• Site Preview System.
Different environments
Modules like:
• Deploy module and
associated suite can ship
content together with
associated items.
Breaking the problem
Non-tech considerations (1/2)
• Content editors are amongst the most important project’s
stakeholders.
• They know the content and how the website will work after
architects and developers leave.
• They care about what they see and not how does it work.
• Should be involved from Discovery phase to User
Acceptance Testing.
Non-tech considerations (2/2)
• Content editors are used to previous systems and will want
to keep some old habits.
• Pilots and POCs are very good ways to expose end users
with what they will use.
• Distributions like lightning or panopoly are great inspirations
and models to start with.
Holistic view
About my work @ acquia
An architect in Acquia is responsible technical
solutions for clients during different phases.
• Discovery
• Solution/Specification
• Development phase
• Deployment
We are hiring
http://www.acquia.com/careers
Drupal architectures for flexible content - Drupalcon Barcelona

More Related Content

What's hot

One drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp CaceresOne drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp Cacereshernanibf
 
Acquia Commons
Acquia CommonsAcquia Commons
Acquia Commonshernanibf
 
Zurb foundation
Zurb foundationZurb foundation
Zurb foundationsean_todd
 
Anatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress ThemeAnatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress ThemeJulie Kuehl
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress UniversityStephanie Leary
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Angela Byron
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to DrupalTom Deryckere
 
Academic Websites in Plone
Academic Websites in PloneAcademic Websites in Plone
Academic Websites in PloneJazkarta, Inc.
 
Drupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content ManagementDrupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content ManagementVibrant Technologies & Computers
 
Online exhibits in Plone
Online exhibits in PloneOnline exhibits in Plone
Online exhibits in PloneJazkarta, Inc.
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupalsdmaxey
 
From WordPress With Love
From WordPress With LoveFrom WordPress With Love
From WordPress With LoveUp2 Technology
 
Introduction to the Drupal - Web Experience Toolkit
Introduction to the Drupal - Web Experience ToolkitIntroduction to the Drupal - Web Experience Toolkit
Introduction to the Drupal - Web Experience ToolkitSuzanne Dergacheva
 
Showcasing drupal
Showcasing drupalShowcasing drupal
Showcasing drupalOpevel
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDavid Burns
 
What is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? WebinarWhat is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? WebinarSuzanne Dergacheva
 
Content First – Planning Drupal Content Types
Content First – Planning Drupal Content TypesContent First – Planning Drupal Content Types
Content First – Planning Drupal Content TypesCarrie Hane
 
Preventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistPreventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistAcquia
 

What's hot (20)

One drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp CaceresOne drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp Caceres
 
Acquia Commons
Acquia CommonsAcquia Commons
Acquia Commons
 
Zurb foundation
Zurb foundationZurb foundation
Zurb foundation
 
Anatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress ThemeAnatomy and Architecture of a WordPress Theme
Anatomy and Architecture of a WordPress Theme
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress University
 
Drupal
DrupalDrupal
Drupal
 
72d5drupal
72d5drupal72d5drupal
72d5drupal
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
 
Academic Websites in Plone
Academic Websites in PloneAcademic Websites in Plone
Academic Websites in Plone
 
Drupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content ManagementDrupal - Introduction to Drupal and Web Content Management
Drupal - Introduction to Drupal and Web Content Management
 
Online exhibits in Plone
Online exhibits in PloneOnline exhibits in Plone
Online exhibits in Plone
 
Introduction to Drupal
Introduction to DrupalIntroduction to Drupal
Introduction to Drupal
 
From WordPress With Love
From WordPress With LoveFrom WordPress With Love
From WordPress With Love
 
Introduction to the Drupal - Web Experience Toolkit
Introduction to the Drupal - Web Experience ToolkitIntroduction to the Drupal - Web Experience Toolkit
Introduction to the Drupal - Web Experience Toolkit
 
Showcasing drupal
Showcasing drupalShowcasing drupal
Showcasing drupal
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
 
What is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? WebinarWhat is Drupal? And Why is it Useful? Webinar
What is Drupal? And Why is it Useful? Webinar
 
Content First – Planning Drupal Content Types
Content First – Planning Drupal Content TypesContent First – Planning Drupal Content Types
Content First – Planning Drupal Content Types
 
Preventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistPreventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type Checklist
 

Viewers also liked

Building the Front End with AngularJS
Building the Front End with AngularJSBuilding the Front End with AngularJS
Building the Front End with AngularJSJohn Ennew
 
Drupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case StudyDrupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case Studyhernanibf
 
Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015Alberto Permuy Leal
 
A Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.galA Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.galAlberto Permuy Leal
 
Drupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidadesDrupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidadesAlberto Permuy Leal
 
Acquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTOAcquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTOAngela Byron
 
El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8Ymbra
 
Drupal Developer Days Keynote
Drupal Developer Days KeynoteDrupal Developer Days Keynote
Drupal Developer Days KeynoteAngela Byron
 

Viewers also liked (8)

Building the Front End with AngularJS
Building the Front End with AngularJSBuilding the Front End with AngularJS
Building the Front End with AngularJS
 
Drupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case StudyDrupal Performance - SerBenfiquista.com Case Study
Drupal Performance - SerBenfiquista.com Case Study
 
Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015Obradoiro Drupal de 0 a 100 - Vigo 2015
Obradoiro Drupal de 0 a 100 - Vigo 2015
 
A Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.galA Cultura da Auga no proxecto Abeancos.gal
A Cultura da Auga no proxecto Abeancos.gal
 
Drupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidadesDrupal8 : novedades y nuevas funcionalidades
Drupal8 : novedades y nuevas funcionalidades
 
Acquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTOAcquia Company Update on Drupal 8.2/8.3/OCTO
Acquia Company Update on Drupal 8.2/8.3/OCTO
 
El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8
 
Drupal Developer Days Keynote
Drupal Developer Days KeynoteDrupal Developer Days Keynote
Drupal Developer Days Keynote
 

Similar to Drupal architectures for flexible content - Drupalcon Barcelona

X All The Things: Enterprise Content Management
X All The Things: Enterprise Content ManagementX All The Things: Enterprise Content Management
X All The Things: Enterprise Content ManagementPhase2
 
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Anson Han
 
Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalRod Martin
 
Share point 2013 Building Websites
Share point 2013 Building WebsitesShare point 2013 Building Websites
Share point 2013 Building WebsitesSuhas R Satish
 
Webiny CMS Starter Guide
Webiny CMS Starter GuideWebiny CMS Starter Guide
Webiny CMS Starter GuideWebiny
 
Share point 2013 WCM for Developers
Share point 2013 WCM for DevelopersShare point 2013 WCM for Developers
Share point 2013 WCM for DevelopersSuhas R Satish
 
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon BaltimoreCreating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon BaltimoreSuzanne Dergacheva
 
Content Management Systems (CMS) & Wordpress theme development
Content Management Systems (CMS) & Wordpress theme developmentContent Management Systems (CMS) & Wordpress theme development
Content Management Systems (CMS) & Wordpress theme developmentDave Wallace
 
Modernising AEM Sites Codebase (AEM Meetup 2019)
Modernising AEM Sites Codebase  (AEM Meetup 2019)Modernising AEM Sites Codebase  (AEM Meetup 2019)
Modernising AEM Sites Codebase (AEM Meetup 2019)Hanish Bansal
 
Best Practices for Building Sites in dotCMS
Best Practices for Building Sites in dotCMSBest Practices for Building Sites in dotCMS
Best Practices for Building Sites in dotCMSMichael Fienen
 
Sps redmond 2014 deck
Sps redmond 2014 deckSps redmond 2014 deck
Sps redmond 2014 deckDorinda Reyes
 
Modern_Site_Owner_M365_Ottawa.pdf
Modern_Site_Owner_M365_Ottawa.pdfModern_Site_Owner_M365_Ottawa.pdf
Modern_Site_Owner_M365_Ottawa.pdfTheresa Lubelski
 
concrete5 from developer perspective
concrete5 from developer perspectiveconcrete5 from developer perspective
concrete5 from developer perspectivemainio
 
[Webinar] Discover eZ platform v2.4
[Webinar]  Discover eZ platform v2.4[Webinar]  Discover eZ platform v2.4
[Webinar] Discover eZ platform v2.4eZ Systems
 
Getting Started with Drupal
Getting Started with DrupalGetting Started with Drupal
Getting Started with DrupalBrian Pichman
 
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017La Drupalera
 
University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design Terminalfour
 

Similar to Drupal architectures for flexible content - Drupalcon Barcelona (20)

Module 4 - Dreamweaver Templates (Static vs. Dynamic Content)
Module 4 - Dreamweaver Templates (Static vs. Dynamic Content)Module 4 - Dreamweaver Templates (Static vs. Dynamic Content)
Module 4 - Dreamweaver Templates (Static vs. Dynamic Content)
 
X All The Things: Enterprise Content Management
X All The Things: Enterprise Content ManagementX All The Things: Enterprise Content Management
X All The Things: Enterprise Content Management
 
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
Drupaldelphia 2013 Presentation- Making Your Site more Friendly to Search Eng...
 
Absolute Beginners Guide to Drupal
Absolute Beginners Guide to DrupalAbsolute Beginners Guide to Drupal
Absolute Beginners Guide to Drupal
 
Share point 2013 Building Websites
Share point 2013 Building WebsitesShare point 2013 Building Websites
Share point 2013 Building Websites
 
Webiny CMS Starter Guide
Webiny CMS Starter GuideWebiny CMS Starter Guide
Webiny CMS Starter Guide
 
Share point 2013 WCM for Developers
Share point 2013 WCM for DevelopersShare point 2013 WCM for Developers
Share point 2013 WCM for Developers
 
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon BaltimoreCreating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore
 
Content Management Systems (CMS) & Wordpress theme development
Content Management Systems (CMS) & Wordpress theme developmentContent Management Systems (CMS) & Wordpress theme development
Content Management Systems (CMS) & Wordpress theme development
 
Modernising AEM Sites Codebase (AEM Meetup 2019)
Modernising AEM Sites Codebase  (AEM Meetup 2019)Modernising AEM Sites Codebase  (AEM Meetup 2019)
Modernising AEM Sites Codebase (AEM Meetup 2019)
 
Best Practices for Building Sites in dotCMS
Best Practices for Building Sites in dotCMSBest Practices for Building Sites in dotCMS
Best Practices for Building Sites in dotCMS
 
Sps redmond 2014 deck
Sps redmond 2014 deckSps redmond 2014 deck
Sps redmond 2014 deck
 
Modern_Site_Owner_M365_Ottawa.pdf
Modern_Site_Owner_M365_Ottawa.pdfModern_Site_Owner_M365_Ottawa.pdf
Modern_Site_Owner_M365_Ottawa.pdf
 
concrete5 from developer perspective
concrete5 from developer perspectiveconcrete5 from developer perspective
concrete5 from developer perspective
 
[Webinar] Discover eZ platform v2.4
[Webinar]  Discover eZ platform v2.4[Webinar]  Discover eZ platform v2.4
[Webinar] Discover eZ platform v2.4
 
Getting Started with Drupal
Getting Started with DrupalGetting Started with Drupal
Getting Started with Drupal
 
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
 
Microsoft FrontPage PPT
Microsoft FrontPage PPTMicrosoft FrontPage PPT
Microsoft FrontPage PPT
 
Content management system
Content management systemContent management system
Content management system
 
University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design University of Portsmouth Library: A practical approach to Responsive Design
University of Portsmouth Library: A practical approach to Responsive Design
 

Recently uploaded

2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
 
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查ydyuyu
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdfMatthew Sinclair
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdfMatthew Sinclair
 
75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptxAsmae Rabhi
 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftAanSulistiyo
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirtrahman018755
 
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制pxcywzqs
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrHenryBriggs2
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"growthgrids
 
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...gajnagarg
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样ayvbos
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.krishnachandrapal52
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfJOHNBEBONYAP1
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdfMatthew Sinclair
 
Power point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria IuzzolinoPower point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria Iuzzolinonuriaiuzzolino1
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查ydyuyu
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdfMatthew Sinclair
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查ydyuyu
 

Recently uploaded (20)

2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 
75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx
 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck Microsoft
 
Trump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts SweatshirtTrump Diapers Over Dems t shirts Sweatshirt
Trump Diapers Over Dems t shirts Sweatshirt
 
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
一比一原版(Offer)康考迪亚大学毕业证学位证靠谱定制
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
 
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.Meaning of On page SEO & its process in detail.
Meaning of On page SEO & its process in detail.
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
 
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
20240507 QFM013 Machine Intelligence Reading List April 2024.pdf
 
Power point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria IuzzolinoPower point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria Iuzzolino
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
 

Drupal architectures for flexible content - Drupalcon Barcelona

  • 1.
  • 2. Drupal architectures for flexible content Hernâni Borges de Freitas / @hernanibf Site Building track
  • 3. About me Technical Team Lead Acquia EMEA .PT Drupal* many things hernani.pt Twitter.com/hernanibf
  • 4. A typical web site for a CMS: • Structured and fixed content: news items, job posts, events. • Same content structure and typically same layout. • Flexible content: home pages, landing pages, collection pages, rich pages. • Content structure and layout vary per item and can be changed by editors.
  • 5. Today’s session: • Architecture and patterns available for building a Drupal site with flexible content: • Content Architecture • Layout Architecture • Workflow • Building an unified and comprehensible experience for content editors
  • 6. Meet the content editor: • Wants to control most of the details how content appears on the web site. Flexible content is a major need. • He is a major stakeholder in websites where content is king: media, entertainment, corporate websites. • Tech savvy on his own way - does not accept technical limits - if the system does not allow something, he will find a way of doing it anyway.
  • 7. Typical demands:  Change website look and feel.  Reuse content anywhere.  Review / preview / approve / schedule content as it will appear.  Readapt site purpose on special events.  CMS should be easy to understand, fast to execute and free of problems 
  • 8. Problem in Drupal:  Disconnection between content and layout.  Disconnection between site building and content edition.  Drupal mantra of create content first, and it will display on different sections “automagically”.  Lack of revisioning system in many pieces of the puzzle (menus, taxonomy, blocks).
  • 10. How to create a rich page? http://paragraphs.site-showcase.com/demos/creme-caramel
  • 11.
  • 12. Options A. Free form HTML. B. Structured inclusive content including all items. C. Structured referenced content with references among items. D. Unreferenced content being added through layout.
  • 13. Option A - Free form HTML  Typically this is never a good solution, but in theory can give a lot of flexibility.  Hard to maintain consistency.  Hard to reuse content.  WYSIWYG hard to use and manage even with placeholders.  Hard to avoid errors from Content Editors (CE’s)
  • 14. Option B – Inclusive content All content details are stored in the content item using complex fields. Good for pages with lots of details reused elsewhere. Typical implementations: • Compound fields (custom or contributed). • Field collection module / Paragraphs module treat the different entity as part of the host entity.
  • 15.
  • 16. Option C – Referenced content Different parts of content items are split in different entities which are referenced from the main entity. Typical implementations:  Entity reference field with inline entity form.  Extra modules like references dialog module can help on browsing existing content.  Back references to help glue content (CER).
  • 17. Option C – Referenced content Different parts of content items are split in different entities which are referenced from the main entity. Typical implementations:  Entity reference field with inline entity form.  Extra modules like references dialog module can help on browsing existing content.  Back references to help glue content (CER).
  • 19. Manage individual page layout How do I create a new rich page layout in Drupal? Some options: A. Core template system B. Display suite C. Panels / Panelizer
  • 20. Template system • Prepare different Drupal templates that are selected depending on some attributes (node type, field, etc..). • Use display modes and template suggestions to pick the correct template.
  • 21. Display suite View modes created by configuration. Drag and drop fields with different formatters for different regions.  Most of the layout/style can be done by site builders.  Good to maintain consistency between view modes.
  • 22.
  • 23. Panels • Customized layouts for different means, including for entity layout. • Support creation of pages with custom/fixed layouts. • Fits well with the idea of widgets than can be drag and dropped and configured in different regions.
  • 24. How to create pages with panels? Different ways of creating pages: • Create independent panels. • Page manager with variants. • Panel nodes. • Panelizer
  • 25. Panelizer • Panel display associated with an entity. • Panel displays available to be used as templates. • Panelize an entity and add panes and fields to different regions. • Slick interface with Panels IPE. • You can try in Panopoly or Lightning distribution.
  • 26. Panes • Configuration per instance where the pane is present (e.g: A view that receives configuration that depends from page to page. • Fieldable Panel Panes (FAPE) • Panels In place editor (IPE) • Panopoly magic • Panopoly widgets
  • 29. How to workflow content and layout together? • Content workflow is easy • Workbench moderation / Workflow / … modules • Layout workflow is harder (!)
  • 30. How to preview? • Easier to achieve when rich content exists as a unit. • Harder to achieve with lots of referenced content. • Easier to achieve when layout stores all the needed configuration and is associated with revisions (panelizer).
  • 31. Workflow of flexible content Directly in production • Limited if not well addressed. • Dependency on revision system. • Panelizer integrates with with workbench moderation (with patches)  Different environments • Tricky balance between content and layout. • Both need to be pushed amongst environments.
  • 32. Workflow of complex items Directly in production Modules like: • Quick edit and panels in place editor contextual links. • Workbench or workflow • Site Preview System. Different environments Modules like: • Deploy module and associated suite can ship content together with associated items.
  • 34. Non-tech considerations (1/2) • Content editors are amongst the most important project’s stakeholders. • They know the content and how the website will work after architects and developers leave. • They care about what they see and not how does it work. • Should be involved from Discovery phase to User Acceptance Testing.
  • 35. Non-tech considerations (2/2) • Content editors are used to previous systems and will want to keep some old habits. • Pilots and POCs are very good ways to expose end users with what they will use. • Distributions like lightning or panopoly are great inspirations and models to start with.
  • 37. About my work @ acquia An architect in Acquia is responsible technical solutions for clients during different phases. • Discovery • Solution/Specification • Development phase • Deployment