#DrupalcampSpain2015@hernanibf When content editors ask for full flexibility Hernâni Borges de Freitas #DrupalcampSpain2015
#DrupalcampSpain2015@hernanibf #DrupalcampSpain2015 About me Technical  Team  Lead  Acquia   .PT     Drupal*  many  things       Twitter.com/hernanibf       @hernanibf
#DrupalcampSpain2015@hernanibf About my work @ Acquia An architect in Acquia prepares technical solutions for clients during different phases. •  Discovery •  Solution/Specification •  Development phase •  Deployment
#DrupalcampSpain2015@hernanibf Meet the demanding content editor
#DrupalcampSpain2015@hernanibf •  He wants to control most of the details how content appears on the web site. •  He typically works on 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. Meet the demanding content editor
#DrupalcampSpain2015@hernanibf 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 J
#DrupalcampSpain2015@hernanibf Problem §  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).
#DrupalcampSpain2015@hernanibf Rule The best tool? Most of the times, the one you know how to use.
#DrupalcampSpain2015@hernanibf #1 Problem – Content Structure http://paragraphs.site-showcase.com/demos/ creme-caramel
#DrupalcampSpain2015@hernanibf
#DrupalcampSpain2015@hernanibf #1 Problem – Content Structure 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.
#DrupalcampSpain2015@hernanibf Option A - Free form HTML §  Typically 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)
#DrupalcampSpain2015@hernanibf Option B – Inclusive content All content details are stored in the content item using fields. Good for pages with lots of details reused elsewhere. Typical implementations: •  Compound fields (custom or contributed). •  Field collection module / Paragraphs module.
Paragraphs
#DrupalcampSpain2015@hernanibf 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).
Inline Entity Form
#DrupalcampSpain2015@hernanibf #2 - Manage individual page layout How do I create a new rich page layout in Drupal? Options: A.  Core template system B.  Display suite C.  Panels / Panelizer
#DrupalcampSpain2015@hernanibf 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.
#DrupalcampSpain2015@hernanibf 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.
Display suite
#DrupalcampSpain2015@hernanibf 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.
#DrupalcampSpain2015@hernanibf How to create pages with panels? Different ways of creating pages: •  Create independent panels. •  Page manager with variants. •  Panel nodes. •  Panelizer
#DrupalcampSpain2015@hernanibf Panelizer •  Panel display associated with an entity. •  Panelize an entity and add panes and fields to different regions. •  Slick interface with Panels IPE. •  You can try in Panopoly or Lightning distribution.
#DrupalcampSpain2015@hernanibf Ctools content types •  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
#DrupalcampSpain2015@hernanibf #3 – Workflow How to workflow content and layout together? Content workflow is easy -  Workbench moderation / Workflow / … modules Layout workflow is harder (!)
#DrupalcampSpain2015@hernanibf #4 – Workflow and 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). •  Important to think about responsive (responsive preview helps).
#DrupalcampSpain2015@hernanibf #5 - Workflow of complex items Directly in production §  Limited if not well addressed. §  Dependency on revision system. §  Panelizer integrates with with workbench moderation (with patches) J Different environments, and deploy to production •  Tricky balance between content and configuration. •  Configuration can be shipped in code. •  Content is quite complex to achieve
#DrupalcampSpain2015@hernanibf #5 - 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.
#DrupalcampSpain2015@hernanibf #6 – Final words – Non tech •  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.
#DrupalcampSpain2015@hernanibf #7 – Final words - tech Success typically means •  To be able to correctly preview •  To be able to edit in place where content appears •  To be able to create and review content and layout. •  To be flexible and provide options for edge cases
#DrupalcampSpain2015@hernanibf #8 - Drupal 8 •  In place editor (Quickedit module) •  Better support for configuration management •  Better support for entity revisions •  Better support for some layout management •  Some of the modules already ported to D8
#DrupalcampSpain2015@hernanibf@hernanibf #DrupalcampSpain2015 Questions?

Drupal content editor flexibility