SlideShare a Scribd company logo
Our expertise. Your digital DNA | evolvingweb.ca | @evolvingweb
CREATING A RE-USABLE
DRUPAL SITE
For Higher-Education
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
• Design & develop large-scale Drupal websites
• Create flexible search interfaces
• Content import and synchronization
• Integration with external IT systems
• Drupal training for individuals and teams
WHAT WE DO
DRUPAL 8 TRAINING
WHY CREATE A RE-USABLE SITE?
• Easier to maintain
• Less work to spin up a new site
• Easier to train everyone
• Best practices are reused by everyone
• Easier to run updates for everyone at once
WHY CREATE A RE-USABLE SITE?
PROCESS TO CREATE A RE-USABLE SITE
• Plan which configuration, themes, and modules will be part of
your standard site
• Plan which parts of the site will be able to change
• Create sample sites with your standard install
• Test & Iterate
• Plan how you’re going to deploy your sites
HOW TO RE-USE A DRUPAL SITE
• Copy/paste
• Run a script
• Create an install profile
• Create a distribution
• Set up a multi-site install
PLANNING YOUR SITE
• Identify groups of sites (departments,
research groups, administrative groups,
labs, committees)
• Consider making a separate standard
site for each group
• For each group, identify:
• Common look and feel components
(theme)
• Content types and functionality
(configuration)
• Standard modules (modules in sites/
all)
• Identify common deviations:
• Theme variations (theme settings)
• Variable configuration
• Non-standard modules
CONFIGURATION
ANALYSE THE REQUIREMENTS
FIXED CONFIGURATION
• Things that are identical for all sites:
• Contexts
• Views
• Content Types
• WYSIWYG profiles
• Permissions
FLEXIBLE CONFIGURATION
• Things that admins need to be able to change.
• Set the defaults on install, but then expect them to change
• Block Placement
• Name of the site
• Menu items
• Theme settings
EXAMPLE: SOCIAL MEDIA BLOCK
Add to Any block
EXAMPLE: MAIN MENU BLOCK
Main Menu block
HOMEPAGE CONTENT
Homepage Config
EXAMPLE: VIDEOS PAGE
Video Content Type &
Videos View
EXAMPLE: GLOBAL NEWS FEED
Global News View
Created by querying a
json feed. There’s a
module setting that will
change per site
EXAMPLE: WYSIWYG
CREATING FLEXIBLE CONFIG
• Drupal 7:
• Default config that comes from an install profile, initial
database, or script
• Drupal 8:
• Configuration Management (.yml files)
• Track which configuration should change (modules like
config_split or config_ignore)
CREATING FIXED CONFIG
• Drupal 7:
• Features
• Drupal 8:
• Features
• Configuration Management (.yml files)
RE-USABLE THEMES
THEME SETTINGS
• Use a single theme, but
include variation
• Banner height
• Background image
• Region placement
• ‘Sub-title’
THEME VARIATIONS
THEMING KEY COMPONENTS
MAIN THEME VS. SUB-THEMES
THEME SETTINGS
• You might have some theme settings that you want to set in the install
process:
• Variable colour schemes
• Banner image
• Height of the banner section
• Distinct themes for different use cases
• Background images
• Region placement
STYLE GUIDES!
• Style guides for content
• WYSIWYG Editor Format options
• Use the styleguide module to anticipate content needs
STYLING VARIABLE CONFIG
• Panels
• Block placement
• Out-of-control menu configuration
• Webforms
HARD-CODED STUFF
• Header/footer
• Social Media links
• Logo and branding
• Breadcrumbs (what’s home?)
HOW TO CREATE A BUNCH OF SITES
• Copy/paste
• Run a script (write your own)
• Create an install profile
• Create a distribution (like an install profile)
• Set up a multi-site install
CREATING AN INSTALL PROFILE
INSTALL PROFILE
• Installs modules/themes by default
• Creates sample content
• Set variables
• Allows admins to choose options
• Creates consistent versions of the same site
BENEFITS
• Deploying lots of similar websites
• Be able to make changes to them quickly
• Limit the variability between websites
• Make it easier for content editors to get up and running
WHERE TO START?
• Look at the minimal/standard install profiles in core
• Your list of modules
• Add custom modules and themes you’ve developed
• Install your theme
• Include the configuration you’ve developed (features or .yml
files)
SELECTION
INSTALLING DRUPAL (BASIC)
MULTILINGUAL INSTALL PROFILE
OPENFOLIO: CUSTOM STEPS
OPENFOLIO: CUSTOM STEPS
MULTI-SITE
MULTI-SITE…
SINGLE WEBSITE
sites/default/settings.php
example.com
MULTI-SITE
sites/example.com/settings.php sites/example2.com/settings.php
example.com example2.com
FILE HIERARCHY
/sites/default
The default site that is served if no mapping is
specified
/sites/all
A shared directory that all sites will have access to
/sites/[sitename]
Site-specific files
MULTI-SITE PROBLEMS
• Single point-of-failure
• Errors across all sites
• Performance issues across all sites
• Running update.php simultaneously
• Difficult to manage exceptions for unique sites (module and
theme versions)
• Difficult to test prior to upgrading
MULTI-SITE BENEFITS
• Easier to upgrade code ONCE
• Don’t have multiple codebases to maintain
• Same documentation for everyone - how to do things
• Easier to share best practices
COMPROMISE
• Plan, plan, plan! If everyone is using one base, make it a good
one
• Use multi-site for very similar sites
• Run unique sites separately
• Use a tool to help manage your multi-sites
MUTLTI-SITE TOOLS
• Aegir (aegirproject.org)
• Pantheon
• Acquia Site Factory
• Build your own…
TOOLS FOR SUCCESS
• Gather representative content to test your standard site
• Create a migration to facilitate testing)
• Create a list of sample URLs to test
• Use a tool to track differences between sites when running security updates
• Site Diff: https://github.com/evolvingweb/sitediff
• Create standards
• Content Style Guides
• Design Style Guides
RESOURCES
• https://evolvingweb.ca/blog/drupal-8-configuration-
management-multi-site
• https://www.drupal.org/docs/7/creating-distributions/how-to-
write-a-drupal-7-installation-profile
• https://www.drupal.org/docs/8/creating-distributions/how-to-
write-a-drupal-8-installation-profile
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
• Drupal Essentials - Atlanta - June 12-13
• Drupal 8 Theming - Atlanta - October 10-11
• Drupal 8 Module Development - Atlanta - October 12-13

