SlideShare una empresa de Scribd logo
1 de 65
Our expertise. Your digital DNA | evolvingweb.ca | @evolvingweb
CREATING LANDING
PAGES AND LAYOUTS
For Drupal 8
SUZANNE DERGACHEVA
• Drupal trainer
• Co-founded Evolving Web in 2007
• Manage Drupal projects
• Experienced site builder, themer,
and developer
• Follow me @suzanne_kennedy
Our expertise. Your digital DNA.
.ca
WE MAKE DRUPAL WEBSITES
FOR ALL TYPES OF CLIENTS
• Large, scalable infrastructure and deployments
• Multilingual content management
• Flexible search interfaces
• Content import and synchronization
• Custom Drupal development
• Integration with external IT systems
WHAT WE DO
DRUPAL 8 TRAINING
CREATING LAYOUTS & LANDING PAGES IN D8
• Planning Your Landing Pages
• Landing Page Configuration
• Overall Layout
• Theming Approaches + Sustainable Layouts
PLANNING YOUR LANDING
PAGES
WHAT’S A LANDING PAGE?
• Target a particular audience
• Display marketing content and
calls to action (CTAs)
• Distinctive layout and content
set
• Funnel users towards content
they’re looking for
• Registration, login, search forms
QUESTIONS TO ASK
• Are you going to be creating many similar landing pages?
• Is content curated by humans or aggregated by Drupal?
• Do calls to action need to be re-usable from one landing page
to another?
• Is the content going to be moved around frequently by
editors?
• Do you need to be able to change the layout easily?
USE CASES
• Re-usable landing pages with a consistent layout
• 1-time use landing pages
• Landing pages with a flexible layout
REUSABLE LANDING PAGES
DESIGN
REQUIREMENTS
• You need to create multiple landing pages
• Landing pages need to have consistent styling/layout but variable
content
• Editors need to be able to edit the calls to action easily
• Calls to action can link to anywhere (internal/external links)
• There are different types of calls to action (links, videos, downloads,
forms)
• Calls to action have different styles
LANDING PAGE CONTENT TYPE
Banner Image Field
Components that can change
Title
Title Prefix Field
LANDING PAGE CONTENT TYPE
Banner Image Field
Components that can change
Title
PARAGRAPHS
• Set up each call to action as a Paragraph field on a landing page
• Each paragraph has the title, image, text, and link fields
• You can edit the paragraphs when you edit the landing page
• Title
• Image
• Text
• Link
• Title
• Image
• Text
• Link
Paragraph CTA Paragraph CTA Paragraph CTA
• Title
• Image
• Text
• Link
DEFINING THE PARAGRAPH TYPE
PARAGRAPH TYPES
• A paragraphs field can reference multiple paragraph types
• You can allow users to choose whether to add a video, image, or
file download call to action
• Title
• Image
• Text
• Link
• Title
• Image
• Text
• Files
Video Call to Action File Download
• Title
• Text
• Video
• Thumbnail
PARAGRAPH TYPES
ADDING CALLS TO ACTION
ALTERNATIVE: REUSABLE COMPONENTS
• If you need the components to be reusable: Create an entity
reference field to add custom blocks with Inline Entity Form
1-TIME USE LANDING PAGES
REQUIREMENTS
• You need to create a single, distinct landing page
• Content from the landing page might be re-used elsewhere
• Some content needs to be aggregated from across your site
• You might need to re-order sections of the page occasionally
Custom block (banner type)
Custom blocks (CTA type)
Views
CALLS TO ACTION VIEW
• This view shows a list of featured pages
• Selection/ordering logic is pre-defined
• Each call to action displays fields from the featured page
• Downside: you have to edit the individual pages to change the
content
CALL TO ACTION BLOCKS
• Each Call to Action block has title, background image, text, and links fields
• Place the block on the landing page, can be re-ordered
• Re-use the blocks on other pages
WHY USE BLOCK TYPES?
• Reusable, fieldable, movable
• Blocks are in core
• Downsides:
• Blocks are placed and stored in a separate part of the UI
SETTINGS TRAY & PLACE BLOCK
BLOCK VISIBILITY GROUPS
LANDING PAGES WITH A
FLEXIBLE LAYOUT
LANDING PAGE WITH A FLEXIBLE LAYOUT
REQUIREMENTS
• You have a series of landing pages with different layouts
• You need to be able to easily change the layout of the page (1
column, 2 column, etc)
• You can adjust the content in the selected layout
PANELS
WHY USE PANELS
• 1 edit link to edit content + layout
• In-place editor
• User-friendly, drag-and-drop
NESTED PARAGRAPHS
Choose the
layout
Add the
content to
the layout
NESTED PARAGRAPHS
NESTED PARAGRAPHS
• 1 edit link
• Easy to switch the layout
• Create a limited number of layout types
• Control which calls to action can go where
• Manage Form Display - customize the admin UI to avoid
performance issues with nested paragraphs
LAYOUTS IN CORE
System for
defining and using
layouts is in core
- Field Layouts
module
(experimental)
https://
www.drupal.org/
node/2578731
COMING SOON…. LAYOUTS PER NODE
• Next step: allow for customization the layout per node
• Watch Tim Plunkett’s ‘The Continuing Saga of Layouts in
Drupal 8’
• Come to the sprints tomorrow!
THEMING APPROACHES
BLOCKS & REGIONS
• Everything is displayed via a block
• You place blocks in regions
• Include enough regions in your theme to create the overall
layout you need
DRUPAL 8 BLOCKS
OVERALL LAYOUT
Header
second
Header first
Footer first
Footer
second
Footer top
Content
How do you create the layouts within your content?
THEMING APPROACHES
• Update the Markup
• Use a framework comes with pre-defined, generic classes (e.g.
Bootstrap, Foundation)
• Create a theme ‘from scratch’ where you define generic classes
• Update the CSS
• Use a framework where you write SASS to apply pre-defined mixins
• Create a theme ‘from scratch’ where you add classes as selectors as
you add components
UPDATE THE MARKUP
2-COLUMN LANDING PAGE
CSS ALREADY EXISTS
@media screen and (min-width: 1180px){
.grid-2-column {
width: 50%;
display: inline-block;
}
}
Bootstrap
Custom CSS
UPDATING THE MARKUP
{%
set classes = [
page.sidebar_first ? '3-col-grid',
]
%}
<div{{ attributes.addClass(classes) }}>
{{ title_prefix }}
{% if label %}
<h2>{{ label }}</h2>
{% endif %}
{{ title_suffix }}
{% block content %}
{{ content }}
{% endblock %}
</div>
field--paragraph--field-calls-to-action-column-1.html.twig
field--paragraph--field-calls-to-action-column-2.html.twig
{%
set classes = [
'field',
'field--name-' ~ field_name|clean_class,
'field--type-' ~ field_type|clean_class,
'field--label-' ~ label_display,
'col-md-6',
'grid-2-column',
]
%}
3-COLUMN VIEW
CSS ALREADY EXISTS
@media screen and (min-width: 1180px){
.grid-3-column {
width: 33%;
display: inline-block;
}
}
Bootstrap
Custom CSS
UPDATING THE MARKUP
Views Grid Settings
UPDATING THE MARKUP
• Your Twig templates
• Add overall layout classes in page.html.twig
• Add classes in block, field, other templates
• Views configuration
• In grid settings, row settings, or overall CSS class
• Panels configuration
• Blocks config
• Block Class module
• Implement THEMENAME_theme_suggestions_block_alter to override custom block templates
• Paragraphs Bootstrap module (watch talk from Wednesday)
• Your content (Customize the WYSIWYG styles options)
UPDATE THE CSS
2-COLUMN LANDING PAGE
UPDATING THE CSS
@media screen and (min-width: 1180px){
.field—name-field-calls-to-action-column-1,
.field—name-field-calls-to-action-column-2 {
display: inline-block;
width: 50%;
}
}
3-COLUMN VIEW
UPDATING THE CSS
@media screen and (min-width: 1180px){
.view-drupalorg-casestudies .views-row {
display: inline-block;
width: 33%;
}
}
UPDATING THE CSS
• You start with some initial CSS to handle your layout
• When you add new components (views, paragraphs, blocks,
regions) you update your CSS to add the new selectors
• SASS makes it easier to do this cleanly
BEST PRACTICES FOR SUSTAINABLE LAYOUTS
• Plan which layouts your theme will allow
• Limit the layout options available - layouts API
• Create separate layout CSS files and make your layout CSS
generic enough to be re-usable for different components
• Nothing in your theme should be content-specific
• Document your layouts and how they handle new elements
ALL THE MODULES
• Contrib Modules
• Paragraphs & Entity
Reference Revisions
• Block Visibility Groups
• Bootstrap Paragraphs
• Panels, Page Manager
• Inline Entity Form
• Styleguide
• Core Experimental Modules
• Settings Tray
• Place Blocks
• Field Layout & Layout
Discovery
UPCOMING DRUPAL TRAININGS
• Content Strategy for Drupal - Online May 3-5
• Drupal 8 Theming - Online - May 8-12
• Introduction to Drupal 8 - Online - May 24-26
• Drupal 8 Module Development - Online - May 29 - June 2
• 5-Day Drupal 8 Training - Washington D.C. - June 5-9
• Drupal Essentials - Atlanta - June 12-13
• Drupal 8 Theming & Mod Dev - Atlanta - October 10-13
evolvingweb.ca/training
SPRINTS ON FRIDAY
• Come to the sprints tomorrow (in this room!)
• Layouts Initiative
• Usability Initiative
• First-Time Sprinter Workshop
• Mentored Core Sprint
• #DrupalThanks in advance!

