SlideShare une entreprise Scribd logo
1  sur  57
Télécharger pour lire hors ligne
Get Ready ...
To prepare for this seminar you should download a copy of the
following themes:
●   http://drupal.org/project/ninesixty
●   http://drupal.org/project/domicile


If you need to leave:
●   This session is recorded. If the recording fails, this is a similar
    presentation to the one I gave at DrupalCon London.
●   The information is available in: Drupal User's Guide or workbooks
    at Designtotheme.com.
●   Slides are available from: slideshare.net/emmajane
Drupal Trainer




 www.sitebuildingextravaganza.com
Workbook Author
            www.designtotheme.com
Discount code available at the end of the webinar.
Book (Co)Author
Agenda
Theme Building                Summary
●   Theming philosophy        ●   Questions/Answers
●   Process                   ●   Discount Coupons
●   Case study: Domicile      20 minutes
35 minutes
Theming Philosophy
Lazy Front End Developer
Working With Others
Produces More Honey
Theming by tpl.php Files
                  Wastes Your Time
node.tpl.php

                                              field.tpl.php


jplayer.tpl.php




                             page.tpl.php
Take Only Pictures, Leave Only Footprints
Theme Only What You Need To
   UX
                                       UX




             Minimum Viable Theme

        UX




                       UX
Budget-Appropriate Web Design
●
    Know your Drupal toolkit. Know your budget.
●
    Focus on the biggest elements first.
●   Work closely with your designer and your client to
    make sure you get the important things right.
●
    Theme with the markup you have, not the markup
    you'd like to have.
●
    Pixel perfect design is for print. Get over it.
Accessible Web Design
“Accessible web design refers to the philosophy and
practice of designing web pages so that they can be
navigated and read by everyone, regardless of location,
experience, or the type of computer technology used.”
Australian Human Rights Commission

 ●   Know your guidelines (508 or WAI).
 ●   Use a checklist.
 ●   Use an automated testing suite.
 ●   Test with users.
http://www.designtotheme.com/tutorials/automated-accessibility-testing
Responsive Web Design
“Any approach that delivers elegant visual
experiences regardless of the size of the user’s
display and the limitations or capabilities of the
device” zeldman.
●
    Read: http://tinyurl.com/responsive-article
●
    Buy (and read): http://tinyurl.com/responsive-book
●
    Watch: http://tinyurl.com/pathtomobile
●
    Use: http://drupal.org/project/omega

(Eventually “all” base themes will be responsive.)
Theming Goals
●
    Budget-appropriate.
●   Accessible.
●   Responsive.
Process
Steps to Making a Theme
1. Communicate with your whole team.
2. Plan your data structure.
3. Use wire frames to prove what you're saying about how the
   site ought to be built.
4.Build the site (ignore the theme).
5. Convert your wire frame to its grid layout.
6.Build out the HTML fragments in the relevant tpl.php files.
  Substitute CSS effects for PSD effects where possible.
7. Apply your theme to the site.
8.Refine as necessary based on the UX.
Data Model




    http://www.flickr.com/photos/alan-dean/3513723498
Wire Frames
Begin Site Building
(This may affect site design decisions based on the
theming goals of budget-appropriate, accessible and
responsive.)
Grid Framework




http://960.gs/
CSS (Grid) Framework
Base Theme




●   drupal.org/project/ninesixty
●   drupal.org/project/fusion
●   drupal.org/project/zen
To Build a Successful Theme
You must:
●   Know your data model.
●   Create wire frames describing page elements.
●   Identify the modules, templates and configuration
    responsible for every element described in your wire
    frames.
●   Use a grid framework in both your design files and
    Drupal templates.
●   Use a base theme that meets your web design goals.
Case Study
Build me a theme!
Steps to MVT
1. Prepare design.
2. Create theme shell (text files for Drupal).
3. Create regions.
4.Extract and embed images.
5. Launch MVT.
Domicile
●
    Designed by Betty
    Biesenthal.
●   Themed by Emma
    Jane Hogbin (and the
    base theme
    NineSixty).
●   Code available from
    http://drupal.org/project/domicile
Domicile Theme
Grid Overlay
Wire Frame for NineSixty Sub-Theme
Create a Theme Shell

sites/example.com/themes/theme_name
   theme_name.info
   page.tpl.php



Also: sites/all/themes/base_theme
Take a peek
1. Download the theme:
   http://drupal.org/project/domicile
2. Unzip the package.
3. Look at the files inside.
domicile.info
name = D7SBE - Domicile
description = A three-column design by Design House (www.design-
house.ca) and themed by Design to Theme.
screenshot = screenshot.png
core = 7.x
engine = phptemplate
base theme = ninesixty