More Related Content

PDF
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore
PDF
Creating a Reusable Drupal Website for Higher Education - Webinar
PDF
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
PDF
Creating a Drupal Install Profile for a Large Organization
PDF
The Wonderful World of Drupal 8 Multilingual
PPTX
Creating Web Templates for SharePoint 2010
PDF
Minimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
PDF
What is Drupal? And Why is it Useful? Webinar
Creating Landing Pages and Layouts for Drupal 8 - DrupalCon Baltimore
Creating a Reusable Drupal Website for Higher Education - Webinar
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
Creating a Drupal Install Profile for a Large Organization
The Wonderful World of Drupal 8 Multilingual
Creating Web Templates for SharePoint 2010
Minimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
What is Drupal? And Why is it Useful? Webinar

What's hot (20)

ZIP
Building a Drupal Distribution using Features, Drush Make, Installation Profi...
PDF
Introduction to the Drupal - Web Experience Toolkit
PDF
Creating Dynamic Landing Pages for Drupal with Panels - Webinar
ODP
Drupal - Blocks vs Context vs Panels
PDF
Zurb foundation
PDF
Responsive Web Design using ZURB Foundation
PDF
Responsive Design in Drupal with Zen and Zen Grids
PPTX
Wordpress overview
KEY
Getting started with CSS frameworks using Zurb foundation
PDF
Deployer - Deployment tool for PHP
KEY
WordPress - fixing sites with problems
PDF
DrupalCamp NYC Panels Presentation - April 2014
PDF
WordPress Beginners Workshop
PPTX
Responsive themeworkshop wcneo2016
PPTX
One Drupal to rule them all - Drupalcamp London
PDF
WordPress Template Hierarchy
PDF
Drupal content editor flexibility
PDF
Online exhibits in Plone
PDF
Pimp your wp site
PDF
A Custom Drupal Theme in 40 Minutes
Building a Drupal Distribution using Features, Drush Make, Installation Profi...
Introduction to the Drupal - Web Experience Toolkit
Creating Dynamic Landing Pages for Drupal with Panels - Webinar
Drupal - Blocks vs Context vs Panels
Zurb foundation
Responsive Web Design using ZURB Foundation
Responsive Design in Drupal with Zen and Zen Grids
Wordpress overview
Getting started with CSS frameworks using Zurb foundation
Deployer - Deployment tool for PHP
WordPress - fixing sites with problems
DrupalCamp NYC Panels Presentation - April 2014
WordPress Beginners Workshop
Responsive themeworkshop wcneo2016
One Drupal to rule them all - Drupalcamp London
WordPress Template Hierarchy
Drupal content editor flexibility
Online exhibits in Plone
Pimp your wp site
A Custom Drupal Theme in 40 Minutes
Ad

Similar to Creating a Reusable Drupal Website for Higher Education - at USG Tech Day (20)