Más contenido relacionado

La actualidad más candente

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
 
Creating Dynamic Landing Pages for Drupal with Panels - Webinar
Creating Dynamic Landing Pages for Drupal with Panels - WebinarCreating Dynamic Landing Pages for Drupal with Panels - Webinar
Creating Dynamic Landing Pages for Drupal with Panels - WebinarSuzanne Dergacheva
 
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
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDavid Burns
 
Zurb foundation
Zurb foundationZurb foundation
Zurb foundationsean_todd
 
Responsive Design in Drupal with Zen and Zen Grids
Responsive Design in Drupal with Zen and Zen GridsResponsive Design in Drupal with Zen and Zen Grids
Responsive Design in Drupal with Zen and Zen GridsSuzanne Dergacheva
 
Responsive Web Design using ZURB Foundation
Responsive Web Design using ZURB FoundationResponsive Web Design using ZURB Foundation
Responsive Web Design using ZURB FoundationSolTech, Inc.
 
Responsive themeworkshop wcneo2016
Responsive themeworkshop wcneo2016Responsive themeworkshop wcneo2016
Responsive themeworkshop wcneo2016David Brattoli
 
Getting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationGetting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationMelanie Archer
 
DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014Suzanne Dergacheva
 
WordPress - fixing sites with problems
WordPress - fixing sites with problemsWordPress - fixing sites with problems
WordPress - fixing sites with problemsVictoria Pickering
 