; Stylesheets.
; Regions
; Features
Build page.tpl.php from NineSixty
Identify These
  Shapes in
   Domicile
Define Regions and Blocks
Extract Images from the PSD
Hard Code Fixed Images
Minimum Viable Theme
Steps to MVT Summary
1. Prepare design.
2. Create theme shell (text files for Drupal).
3. Create regions.
4.Extract and embed images.
5. Launch MVT.
What's Wrong?
Pink sherbert photography http://www.flickr.com/photos/pinksherbet/3372060864/
Theme by UX
Locate “problem” areas and fix with:
●   The administrative interface.
●   CSS enhancements.
And if you need more control add:
●   Helper modules.
●   Theme template files.
●   Theme functions.
Administrative Interface
CSS Enhancements




Relevant HTML      Page element    CSS styles
source
Apply Generic Styles
Apply Build-Specific Styles
Site Building/Theming Helpers
Themer Tools             Site Building
●   Devel                ●   Views
●   Theme Developer      ●   Nodes in Block
●   Firebug for Drupal   ●   Menu Block
Layout                   ●   Entity View Mode
●   Panels               ●   Media
●   Context              ●   jPlayer
●   Display Suite        ●   etc
tpl.php
●
    page.tpl.php
●   node.tpl.php
●   page-front.tpl.php
●   block.tpl.php
●   Error pages: 403, 404, 500
Theme Functions
Finally...and only if you really must:
●   Preprocess functions.
●   Form altering functions.
●   Functionality-based PHP snippets.
●   (etc)
Domicile: the theme
Theme Building Summary
Minimum Viable Theme                 Theme by UX
1. Prepare design.                   6. Administrative interface
2. Create required theme files.      7. CSS enhancements
3. Create regions in page.tpl.php.   8. Module helpers
4. Extract and embed images.         9. tpl.php files
5. Launch MVT.                       10.Theme functions
PSD to Theme Summary
●   Plan your theme from the data model out, not the template files in.
●   Use relevant Drupal modules to break up content and display it in
    relevant locations.
●   Extract only the images and colours you need from your PSD file.
●   Using your grid, rebuild your design as a minimum viable theme in the
    fewest possible tpl.php files.
●   Fix any outstanding problems according to the expected user
    experience with the site.
●   Test your site using automated testing suites for cross-browser and
    accessibility issues. Then test again using as much real content and as
    many real people as you can afford.
●   Cross your fingers and launch.
Discounts on Practical Drupal Guides



                                     www.designtotheme.com
                                       Save 35% on all titles.
                                   Discount Code: ACQUIA-P2T
                                      1. PSD to Drupal Theme
                                      2. SBE Guide: Micro Site




      www.informit.com
SAVE 35% on Drupal User's Guide.
                                     www.drupalwatchdog.com/read
Discount Code: DRUPALUSER
                                   Issue 1: Free PSD to Theme article.
Stay in Touch
●
    @emmajanedotnet
●   emma@designtotheme.com
●   www.designtotheme.com

Contenu connexe

Plus de Emma Jane Hogbin Westby

Was It Something I Said? The Art of Giving (and getting) A Critique
Was It Something I Said? The Art of Giving (and getting) A CritiqueWas It Something I Said? The Art of Giving (and getting) A Critique
Was It Something I Said? The Art of Giving (and getting) A CritiqueEmma Jane Hogbin Westby
 
Work Flow for Solo Developers and Small Teams
Work Flow for Solo Developers and Small TeamsWork Flow for Solo Developers and Small Teams
Work Flow for Solo Developers and Small TeamsEmma Jane Hogbin Westby
 
Responsive Web Design for Drupal, CMS Expo
Responsive Web Design for Drupal, CMS ExpoResponsive Web Design for Drupal, CMS Expo
Responsive Web Design for Drupal, CMS ExpoEmma Jane Hogbin Westby
 
Selling Hopes and Dreams - DrupalCamp Toronto
Selling Hopes and Dreams - DrupalCamp TorontoSelling Hopes and Dreams - DrupalCamp Toronto
Selling Hopes and Dreams - DrupalCamp TorontoEmma Jane Hogbin Westby
 
There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010Emma Jane Hogbin Westby
 
Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010Emma Jane Hogbin Westby
 

Plus de Emma Jane Hogbin Westby (20)

Git Makes Me Angry Inside
Git Makes Me Angry InsideGit Makes Me Angry Inside
Git Makes Me Angry Inside
 
Was It Something I Said? The Art of Giving (and getting) A Critique
Was It Something I Said? The Art of Giving (and getting) A CritiqueWas It Something I Said? The Art of Giving (and getting) A Critique
Was It Something I Said? The Art of Giving (and getting) A Critique
 
Beyond the Bikeshed
Beyond the BikeshedBeyond the Bikeshed
Beyond the Bikeshed
 
