SlideShare a Scribd company logo
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!

More Related Content

What's hot

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
Suzanne 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 - Webinar
Suzanne 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 Toolkit
Suzanne Dergacheva
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
David Burns
 
Zurb foundation
Zurb foundationZurb foundation
Zurb foundation
sean_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 Grids
Suzanne Dergacheva
 
Responsive Web Design using ZURB Foundation
Responsive Web Design using ZURB FoundationResponsive Web Design using ZURB Foundation
Responsive Web Design using ZURB Foundation
SolTech, Inc.
 
Responsive themeworkshop wcneo2016
Responsive themeworkshop wcneo2016Responsive themeworkshop wcneo2016
Responsive themeworkshop wcneo2016
David Brattoli
 
Wordpress overview
Wordpress overviewWordpress overview
Wordpress overview
Plasterdog Web Design
 
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
Melanie Archer
 
DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014
Suzanne Dergacheva
 
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
Snake Hill Web Agency
 
WordPress - fixing sites with problems
WordPress - fixing sites with problemsWordPress - fixing sites with problems
WordPress - fixing sites with problems
Victoria Pickering
 
Deployer - Deployment tool for PHP
Deployer - Deployment tool for PHPDeployer - Deployment tool for PHP
Deployer - Deployment tool for PHP
hernanibf
 
WordPress Beginners Workshop
WordPress Beginners WorkshopWordPress Beginners Workshop
WordPress Beginners Workshop
The 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 Mashup
Jer 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 London
hernanibf
 
WordPress Template Hierarchy
WordPress Template HierarchyWordPress Template Hierarchy
WordPress Template Hierarchy
Sarah 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 Zen
Japo Domingo
 
Pimp your wp site
Pimp your wp sitePimp your wp site
Pimp your wp site
Warren Denley
 

What's hot (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 to Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore

Cross Site Collection Navigation
Cross Site Collection NavigationCross Site Collection Navigation
Cross Site Collection Navigation
Thomas Daly
 
Web technologies-course 06.pptx
Web technologies-course 06.pptxWeb technologies-course 06.pptx
Web technologies-course 06.pptx
Stefan 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-JS
Thomas 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 Barcelona
hernanibf
 
Drupal: Organizing Content for Multiple Audiences
Drupal: Organizing Content for Multiple AudiencesDrupal: Organizing Content for Multiple Audiences
Drupal: Organizing Content for Multiple Audiences
iFactory
 
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
Jer 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 2016
Jim 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 2021
Jitendra Soni
 
Stupid Index Block Tricks
Stupid Index Block TricksStupid Index Block Tricks
Stupid Index Block Tricks
hannonhill
 
Creating Landing Pages for Drupal 8
Creating Landing Pages for Drupal 8Creating Landing Pages for Drupal 8
Creating Landing Pages for Drupal 8
Exove
 
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, 2012
Lee Klement
 
Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Untangling - fall2017 - week 9
Untangling - fall2017 - week 9
Derek 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 8
Suzanne Dergacheva
 
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)
Katherine McCurdy-Lapierre, R.G.D.
 
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 Management
Phase2
 

Similar to 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
 

More from 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 Development
Suzanne Dergacheva
 
Device-Agnostic Content Strategy for Drupal
Device-Agnostic Content Strategy for DrupalDevice-Agnostic Content Strategy for Drupal
Device-Agnostic Content Strategy for Drupal
Suzanne 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 8
Suzanne Dergacheva
 
Using Core Themes in Drupal 8
Using Core Themes in Drupal 8Using Core Themes in Drupal 8
Using Core Themes in Drupal 8
Suzanne 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 Gotchas
Suzanne 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 2016
Suzanne 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 Builders
Suzanne 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-Box
Suzanne 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 2014
Suzanne Dergacheva
 
Using Panels Wisely - DrupalCamp Ottawa 2014
Using Panels Wisely - DrupalCamp Ottawa 2014Using Panels Wisely - DrupalCamp Ottawa 2014
Using Panels Wisely - DrupalCamp Ottawa 2014
Suzanne 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 Drupal
Suzanne Dergacheva
 
Site Building Checklist DrupalCamp Ottawa
Site Building Checklist DrupalCamp OttawaSite Building Checklist DrupalCamp Ottawa
Site Building Checklist DrupalCamp Ottawa
Suzanne 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 Jersey
Suzanne 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 2012
Suzanne 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 2012
Suzanne Dergacheva
 

More from 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
 

Recently uploaded

zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 

Recently uploaded (20)

zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 

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!