Deployer - Deployment tool for PHP
Deployer - Deployment tool for PHPDeployer - Deployment tool for PHP
Deployer - Deployment tool for PHPhernanibf
 
WordPress Beginners Workshop
WordPress Beginners WorkshopWordPress Beginners Workshop
WordPress Beginners WorkshopThe Toolbox, Inc.
 
Put A Map On It! Enhanced geolocation in WordPress with Geo Mashup
Put A Map On It! Enhanced geolocation in WordPress with Geo MashupPut A Map On It! Enhanced geolocation in WordPress with Geo Mashup
Put A Map On It! Enhanced geolocation in WordPress with Geo MashupJer Clarke
 
One Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp LondonOne Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp Londonhernanibf
 
WordPress Template Hierarchy
WordPress Template HierarchyWordPress Template Hierarchy
WordPress Template HierarchySarah Whinnem
 
Drupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with ZenDrupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with ZenJapo Domingo
 

La actualidad más candente (20)

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
 
Creating Dynamic Landing Pages for Drupal with Panels - Webinar
Creating Dynamic Landing Pages for Drupal with Panels - WebinarCreating Dynamic Landing Pages for Drupal with Panels - Webinar
Creating Dynamic Landing Pages for Drupal with Panels - Webinar
 
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
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
 
Zurb foundation
Zurb foundationZurb foundation
Zurb foundation
 
Responsive Design in Drupal with Zen and Zen Grids
Responsive Design in Drupal with Zen and Zen GridsResponsive Design in Drupal with Zen and Zen Grids
Responsive Design in Drupal with Zen and Zen Grids
 
Responsive Web Design using ZURB Foundation
Responsive Web Design using ZURB FoundationResponsive Web Design using ZURB Foundation
Responsive Web Design using ZURB Foundation
 
Responsive themeworkshop wcneo2016
Responsive themeworkshop wcneo2016Responsive themeworkshop wcneo2016
Responsive themeworkshop wcneo2016
 
Wordpress overview
Wordpress overviewWordpress overview
Wordpress overview
 
Getting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationGetting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundation
 
DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014
 
A Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 MinutesA Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 Minutes
 
WordPress - fixing sites with problems
WordPress - fixing sites with problemsWordPress - fixing sites with problems
WordPress - fixing sites with problems
 