Gamestorming Meets Quiet
Gamestorming Meets QuietGamestorming Meets Quiet
Gamestorming Meets Quiet
 
Git Makes Me Angry Inside
Git Makes Me Angry InsideGit Makes Me Angry Inside
Git Makes Me Angry Inside
 
Work Flow for Solo Developers and Small Teams
Work Flow for Solo Developers and Small TeamsWork Flow for Solo Developers and Small Teams
Work Flow for Solo Developers and Small Teams
 
Evaluating Base Themes
Evaluating Base ThemesEvaluating Base Themes
Evaluating Base Themes
 
Speaker Check-in - 3 - Munich
Speaker Check-in - 3 - MunichSpeaker Check-in - 3 - Munich
Speaker Check-in - 3 - Munich
 
Drupal Flyover, CMS Expo
Drupal Flyover, CMS ExpoDrupal Flyover, CMS Expo
Drupal Flyover, CMS Expo
 
Responsive Web Design for Drupal, CMS Expo
Responsive Web Design for Drupal, CMS ExpoResponsive Web Design for Drupal, CMS Expo
Responsive Web Design for Drupal, CMS Expo
 
Selling Hopes and Dreams - DrupalCamp Toronto
Selling Hopes and Dreams - DrupalCamp TorontoSelling Hopes and Dreams - DrupalCamp Toronto
Selling Hopes and Dreams - DrupalCamp Toronto
 
Forensic Theming - DrupalCon London
Forensic Theming - DrupalCon LondonForensic Theming - DrupalCon London
Forensic Theming - DrupalCon London
 
Forensic Theming for Drupal
Forensic Theming for DrupalForensic Theming for Drupal
Forensic Theming for Drupal
 
There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010
 
Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010
 
Advanced Layout Techniques @ CMSExpo
Advanced Layout Techniques @ CMSExpoAdvanced Layout Techniques @ CMSExpo
Advanced Layout Techniques @ CMSExpo
 
Design to Theme @ CMSExpo
Design to Theme @ CMSExpoDesign to Theme @ CMSExpo
Design to Theme @ CMSExpo
 
Drupal Help System
Drupal Help SystemDrupal Help System
Drupal Help System
 
Lessons from Life Coaching for Linux
Lessons from Life Coaching for LinuxLessons from Life Coaching for Linux
Lessons from Life Coaching for Linux
 
Beautiful In Print
Beautiful In PrintBeautiful In Print
Beautiful In Print
 

Dernier

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 

