This patch would change the main div of, for example, a sticky book node from:

<div class="node sticky">

to:

<div class="node node-book sticky">

This is to aid theming; motivated by trying to theme forums differently from pages etc.

It uses the same convention as node type-specific blocks (e.g. class="block block-book") and it is should be completely backward compatible so long as people do not have very odd tastes in class names.

CommentFileSizeAuthor
nodetype_theming.patch716 byteswillmoy

Comments

adrian’s picture

Project: PHPTemplate » Drupal core
Component: Code » theme system

You could also just copy node.tpl.php to your theme dir and modify it there to user $node->type, and if you only want to do something for forum nodes, you could copy the node.tpl.php to node-forum.tpl.php

PHPTemplate has been moved to core for 4.7, so I will only accept this patch for the 4.6 branch if it is accepted into core. Otherwise your templates will just magically stop working.

Stefan Nagtegaal’s picture

I do think this is nicer than the way of having multiple node.$type.tpl.php files as we have now...

willmoy’s picture

Both are useful. This exposes options to CSS that wouldn't otherwise be there, but there are of course PHP things that you can only do in node-whatever.tpl.php.

This patch augments current functionality, it doesn't replace it or make it redundant.

factoryjoe’s picture

This will be in the upcoming versions of SpreadSpread (was SpreadFirefox), Lincoln's Revenge and Democratica.

willmoy’s picture

Status: Needs review » Reviewed & tested by the community

Ready to be committed if accepted.

moshe weitzman’s picture

looks useful to me. the properly named field for phptemplate can be overkill for small changes, and doesn't track well with core when new node fields are added. further, it is a phptemplate only solution.

dries’s picture

Status: Reviewed & tested by the community » Closed (won't fix)

You already have the flexibility you want.