Sunday, October 9, 2011

Theming Guide

This handbook is about customizing the look and feel of a Drupal site. We'll show you how you can modify the appearance of your Drupal site without requiring expert knowledge of programming. And if you wish to go further, we cover that too.

This guide assumes some knowledge of HTML and CSS but no PHP programming knowledge is necessary. It also assumes you have administrator's privileges to a Drupal site. You might also want to familiarize yourself with some of the terminology used in Drupal. We concentrate on Drupal 7 with notes for Drupal 6 where applicable.
Other Places to Explore

Installing Themes - To install existing, contributed themes, please visit Installing themes
Contributed Themes - Free Contributed themes at See demos of some of them at Theme Garden.
Custom Themes - Unique custom themes created by Drupal designers that you can hire.
Theming Tutorials - View a number of theming videos which guide you through common scenarios
Support - Having problems? Check the troubleshooting FAQ, ask in the theming forum or contact us on IRC @ #drupal-themes.
Module Developer's Guide - Module developers can consult the module developer's guide, specifically Using the theme layer (Drupal 7.x) and (Drupal 6.x)
HTML and CSS techniques - See the best practices page


We start with customizing the appearance using an existing theme. You may be surprised how customizable an existing theme can be simply by changing a few settings. From there we discuss ways to make your own theme based on an existing theme, and then show you how to tweak it through the use of CSS stylesheets.

Next we'll explore how to override various theme's parts; regions and node types. We then move onto creating your own theme from scratch; which isn't all that difficult. Finally we'll cover more advanced topics employing PHP coding.

Our concentration throughout this document will be on using preferred techniques. We touch briefly on what's possible but our discussion will center on Drupal's preferred theming engine and best practices. This involves, among other things, copying files and modifying the copies, overriding files with your own versions rather than modifying the originals and housing all your modified theme's files under the sites/all/themes directory. This is a step towards upgrade-proofing your site and facilitates future maintenance.

This entire handbook is currently undergoing a reorganization to help make this information more accessible. Please pardon the dust. Everyone can help with this project. You can find out more information about this reorganization and how to join in on the working group's project page.

About theming
Theming Drupal 6 and 7
Theming Drupal 5
Tools, best practices and conventions
Updating a theme to a new version
More theming resources and guides
Theme HowTos
Theming forms in your theme
Theme snippets
Core themes
Contributed themes
Missing topics

No comments:

Post a Comment

only show translated menu items into current language (Drupal 8)

function MY_THEME_preprocess_menu(&$variables) {   if ($variables['menu_name'] == 'brancott-header-menu') {    $langu...