Themer Pack Working Group

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
This group should probably have more organizers. See documentation on this recommendation.

The Drupal Themer Pack is a group effort of people who want to contribute to Drupal and make the lives of themers a little easier by creating a comprehensive set of templates for every themable in Drupal core. The goal is to do the work of separating logic from presentation; however, the themer pack will not change the output. If you drop the themer pack files into your theme and enable it, you should see no difference until the templates are modified.

By making this accessible, themers will have a much easier time of creating precisely the theme they need, and of understanding what Drupal offers.

Some of this work will be very easy; some of it will be very complicated. We will accept help from anyone who wants to contribute.

Please make a post here when you're working on a particular section, so people know you're working on it. Also, make a post here when you STOP working on a section, so people know they can work on it. This will reduce merge conflicts.

The sandbox is located here:

http://cvs.drupal.org/viewcvs/drupal/contributions/sandbox/themerpack/

Aveu's picture

I apologize

I would like to offer my sincere apology to the Themer groups here on Groups.Drupal.Org and to this community in general ... I meant no disrespect to anyone. Being a non-artist I have the highest regard for those who can do what I cannot; create beauty in web designs and other visual art forms. Likewise as a programmer I have an equally high regard for all web developers and the difficulty of the work we do.

Read more
Aveu's picture

Question about GPL and NON-PHP Themes

If I build a Theme that uses no PHP or GPL'd JavaScript but does incorporate PERL code in the template would that PERL code need to be GPL'd?

I realize of course this would mean that the hosting installation would have to have PERL enabled on their server (not a normal Drupal setup) but I don't think that is the same as "requiring a 3rd party proprietary program" since PERL is open source and quite common on many hosting services.

Read more

GPL group recommends CMS templates be licensed under a different license.

... but templates are a special case, because they are combined with data provided by users of the application and the combination is distributed. So, we recommend that you license your templates under simple permissive terms.
_ --- "Frequently Asked Questions about the GNU Licenses" www.gnu.org

Read more
Aveu's picture

Themes versus Modules

There has been much discussion through the years about the automatic GPL status of Themes and Modules, and I will weigh in on that topic itself in another post (see the bottom of this post). But for now suffice it to say that I see an argument in favor of requiring GPL for Modules but I see a very different and very compelling argument in favor of excluding Themes from the GPL mandate. This post is to address a pre-cursor to that argument ...

Read more
mortendk's picture

D4D Drupalcon SF meetup

Start: 
2010-04-18 15:00 - 16:00 Europe/Copenhagen
Organizers: 
Event type: 
User group meeting

Come hang with the cool kids before Drupalcon san francisco

This is an informal meetup for the designers / frontend geeks, themers etc you know who you are ;)

The plan is just to meet eachother before the con, and try to put a quick plan into play of where and what we wanna do with beautiful Drupal. Last

The meetup will be somewhere in the conference center. more info will follow

It will be sunday before the con at 15:00

Read more
cuxi's picture

Which i can use theme?

I only can layout frontpage. I a newbie drupal. i want a theme like image blow:
http://timbandocthan.com/timbandocthan.jpg
I use drupal 5.x . I try use a few theme framwork.. but i can't modify like theme in images.
Can you help me?

Read more
bensheldon's picture

Best practice for declaring functions within .tpl.php files?

Is there a best practice (or is it just poor practice?) to declare a function within a .tpl.php. It seems like I should avoid declaring functions since these are templating files, but in some circumstances, it allows vastly simplified code---and I'm not sure where else I would declare a function within the concept of the themer pack.

Read more
bensheldon's picture

Drop-in override for Upload.module's attachments list

Below is a custom override for Drupal 6.x's Upload.module's attachments table that is displayed at the bottom of a node when you create file attachments. Below is an example of the before and after:

Only local images are allowed.

Read more
Chris Charlton's picture

Theming Drupal 6

Start: 
2008-04-19 09:00 - 2008-04-20 17:00 America/Los_Angeles
Event type: 
Training (free or commercial)

This session will teach Drupal users how to theme the latest Drupal 6. Things have changed from last version and this course is here to tell you what's changed. Learn the basics and more to get confident and results from your Drupal theming efforts.

This session will go over how to build a new custom Drupal 6 theme.

Who is this course for?
This course is designed for people who have a basic understanding of Drupal and some coding or web development experience with technologies like HTML, CSS, and at least a little PHP. If you're interested in getting up and running with Drupal 6 themeing principles then this is the course for you. All source will be handed out during or after the session.

Course outline and info available at http://www.richmediainstitute.com/training/drupal6themes/

Read more
dvessel's picture

Theming in Drupal 6 with devel

A heads up on theme development for Drupal 6.

Thanks to the new theme registry by merlinofchaos, there's a nice side effect of being able to intercept theme functions from devel.

What this provides is the ability to list all themable functions used in a page making it a lot more understandable. There is working code but it still needs work. If anyone has ideas on presenting this information please post it. For now it just dumps it into a table but we can get pretty fancy with this, especially with jQuery.

Here's the issue queue:

Read more

Guidelines and instructions on separation.

If you haven't done so, please read this groups home page description for the general idea behind this group and the How to contribute page on contributing code. And please mark the Work in progress wiki for any sections your working on. All sections are grouped by either modules or .inc files and the Work in progress wiki is only a partial list.

This wiki will go into more detail, suggest a few guidelines and hint on how we should go about separating the code.

You don't have to follow the suggestions provided here but staying within them will flatten out the learning curve a lot faster for themers. Lets make it as easy as possible for theme designers by maintaining some consistency.

There will also be a few changes to the theming system in Drupal 6 (it has been committed!!) and some form of the work done here will eventually get into core. One of the new features is to have modules provide their own .tpl.php template files. Soon, it will be very easy to drop core template files right into your own themes.

Read more
gusaus's picture

Workshop proposal: Let's help make it easier to theme Drupal!

UPDATE:
While the following post was primarily geared to the Los Angeles Drupal group, it (should) have some relevance to 'some' folks in whatever group you're reading this in. This is an ongoing 'drupal' project and the more folks that can get actively involved would be a very good thing....

Read more
merlinofchaos's picture

Experience is the best teacher!

I was just looking through add1sun's latest commits, and I noticed a few things that could stand a little improvement.

I took this function:

<?php
function phptemplate_user_picture($account) {
if (variable_get('user_pictures', 0)) {
if ($account->picture && file_exists($account->picture)) {
$picture = file_create_url($account->picture);
}
else if (variable_get('user_picture_default', '')) {
$picture = variable_get('user_picture_default', '');
}
if (isset($picture)) {

Read more
gusaus's picture

Another theming working group

The newly minted 'Zen Task Force' may provide some great project orientated learning opportunities in realm of theming. Seems like it would tie in quite nicely as an extension to the great Dojo theming lesson as well as our work on Merlin's 'Themer Pack Project'?

Read more
dvessel's picture

custom callback.

I was thinking about a custom callback function to do 3 things:

<

ol>

  • Speed up execution time. Remove any intermediate functions that aren't needed. Go directly to the renderer from the callback. (I know you've been thinking about this one merlin. I'd like to see your solutions to this.)
  • Read more
    dvessel's picture

    Minor discrepancies with the sandbox

    Just a heads up on the sandbox. It was taken from HEAD after Drupal 5 was released, so there could be some discrepancies with the latest release (5.1). Try to work with the latest release version.

    edit: minor corrections based on merlins' comments.

    Read more
    merlinofchaos's picture

    Code style and other minor requirements

    I just checked out the watchdog section, and there are a few code and code style things I'd like to point out.

    All template.php files must begin with:

    <?php
    // $Id$

    All .tpl.php files must begin with:

    <?php // $Id$ ?>

    All function overrides in template.php should begin with a comment that at the very least provides a URL
    to the api.drupal.org documentation for that function:

    Read more
    add1sun's picture

    Working with theme('table')

    We need to think about how to handle instances of theme('table') in our work. There is no straight HTML to simply print in a tpl file for easy theming so what should we do with these guys? Below is an example tpl.php taken from user. Discuss.

    Read more
    add1sun's picture

    How to contribute to the project

    Here is the short version of what work we are trying to do. This will be updated and elaborated as we have time. Please feel free to leave comments/questions as we refine it.

    First, check the Work in Progress page to select a group of files that are not currently being worked on. You will need to get the files for your chosen directory from the sandbox, ideally doing a CVS checkout. For each directory listed there, this is the routine:

    Read more

    Work in Progress

    This page will be used to keep track of who is working on what and the status of the various pieces. Please update this page whenever you begin or end work on something. Also remember to add any new directories to this list as they are added to the sandbox so none of them go under the radar.

    aggregator/ -> Caleb G currently working
    block/ -> dvessel: committed and updated. 3/31
    book/ -> dvessel: committed
    color/ -> dvessel: committed
    comment/ -> dvessel: committed
    drupal/ -> dvessel: committed

    Read more
    Subscribe with RSS Syndicate content