Dernier (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 

PSD to Theme - Acquia Webinar

  • 1. Get Ready ... To prepare for this seminar you should download a copy of the following themes: ● http://drupal.org/project/ninesixty ● http://drupal.org/project/domicile If you need to leave: ● This session is recorded. If the recording fails, this is a similar presentation to the one I gave at DrupalCon London. ● The information is available in: Drupal User's Guide or workbooks at Designtotheme.com. ● Slides are available from: slideshare.net/emmajane
  • 3. Workbook Author www.designtotheme.com Discount code available at the end of the webinar.
  • 5. Agenda Theme Building Summary ● Theming philosophy ● Questions/Answers ● Process ● Discount Coupons ● Case study: Domicile 20 minutes 35 minutes
  • 7. Lazy Front End Developer
  • 9. Theming by tpl.php Files Wastes Your Time node.tpl.php field.tpl.php jplayer.tpl.php page.tpl.php
  • 10. Take Only Pictures, Leave Only Footprints Theme Only What You Need To UX UX Minimum Viable Theme UX UX
  • 11. Budget-Appropriate Web Design ● Know your Drupal toolkit. Know your budget. ● Focus on the biggest elements first. ● Work closely with your designer and your client to make sure you get the important things right. ● Theme with the markup you have, not the markup you'd like to have. ● Pixel perfect design is for print. Get over it.
  • 12. Accessible Web Design “Accessible web design refers to the philosophy and practice of designing web pages so that they can be navigated and read by everyone, regardless of location, experience, or the type of computer technology used.” Australian Human Rights Commission ● Know your guidelines (508 or WAI). ● Use a checklist. ● Use an automated testing suite. ● Test with users. http://www.designtotheme.com/tutorials/automated-accessibility-testing
  • 13. Responsive Web Design “Any approach that delivers elegant visual experiences regardless of the size of the user’s display and the limitations or capabilities of the device” zeldman. ● Read: http://tinyurl.com/responsive-article ● Buy (and read): http://tinyurl.com/responsive-book ● Watch: http://tinyurl.com/pathtomobile ● Use: http://drupal.org/project/omega (Eventually “all” base themes will be responsive.)
  • 14. Theming Goals ● Budget-appropriate. ● Accessible. ● Responsive.
  • 16. Steps to Making a Theme 1. Communicate with your whole team. 2. Plan your data structure. 3. Use wire frames to prove what you're saying about how the site ought to be built. 4.Build the site (ignore the theme). 5. Convert your wire frame to its grid layout. 6.Build out the HTML fragments in the relevant tpl.php files. Substitute CSS effects for PSD effects where possible. 7. Apply your theme to the site. 8.Refine as necessary based on the UX.
  • 17. Data Model http://www.flickr.com/photos/alan-dean/3513723498
  • 19.
  • 20.
  • 21. Begin Site Building (This may affect site design decisions based on the theming goals of budget-appropriate, accessible and responsive.)
  • 24. Base Theme ● drupal.org/project/ninesixty ● drupal.org/project/fusion ● drupal.org/project/zen
  • 25. To Build a Successful Theme You must: ● Know your data model. ● Create wire frames describing page elements. ● Identify the modules, templates and configuration responsible for every element described in your wire frames. ● Use a grid framework in both your design files and Drupal templates. ● Use a base theme that meets your web design goals.
  • 27. Steps to MVT 1. Prepare design. 2. Create theme shell (text files for Drupal). 3. Create regions. 4.Extract and embed images. 5. Launch MVT.
  • 28. Domicile ● Designed by Betty Biesenthal. ● Themed by Emma Jane Hogbin (and the base theme NineSixty). ● Code available from http://drupal.org/project/domicile
  • 31. Wire Frame for NineSixty Sub-Theme
  • 32. Create a Theme Shell sites/example.com/themes/theme_name    theme_name.info    page.tpl.php Also: sites/all/themes/base_theme
  • 33. Take a peek 1. Download the theme: http://drupal.org/project/domicile 2. Unzip the package. 3. Look at the files inside.
  • 34. domicile.info name = D7SBE - Domicile description = A three-column design by Design House (www.design- house.ca) and themed by Design to Theme. screenshot = screenshot.png core = 7.x engine = phptemplate base theme = ninesixty ; Stylesheets. ; Regions ; Features
  • 36. Identify These Shapes in Domicile
  • 39.
  • 40.
  • 41. Hard Code Fixed Images
  • 43. Steps to MVT Summary 1. Prepare design. 2. Create theme shell (text files for Drupal). 3. Create regions. 4.Extract and embed images. 5. Launch MVT.
  • 44. What's Wrong? Pink sherbert photography http://www.flickr.com/photos/pinksherbet/3372060864/
  • 45. Theme by UX Locate “problem” areas and fix with: ● The administrative interface. ● CSS enhancements. And if you need more control add: ● Helper modules. ● Theme template files. ● Theme functions.
  • 47. CSS Enhancements Relevant HTML Page element CSS styles source
  • 50. Site Building/Theming Helpers Themer Tools Site Building ● Devel ● Views ● Theme Developer ● Nodes in Block ● Firebug for Drupal ● Menu Block Layout ● Entity View Mode ● Panels ● Media ● Context ● jPlayer ● Display Suite ● etc
  • 51. tpl.php ● page.tpl.php ● node.tpl.php ● page-front.tpl.php ● block.tpl.php ● Error pages: 403, 404, 500
  • 52. Theme Functions Finally...and only if you really must: ● Preprocess functions. ● Form altering functions. ● Functionality-based PHP snippets. ● (etc)
  • 54. Theme Building Summary Minimum Viable Theme Theme by UX 1. Prepare design. 6. Administrative interface 2. Create required theme files. 7. CSS enhancements 3. Create regions in page.tpl.php. 8. Module helpers 4. Extract and embed images. 9. tpl.php files 5. Launch MVT. 10.Theme functions
  • 55. PSD to Theme Summary ● Plan your theme from the data model out, not the template files in. ● Use relevant Drupal modules to break up content and display it in relevant locations. ● Extract only the images and colours you need from your PSD file. ● Using your grid, rebuild your design as a minimum viable theme in the fewest possible tpl.php files. ● Fix any outstanding problems according to the expected user experience with the site. ● Test your site using automated testing suites for cross-browser and accessibility issues. Then test again using as much real content and as many real people as you can afford. ● Cross your fingers and launch.
  • 56. Discounts on Practical Drupal Guides www.designtotheme.com Save 35% on all titles. Discount Code: ACQUIA-P2T 1. PSD to Drupal Theme 2. SBE Guide: Micro Site www.informit.com SAVE 35% on Drupal User's Guide. www.drupalwatchdog.com/read Discount Code: DRUPALUSER Issue 1: Free PSD to Theme article.
  • 57. Stay in Touch ● @emmajanedotnet ● emma@designtotheme.com ● www.designtotheme.com