Deployer - Deployment tool for PHP
Deployer - Deployment tool for PHPDeployer - Deployment tool for PHP
Deployer - Deployment tool for PHP
 
WordPress Beginners Workshop
WordPress Beginners WorkshopWordPress Beginners Workshop
WordPress Beginners Workshop
 
Put A Map On It! Enhanced geolocation in WordPress with Geo Mashup
Put A Map On It! Enhanced geolocation in WordPress with Geo MashupPut A Map On It! Enhanced geolocation in WordPress with Geo Mashup
Put A Map On It! Enhanced geolocation in WordPress with Geo Mashup
 
One Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp LondonOne Drupal to rule them all - Drupalcamp London
One Drupal to rule them all - Drupalcamp London
 
WordPress Template Hierarchy
WordPress Template HierarchyWordPress Template Hierarchy
WordPress Template Hierarchy
 
Drupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with ZenDrupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with Zen
 
Pimp your wp site
Pimp your wp sitePimp your wp site
Pimp your wp site
 

Similar a Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore

Cross Site Collection Navigation
Cross Site Collection NavigationCross Site Collection Navigation
Cross Site Collection NavigationThomas Daly
 
Web technologies-course 06.pptx
Web technologies-course 06.pptxWeb technologies-course 06.pptx
Web technologies-course 06.pptxStefan Oprea
 
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JSCross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JSThomas Daly
 
Drupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon BarcelonaDrupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon Barcelonahernanibf
 
Drupal: Organizing Content for Multiple Audiences
Drupal: Organizing Content for Multiple AudiencesDrupal: Organizing Content for Multiple Audiences
Drupal: Organizing Content for Multiple AudiencesiFactory
 
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slides
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slidesKeep Your Code Organized! WordCamp Montreal 2013 Presentation slides
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slidesJer Clarke
 
Drupal Step-by-Step: How We Built Our Training Site, Part 2
Drupal Step-by-Step: How We Built Our Training Site, Part 2Drupal Step-by-Step: How We Built Our Training Site, Part 2
Drupal Step-by-Step: How We Built Our Training Site, Part 2Acquia
 
Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016
Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016
Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016Jim Adcock
 
Sitecore sxa best practices and secrets 29th june 2021
Sitecore sxa best practices and secrets   29th june 2021Sitecore sxa best practices and secrets   29th june 2021
Sitecore sxa best practices and secrets 29th june 2021Jitendra Soni
 
Stupid Index Block Tricks
Stupid Index Block TricksStupid Index Block Tricks
Stupid Index Block Trickshannonhill
 
Creating Landing Pages for Drupal 8
Creating Landing Pages for Drupal 8Creating Landing Pages for Drupal 8
Creating Landing Pages for Drupal 8Exove
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress UniversityStephanie Leary
 
Advanced Site Studio Class, June 18, 2012
Advanced Site Studio Class, June 18, 2012Advanced Site Studio Class, June 18, 2012
Advanced Site Studio Class, June 18, 2012Lee Klement
 
Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Derek Jacoby
 
Building a Great User Experience for Content Editors in Drupal 8
Building a Great User Experience for Content Editors in Drupal 8Building a Great User Experience for Content Editors in Drupal 8
Building a Great User Experience for Content Editors in Drupal 8Suzanne Dergacheva
 
Gutenberg (WidgiLabs Training Sessions)
Gutenberg  (WidgiLabs Training Sessions)Gutenberg  (WidgiLabs Training Sessions)
Gutenberg (WidgiLabs Training Sessions)Nuno Morgadinho
 
Implementing SharePoint: Site Customization and Branding
Implementing SharePoint: Site Customization and BrandingImplementing SharePoint: Site Customization and Branding
Implementing SharePoint: Site Customization and Brandingdrudolph11
 
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
 

Similar a Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore (20)

Cross Site Collection Navigation
Cross Site Collection NavigationCross Site Collection Navigation
Cross Site Collection Navigation
 
Web technologies-course 06.pptx
Web technologies-course 06.pptxWeb technologies-course 06.pptx
Web technologies-course 06.pptx
 
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JSCross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
Cross Site Collection Navigation using SPFx, Powershell PnP & PnP-JS
 
Drupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon BarcelonaDrupal architectures for flexible content - Drupalcon Barcelona
Drupal architectures for flexible content - Drupalcon Barcelona
 
Drupal: Organizing Content for Multiple Audiences
Drupal: Organizing Content for Multiple AudiencesDrupal: Organizing Content for Multiple Audiences
Drupal: Organizing Content for Multiple Audiences
 
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slides
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slidesKeep Your Code Organized! WordCamp Montreal 2013 Presentation slides
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slides
 
