Design and Theming (D7)

Last updated on
6 October 2020

Moving action items over from Designers, Drupal, and the Future, which reflect a consensus reached between several top themers in the Drupal community. If you're interested in working on any of these, please create an issue for it (or more than one), assign it to yourself, and link it here!

  1. Make sure all of Drupal's tpl.php template files contain usable, standards-compliant markup. This came a long way in Drupal 6, but there are still a couple of rough edges. Content-first ordering in the default page.tpl, for example, would be great.
    page.tpl.php: #367299: Update and polish default page.tpl.php and associated css
    node.tpl.php: #382870: Update and Polish Node Template Output
  2. Include a layout.css file in Drupal's System module that does nothing but position the header, sidebars, and content correctly. Overriding these core CSS files is easy; just add a CSS file with the same name into your theme. For newcomers, though, it would help clarify how the default template files work in a minimalist layout.
  3. Provide a core theme that is nothing but an .info file. With default markup and a layout.css file provided by core, this theme would serve as an example of what "stripped down Drupal" gives a designer to work with. #364777: Add a "stripped down" CSS theme to core: This issue combines items 2 and 3 into a simple theme with just a layout.css file.
  4. Provide one or two core themes that are only CSS and images decorating the standard markup. This has been done in contrib for Drupal 6 (See dvessel's Skyliner theme), but very few realize it's possible. If we discover that Drupal's default markup isn't flexible or clean enough to theme with pure CSS, we should fix it.
  5. Provide a theme that adds one or two additional content regions to implement the newsier appearance that's common in Joomla! and advanced Wordpress themes. This theme should also override one or two of the less common templates from a core Drupal module: user-profile.tpl.php is one possibility, as few realize it can be tweaked so easily.
  6. Provide a theme that uses template.php code overrides and/or jQuery to implement exotic functionality. This doesn't have to be insane; it could be as simple as turning one region into a slide-out panel using jQuery, adding daytime and nighttime CSS, or adding extra "template suggestions" so comments by the author of a post show up differently. The important part is to point people in the direction of advanced techniques.
  7. README.txt files inside each of these themes' directories should explain what they do and how. (Regions are added by putting a line of text in a theme's info file, module templates are overridden by copying a tpl.php file into the theme's directory and editing, etc.)
  8. Devise a standard to allow theme/styles to be applied to core contact form.

Help improve this page

Page status: No known problems

You can: