Ticking the boxes for Twenty Ten: Some areas for improvement
|Reported by:||demetris||Owned by:|
Not all of us had envisioned the new default theme in the same way, but, I think, there are a few characteristics that, more or less, all would consider essential in it.
The new default theme should be:
... and, of course, something that people will enjoy using.
With these aims in mind, I have noted a few areas where I think Twenty Ten can be improved easily.
Busy typography. While the design of 2010 is simple, clean, and modern, typography seems busy to me at this point: There are too many combinations of font-family (serif and sans-serif), size, style, and colour. See this example post:
There are also inconsistencies: Some headings are styled in serif, others in sans-serif.
Fancy strings. A basic theme, that, among other things, wants to be as easy to translate as possible, should not say things like “This entry was posted in x and tagged y, z”, etc. It should prefer simplicity and clarity: “Categories: Cooking, Eating. Tags: salad.” etc.
Fancy functionality. “Also tagged x, y, z” (in 2010’s tag archives). What’s the practical benefit of that? If we wanted to offer a useful extra, there are lots of better things to do. For example, a function that adds a CSS class to the tag whose archive is viewed. But even that would be too much for the basic, default theme, whose functions.php should not be overcrowded.
More fancy and unneeded functionality. Does the default theme need to modify the default length of the autogenerated excerpt? What do we have plugins for?
Uninviting code. header.php is one of the first theme files people look at. In Twenty Ten it greets you with a large block of conditional logic that is not attractive to look at. If we want to make good use of functions.php, here is a good candidate. (And we don’t need to reinvent the wheel for that. There are already several good implementations for assembling the document title conditionally. See, for example, Tarski’s filterable tarski_doctitle, or Thematic, which starts from Tarski’s function and offers its own alternative.)
See also this ticket: #12370.
More uninviting and illegible code.
"<span class=\"meta-sep\">|</span>\n\t\t\t\t\t\t<span class=\"edit-link\">"
What the ...? Who cares how the generated HTML aligns?
Options page. More and more themes have an options page, yet there is no simple authoritative implementation for theme authors to start from. Twenty Ten is ideal for this role: An options page that uses the Settings API and offers a few selected no-nonsense options. E.g., a textarea to edit the footer, and an option to separate pingbacks from comments (along with a nicely coded function in functions.php).
Interesting fact about the penetration of the Settings API: I searched the themes repo for register_setting and found only twenty (20) themes using it. Some of them do not appear on WordPress Extend. Three of theme are coded (or, at least, their options pages are coded) by Automattic folks.
WP icon. I do not like that we force an extra HTTP request upon innocent, unsuspecting people just to promote the WP identity. Is the followed link to wp.org not enough?
If Twenty Ten used icons in its design, we would use a sprite, add the WP icon there, and it would not make any material difference. But, as it is now, I would like to see the icon go.
Obligatory header image. I would like to see an option to use no header image at all. (And have its space collapse.) Not offering this option feels restrictive to me.
I tried to stay in the spirit of 2010 as I understand it, a simple and clean theme, and I believe the changes I suggest would make Twenty Ten simpler and cleaner without reducing its functionality.
The front-end does not need much work; it’s almost there. (If it weren’t for the busy typography, I would say the front-end is perfect.)
The back-end needs some work, but for the most part it’s only small things here and there that would have a good return in total.
What do you think?