Drupal Step-by-Step: How We Built Our Training Site, Part 2
Drupal Step-by-Step: How We Built Our Training Site, Part 2Drupal Step-by-Step: How We Built Our Training Site, Part 2
Drupal Step-by-Step: How We Built Our Training Site, Part 2
 
Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016
Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016
Quick Wins to Jump Start Your SharePoint Implementation - SPEngage Raleigh 2016
 
Sitecore sxa best practices and secrets 29th june 2021
Sitecore sxa best practices and secrets   29th june 2021Sitecore sxa best practices and secrets   29th june 2021
Sitecore sxa best practices and secrets 29th june 2021
 
Stupid Index Block Tricks
Stupid Index Block TricksStupid Index Block Tricks
Stupid Index Block Tricks
 
Creating Landing Pages for Drupal 8
Creating Landing Pages for Drupal 8Creating Landing Pages for Drupal 8
Creating Landing Pages for Drupal 8
 
The WordPress University
The WordPress UniversityThe WordPress University
The WordPress University
 
Advanced Site Studio Class, June 18, 2012
Advanced Site Studio Class, June 18, 2012Advanced Site Studio Class, June 18, 2012
Advanced Site Studio Class, June 18, 2012
 
Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Untangling - fall2017 - week 9
Untangling - fall2017 - week 9
 
72d5drupal
72d5drupal72d5drupal
72d5drupal
 
Building a Great User Experience for Content Editors in Drupal 8
Building a Great User Experience for Content Editors in Drupal 8Building a Great User Experience for Content Editors in Drupal 8
Building a Great User Experience for Content Editors in Drupal 8
 
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)
 
Gutenberg (WidgiLabs Training Sessions)
Gutenberg  (WidgiLabs Training Sessions)Gutenberg  (WidgiLabs Training Sessions)
Gutenberg (WidgiLabs Training Sessions)
 
Implementing SharePoint: Site Customization and Branding
Implementing SharePoint: Site Customization and BrandingImplementing SharePoint: Site Customization and Branding
Implementing SharePoint: Site Customization and Branding
 
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
 

Más de Suzanne Dergacheva

It's All About the Experience: What I’ve learnt from talking to thousands of ...
It's All About the Experience: What I’ve learnt from talking to thousands of ...It's All About the Experience: What I’ve learnt from talking to thousands of ...
It's All About the Experience: What I’ve learnt from talking to thousands of ...Suzanne Dergacheva
 
Dipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module DevelopmentDipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module DevelopmentSuzanne Dergacheva
 
Device-Agnostic Content Strategy for Drupal
Device-Agnostic Content Strategy for DrupalDevice-Agnostic Content Strategy for Drupal
Device-Agnostic Content Strategy for DrupalSuzanne Dergacheva
 
What is Drupal? An Introduction to Drupal 8
What is Drupal? An Introduction to Drupal 8What is Drupal? An Introduction to Drupal 8
What is Drupal? An Introduction to Drupal 8Suzanne Dergacheva
 
Upgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and GotchasUpgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and GotchasSuzanne Dergacheva
 
Migrate for Site Builders from MidCamp 2016
Migrate for Site Builders from MidCamp 2016Migrate for Site Builders from MidCamp 2016
Migrate for Site Builders from MidCamp 2016Suzanne Dergacheva
 
Intro to Drupal Migrate for Site Builders
Intro to Drupal Migrate for Site BuildersIntro to Drupal Migrate for Site Builders
Intro to Drupal Migrate for Site BuildersSuzanne Dergacheva
 
10 New Things You Can Do with Drupal 8 Out-of-the-Box
10 New Things You Can Do with Drupal 8 Out-of-the-Box10 New Things You Can Do with Drupal 8 Out-of-the-Box
10 New Things You Can Do with Drupal 8 Out-of-the-BoxSuzanne Dergacheva
 
Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...
Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...
Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...Suzanne Dergacheva
 
Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014
Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014
Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014Suzanne Dergacheva
 
Using Panels Wisely - DrupalCamp Ottawa 2014
Using Panels Wisely - DrupalCamp Ottawa 2014Using Panels Wisely - DrupalCamp Ottawa 2014
Using Panels Wisely - DrupalCamp Ottawa 2014Suzanne Dergacheva
 
Meilleures pratiques pour construire un site web Drupal
Meilleures pratiques pour construire un site web DrupalMeilleures pratiques pour construire un site web Drupal
Meilleures pratiques pour construire un site web DrupalSuzanne Dergacheva
 