PDF
Phase2 Large Drupal Multisites (gta case study)
PPT
Phase2 - Large Drupal Multisites (GTA Case Study)
PPTX
72d5drupal
PPTX
The WordPress University
PDF
Wordpress intro
PDF
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slides
PDF
One drupal to rule them all - Drupalcamp Caceres
ZIP
Using Features
KEY
Introduction to Drupal
PPT
Deployment Strategies: Managing Code, Content, and Configurations
PDF
Last Call Media Drupal 8 Case Study
PDF
Absolute Beginners Guide to Drupal
PDF
Rapid WordPress theme development
PPTX
Branding office 365 with front end tooling
PDF
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
PDF
Building a Great User Experience for Content Editors in Drupal 8
PPTX
Drupal Skils Lab 302Labs
PDF
Working in harmony
PDF
Create Your Own Starter Files
PPT
Joomla! theming
Phase2 Large Drupal Multisites (gta case study)
Phase2 - Large Drupal Multisites (GTA Case Study)
72d5drupal
The WordPress University
Wordpress intro
Keep Your Code Organized! WordCamp Montreal 2013 Presentation slides
One drupal to rule them all - Drupalcamp Caceres
Using Features
Introduction to Drupal
Deployment Strategies: Managing Code, Content, and Configurations
Last Call Media Drupal 8 Case Study
Absolute Beginners Guide to Drupal
Rapid WordPress theme development
Branding office 365 with front end tooling
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Building a Great User Experience for Content Editors in Drupal 8
Drupal Skils Lab 302Labs
Working in harmony
Create Your Own Starter Files
Joomla! theming
Ad

More from Suzanne Dergacheva (18)

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

Recently uploaded (20)

PPTX
QR Codes Qr codecodecodecodecocodedecodecode
PDF
RPKI Status Update, presented by Makito Lay at IDNOG 10
PDF
Tenda Login Guide: Access Your Router in 5 Easy Steps
PPTX
522797556-Unit-2-Temperature-measurement-1-1.pptx
PPTX
Internet___Basics___Styled_ presentation
PPTX
INTERNET------BASICS-------UPDATED PPT PRESENTATION
PPTX
PptxGenJS_Demo_Chart_20250317130215833.pptx
PDF
Slides PDF The World Game (s) Eco Economic Epochs.pdf
PDF
WebRTC in SignalWire - troubleshooting media negotiation
PPTX
Slides PPTX World Game (s) Eco Economic Epochs.pptx
PDF
The Internet -By the Numbers, Sri Lanka Edition
PDF
Unit-1 introduction to cyber security discuss about how to secure a system
PPTX
artificial intelligence overview of it and more
PPTX
CHE NAA, , b,mn,mblblblbljb jb jlb ,j , ,C PPT.pptx
PPT
Design_with_Watersergyerge45hrbgre4top (1).ppt
PPTX
June-4-Sermon-Powerpoint.pptx USE THIS FOR YOUR MOTIVATION
PPTX
Introuction about WHO-FIC in ICD-10.pptx
PDF
Decoding a Decade: 10 Years of Applied CTI Discipline
PPTX
introduction about ICD -10 & ICD-11 ppt.pptx
PDF
Cloud-Scale Log Monitoring _ Datadog.pdf
QR Codes Qr codecodecodecodecocodedecodecode
RPKI Status Update, presented by Makito Lay at IDNOG 10
Tenda Login Guide: Access Your Router in 5 Easy Steps
522797556-Unit-2-Temperature-measurement-1-1.pptx
Internet___Basics___Styled_ presentation
INTERNET------BASICS-------UPDATED PPT PRESENTATION
PptxGenJS_Demo_Chart_20250317130215833.pptx
Slides PDF The World Game (s) Eco Economic Epochs.pdf
WebRTC in SignalWire - troubleshooting media negotiation
Slides PPTX World Game (s) Eco Economic Epochs.pptx
The Internet -By the Numbers, Sri Lanka Edition
Unit-1 introduction to cyber security discuss about how to secure a system
artificial intelligence overview of it and more
CHE NAA, , b,mn,mblblblbljb jb jlb ,j , ,C PPT.pptx
Design_with_Watersergyerge45hrbgre4top (1).ppt
June-4-Sermon-Powerpoint.pptx USE THIS FOR YOUR MOTIVATION
Introuction about WHO-FIC in ICD-10.pptx
Decoding a Decade: 10 Years of Applied CTI Discipline
introduction about ICD -10 & ICD-11 ppt.pptx
Cloud-Scale Log Monitoring _ Datadog.pdf

Creating a Reusable Drupal Website for Higher Education - at USG Tech Day