Site Building Checklist DrupalCamp Ottawa
Site Building Checklist DrupalCamp OttawaSite Building Checklist DrupalCamp Ottawa
Site Building Checklist DrupalCamp OttawaSuzanne Dergacheva
 
Drupal Site Building Checklist from DrupalCamp New Jersey
Drupal Site Building Checklist from DrupalCamp New JerseyDrupal Site Building Checklist from DrupalCamp New Jersey
Drupal Site Building Checklist from DrupalCamp New JerseySuzanne Dergacheva
 
Views Configuration at Drupal Camp Toronto 2012
Views Configuration at Drupal Camp Toronto 2012Views Configuration at Drupal Camp Toronto 2012
Views Configuration at Drupal Camp Toronto 2012Suzanne Dergacheva
 
Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012
Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012
Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012Suzanne Dergacheva
 

Más de Suzanne Dergacheva (18)

It's All About the Experience: What I’ve learnt from talking to thousands of ...
It's All About the Experience: What I’ve learnt from talking to thousands of ...It's All About the Experience: What I’ve learnt from talking to thousands of ...
It's All About the Experience: What I’ve learnt from talking to thousands of ...
 
Dipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module DevelopmentDipping Your Toe into Drupal 8 Module Development
Dipping Your Toe into Drupal 8 Module Development
 
Device-Agnostic Content Strategy for Drupal
Device-Agnostic Content Strategy for DrupalDevice-Agnostic Content Strategy for Drupal
Device-Agnostic Content Strategy for Drupal
 
What is Drupal? An Introduction to Drupal 8
What is Drupal? An Introduction to Drupal 8What is Drupal? An Introduction to Drupal 8
What is Drupal? An Introduction to Drupal 8
 
Using Core Themes in Drupal 8
Using Core Themes in Drupal 8Using Core Themes in Drupal 8
Using Core Themes in Drupal 8
 
Upgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and GotchasUpgrading to Drupal 8: Benefits and Gotchas
Upgrading to Drupal 8: Benefits and Gotchas
 
Migrate for Site Builders from MidCamp 2016
Migrate for Site Builders from MidCamp 2016Migrate for Site Builders from MidCamp 2016
Migrate for Site Builders from MidCamp 2016
 
Intro to Drupal Migrate for Site Builders
Intro to Drupal Migrate for Site BuildersIntro to Drupal Migrate for Site Builders
Intro to Drupal Migrate for Site Builders
 
Drupal migrate-june2015
Drupal migrate-june2015Drupal migrate-june2015
Drupal migrate-june2015
 
10 New Things You Can Do with Drupal 8 Out-of-the-Box
10 New Things You Can Do with Drupal 8 Out-of-the-Box10 New Things You Can Do with Drupal 8 Out-of-the-Box
10 New Things You Can Do with Drupal 8 Out-of-the-Box
 
Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...
Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...
Creating a User-Friendly Search UI with Drupal - Presentation at DrupalCamp T...
 
Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014
Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014
Getting Started with Drupal 8 Theming - DrupalCamp Toronto 2014
 
Using Panels Wisely - DrupalCamp Ottawa 2014
Using Panels Wisely - DrupalCamp Ottawa 2014Using Panels Wisely - DrupalCamp Ottawa 2014
Using Panels Wisely - DrupalCamp Ottawa 2014
 
Meilleures pratiques pour construire un site web Drupal
Meilleures pratiques pour construire un site web DrupalMeilleures pratiques pour construire un site web Drupal
Meilleures pratiques pour construire un site web Drupal
 
Site Building Checklist DrupalCamp Ottawa
Site Building Checklist DrupalCamp OttawaSite Building Checklist DrupalCamp Ottawa
Site Building Checklist DrupalCamp Ottawa
 
Drupal Site Building Checklist from DrupalCamp New Jersey
Drupal Site Building Checklist from DrupalCamp New JerseyDrupal Site Building Checklist from DrupalCamp New Jersey
Drupal Site Building Checklist from DrupalCamp New Jersey
 
Views Configuration at Drupal Camp Toronto 2012
Views Configuration at Drupal Camp Toronto 2012Views Configuration at Drupal Camp Toronto 2012
Views Configuration at Drupal Camp Toronto 2012
 
Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012
Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012
Drupal 7 for Government Case Study: Presentation at DrupalCamp Montreal 2012
 

Último

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
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
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 

Último (20)

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
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
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 

Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore

  • 1. Our expertise. Your digital DNA | evolvingweb.ca | @evolvingweb CREATING LANDING PAGES AND LAYOUTS For Drupal 8
  • 2. SUZANNE DERGACHEVA • Drupal trainer • Co-founded Evolving Web in 2007 • Manage Drupal projects • Experienced site builder, themer, and developer • Follow me @suzanne_kennedy
  • 3. Our expertise. Your digital DNA. .ca
  • 4. WE MAKE DRUPAL WEBSITES FOR ALL TYPES OF CLIENTS
  • 5. • Large, scalable infrastructure and deployments • Multilingual content management • Flexible search interfaces • Content import and synchronization • Custom Drupal development • Integration with external IT systems WHAT WE DO
  • 7. CREATING LAYOUTS & LANDING PAGES IN D8 • Planning Your Landing Pages • Landing Page Configuration • Overall Layout • Theming Approaches + Sustainable Layouts
  • 9. WHAT’S A LANDING PAGE? • Target a particular audience • Display marketing content and calls to action (CTAs) • Distinctive layout and content set • Funnel users towards content they’re looking for • Registration, login, search forms
  • 10. QUESTIONS TO ASK • Are you going to be creating many similar landing pages? • Is content curated by humans or aggregated by Drupal? • Do calls to action need to be re-usable from one landing page to another? • Is the content going to be moved around frequently by editors? • Do you need to be able to change the layout easily?
  • 11. USE CASES • Re-usable landing pages with a consistent layout • 1-time use landing pages • Landing pages with a flexible layout
  • 14. REQUIREMENTS • You need to create multiple landing pages • Landing pages need to have consistent styling/layout but variable content • Editors need to be able to edit the calls to action easily • Calls to action can link to anywhere (internal/external links) • There are different types of calls to action (links, videos, downloads, forms) • Calls to action have different styles
  • 15. LANDING PAGE CONTENT TYPE Banner Image Field Components that can change Title Title Prefix Field
  • 16. LANDING PAGE CONTENT TYPE Banner Image Field Components that can change Title
  • 17. PARAGRAPHS • Set up each call to action as a Paragraph field on a landing page • Each paragraph has the title, image, text, and link fields • You can edit the paragraphs when you edit the landing page • Title • Image • Text • Link • Title • Image • Text • Link Paragraph CTA Paragraph CTA Paragraph CTA • Title • Image • Text • Link
  • 19. PARAGRAPH TYPES • A paragraphs field can reference multiple paragraph types • You can allow users to choose whether to add a video, image, or file download call to action • Title • Image • Text • Link • Title • Image • Text • Files Video Call to Action File Download • Title • Text • Video • Thumbnail
  • 21. ADDING CALLS TO ACTION
  • 22. ALTERNATIVE: REUSABLE COMPONENTS • If you need the components to be reusable: Create an entity reference field to add custom blocks with Inline Entity Form
  • 24.
  • 25. REQUIREMENTS • You need to create a single, distinct landing page • Content from the landing page might be re-used elsewhere • Some content needs to be aggregated from across your site • You might need to re-order sections of the page occasionally
  • 26. Custom block (banner type) Custom blocks (CTA type) Views
  • 27. CALLS TO ACTION VIEW • This view shows a list of featured pages • Selection/ordering logic is pre-defined • Each call to action displays fields from the featured page • Downside: you have to edit the individual pages to change the content
  • 28. CALL TO ACTION BLOCKS • Each Call to Action block has title, background image, text, and links fields • Place the block on the landing page, can be re-ordered • Re-use the blocks on other pages
  • 29. WHY USE BLOCK TYPES? • Reusable, fieldable, movable • Blocks are in core • Downsides: • Blocks are placed and stored in a separate part of the UI
  • 30. SETTINGS TRAY & PLACE BLOCK
  • 32. LANDING PAGES WITH A FLEXIBLE LAYOUT
  • 33. LANDING PAGE WITH A FLEXIBLE LAYOUT
  • 34. REQUIREMENTS • You have a series of landing pages with different layouts • You need to be able to easily change the layout of the page (1 column, 2 column, etc) • You can adjust the content in the selected layout
  • 36. WHY USE PANELS • 1 edit link to edit content + layout • In-place editor • User-friendly, drag-and-drop
  • 37. NESTED PARAGRAPHS Choose the layout Add the content to the layout
  • 39. NESTED PARAGRAPHS • 1 edit link • Easy to switch the layout • Create a limited number of layout types • Control which calls to action can go where • Manage Form Display - customize the admin UI to avoid performance issues with nested paragraphs
  • 40. LAYOUTS IN CORE System for defining and using layouts is in core - Field Layouts module (experimental) https:// www.drupal.org/ node/2578731
  • 41. COMING SOON…. LAYOUTS PER NODE • Next step: allow for customization the layout per node • Watch Tim Plunkett’s ‘The Continuing Saga of Layouts in Drupal 8’ • Come to the sprints tomorrow!
  • 43. BLOCKS & REGIONS • Everything is displayed via a block • You place blocks in regions • Include enough regions in your theme to create the overall layout you need
  • 45. OVERALL LAYOUT Header second Header first Footer first Footer second Footer top Content
  • 46. How do you create the layouts within your content?
  • 47. THEMING APPROACHES • Update the Markup • Use a framework comes with pre-defined, generic classes (e.g. Bootstrap, Foundation) • Create a theme ‘from scratch’ where you define generic classes • Update the CSS • Use a framework where you write SASS to apply pre-defined mixins • Create a theme ‘from scratch’ where you add classes as selectors as you add components
  • 50. CSS ALREADY EXISTS @media screen and (min-width: 1180px){ .grid-2-column { width: 50%; display: inline-block; } } Bootstrap Custom CSS
  • 51. UPDATING THE MARKUP {% set classes = [ page.sidebar_first ? '3-col-grid', ] %} <div{{ attributes.addClass(classes) }}> {{ title_prefix }} {% if label %} <h2>{{ label }}</h2> {% endif %} {{ title_suffix }} {% block content %} {{ content }} {% endblock %} </div> field--paragraph--field-calls-to-action-column-1.html.twig field--paragraph--field-calls-to-action-column-2.html.twig {% set classes = [ 'field', 'field--name-' ~ field_name|clean_class, 'field--type-' ~ field_type|clean_class, 'field--label-' ~ label_display, 'col-md-6', 'grid-2-column', ] %}
  • 53. CSS ALREADY EXISTS @media screen and (min-width: 1180px){ .grid-3-column { width: 33%; display: inline-block; } } Bootstrap Custom CSS
  • 54. UPDATING THE MARKUP Views Grid Settings
  • 55. UPDATING THE MARKUP • Your Twig templates • Add overall layout classes in page.html.twig • Add classes in block, field, other templates • Views configuration • In grid settings, row settings, or overall CSS class • Panels configuration • Blocks config • Block Class module • Implement THEMENAME_theme_suggestions_block_alter to override custom block templates • Paragraphs Bootstrap module (watch talk from Wednesday) • Your content (Customize the WYSIWYG styles options)
  • 58. UPDATING THE CSS @media screen and (min-width: 1180px){ .field—name-field-calls-to-action-column-1, .field—name-field-calls-to-action-column-2 { display: inline-block; width: 50%; } }
  • 60. UPDATING THE CSS @media screen and (min-width: 1180px){ .view-drupalorg-casestudies .views-row { display: inline-block; width: 33%; } }
  • 61. UPDATING THE CSS • You start with some initial CSS to handle your layout • When you add new components (views, paragraphs, blocks, regions) you update your CSS to add the new selectors • SASS makes it easier to do this cleanly
  • 62. BEST PRACTICES FOR SUSTAINABLE LAYOUTS • Plan which layouts your theme will allow • Limit the layout options available - layouts API • Create separate layout CSS files and make your layout CSS generic enough to be re-usable for different components • Nothing in your theme should be content-specific • Document your layouts and how they handle new elements
  • 63. ALL THE MODULES • Contrib Modules • Paragraphs & Entity Reference Revisions • Block Visibility Groups • Bootstrap Paragraphs • Panels, Page Manager • Inline Entity Form • Styleguide • Core Experimental Modules • Settings Tray • Place Blocks • Field Layout & Layout Discovery
  • 64. UPCOMING DRUPAL TRAININGS • Content Strategy for Drupal - Online May 3-5 • Drupal 8 Theming - Online - May 8-12 • Introduction to Drupal 8 - Online - May 24-26 • Drupal 8 Module Development - Online - May 29 - June 2 • 5-Day Drupal 8 Training - Washington D.C. - June 5-9 • Drupal Essentials - Atlanta - June 12-13 • Drupal 8 Theming & Mod Dev - Atlanta - October 10-13 evolvingweb.ca/training
  • 65. SPRINTS ON FRIDAY • Come to the sprints tomorrow (in this room!) • Layouts Initiative • Usability Initiative • First-Time Sprinter Workshop • Mentored Core Sprint • #DrupalThanks in advance!