Sandbox version 0.6.1 has just launched. I could measure the past week in either seven days or by the changes from initial v0.5 release. I’m looking forward to the letting the dust settle and getting to make a skin or two myself. Until then, though, let’s move some sand.
Changes from feedback
The most requested revision by far was to do something with those stupid abbr elements that followed post titles. Well, we did. Now in the index.php, archive.php, category.php, search.php, and author.php files you have more design-friendly:
<div class="entry-date"> <abbr class="published" title="2006-08-01T00:05:45-0700">August 1, 2008 – 12:05 am</abbr> </div>
Yes, there were some crude ways to style this abbr in IE 6, but, well, a lot of stuff (like block-level attributes) just wouldn’t work. So, zap, here you are. In the end, we settled on a parent div element.
A great suggestion from Saracen also found its way into the new release: post counting classes. This is different than the ID number of the post. Instead, we added a pN class to posts (and cN for comments), where N is the number relative to the total count.
For example, if you want the first post on any archive page to appear in a big, black box, you could add:
body.archive div.p1 {
background: #000;
border: 5px solid #F00;
color: #FFF;
}
Then the top-most post (the first, from top to bottom) occuring on a page would be big, black, and have a red border.
Congratulate your first commenter by making the comment gigantic:
body.single li.c1 {
font-size: 200%;
}
The possibilities are maddening. Thanks to Saracen.
Another semantics-related aspect of the Sandbox that people commented on were the pipe symbols that appeared in the div.entry-meta sections in the index.php, archive.php, author.php, category.php, and search.php, and in footer.php as well. What to do. Andy and I tried a few different things.
What we decided on gives skin authors flexibility and looks good in the markup. It degrades well. The pipe symbols remain, but they are wrapped in a span.metasep. You can do all sorts of things with this now.
Finally, we’ve added navigation links to the top and bottom of the loop in the author.php, category.php, index.php, single.php, and archive.php. We’ve given the ones on top an unique id, div#nav-above and the ones below (can you guess?) div#nav-below. More room for play.
Skins
Ah, the skins. The Sandbox has received some flak for presenting itself as the “end-all be-all” theme for WordPress. It’s not. It is, however, a great deal of fun to play with and make skins for—not having to think about building structure in the actual theme files or considering any of the PHP code and instead simply designing with CSS is really quite enjoyable.
I’ve seen a few K2 skins for the Sandbox so far, not to mention Adam’s frankly skillful creation of a beautiful Unsleepable skin got me feelin’ positive that the “enjoy, have fun” message had actually been received.
Enjoy. Have fun.
Widgets
It seemed to make sense that if someone wanted a widget in their sidebar, they shouldn’t have to sacrifice the default stuff that was already there. For example, if in the second sidebar I wanted to put the recent posts widget there, well, I would also need to place the meta widget there in order to keep the log in/log out links (not to mention wp_meta) as well as the RSS feeds. And in the Sandbox default sidebar, RSS feeds don’t appear under Meta. Why would they?
So we’ve made the Sandbox load its own widgets based on what is in the sidebars by default. In the example above, I could now place the Meta and the RSS links widgets in the secondary sidebar and get a consistent (for the Sandbox) result. We also added the “« Home” link as a widget, too.
The default contents of primary sidebar includes a link that points back to the home page on any page except the home page, i.e., it’s conditional. Why should someone who’s using widgets in the primary sidebar have to sacrifice this nice, conditional link?
Now there’s a “Home Link” widget whenever the Sandbox is loaded. And now the search widget is exactly like the default one. Remember that the RSS links and Home Link widgets only appear when the Sandbox is the activated theme.
hAtom
Finally, there’s hAtom. An intersting thread on hAtom appeared on WordPress.com. Someone asked the very reasonable question, What is hAtom and why is it important?
I followed some of the talk about hAtom and found that an hAtom-enabled version of Kubrick had already been made. That’s two themes out of, well, a lot.
I’ve been playing with the hAtom to Atom converter, converting themes using the Sandbox into Atom. But I’m literally converting the actual blog! How great is that.
I also foresee a Subscribe to hAtom widget for the Sandbox, Strangelove, and other themes using hAtom. The hAtom to Atom converter (link above) could be used easily, as Bill pointed out in an e-mail to me; for example (no breaks),
http://www.lukearno.com/projects/hatom2atom/?ctype=application%2Fxml&tidy=yes&url=<?php echo urlencode(get_bloginfo('url')); ?>
But honestly this is down the road. So what are you going to do now that you’ve subscribed to hAtom. It’s still a draft, but it holds tremendous potential, by making external, separate feeds redundant. This dream, however, lies at the end of a long and dangerous road. Maybe the Technorai Kitchen will add hAtom.
Subversion repository
Come and get it, ladies and gentlemen. You can look, but not touch. If you’re interested in following the changes to the Sandbox, you can access Sandbox Subversion repository at Sandbox project home on Google Code. The repository is also available at http://sandbox-theme.googlecode.com/svn/. You’ll need a client.
That’s it. Let us know what you think.
14 Comments
fyi, timethief (coyote) is definately not a he.

these look like some awesome changes. i’ll have unsleepable ready to go shortly, but not tomorrow. tomorrow i’ll be on the beach
Why is there 2 different metadata class in comment (comments and pingbacks/trackbacks)?
This is the first time I see someone use ‘below’ instead of ‘bottom’
Adam: Thanks for the gender heads-up. When I mention Wank is another post, you’ll have to let me know if I guessed that gender correctly, too.
Zeo: there are two different meta classes for comments/trackbacks because (prepare) it’s a goof. It’s a goof that’s been fixed. Now they’re both
.comment-meta. And I also made the moderation stuff consistent, too. Great comment, Zeo.Feels great to have a suggested change incorporated. Now I can start playing with it all. Again, the possibilities presented really seem limitless. Can’t wait to see what some of the dons come up with.
Thank you for
.entry-dateand.metasep. In an ideal world it would be.separatorlike the Six Apart equivalent, but that’s just me wanting to save myself a couple of seconds typing.Thanks for the repo! (Although ATM I can’t get it to work with my shell access…)
Excellent work, gentlemen!
I think andy should moved the repos to wp-themes.net or google code.
the changes are greatly appreciated. you also added
body.loggedinwhich is pretty useful on wp.com, and is sure to have some interesting uses here, althought different. (like hiding widget_meta from non-users)One change I didn’t mention explicitly, and I mean to, is now you can add a “comments” to a new custom field (no value necessary) to add comments to any page, including the links and archives templates.
I’m going to let the comments build up and then just take them in, later today or tomorrow morning probably, so keep ‘em coming.
I found that class of 1st comment is ‘c’ is not ‘c1′.
tinyau: Thanks! Rev 59 fixes that.
I don’t understand this:
“So we’ve made the Sandbox load its own widgets based on what is in the sidebars by default. In the example above, I could now place the Meta and the RSS Links widgets in Sidebar 2 and get a consistent (for the Sandbox) result. We also added the “« Homeâ€? link as a widget, too.”
I’m new to widgets (well, I’ve used them on WP.com). I’ve activated sandbox, installed and activated the widgets plugin, but when I go to sidebar widgets in presentation, it shows the sidebars as empty. I was expecting to see the sandbox-preloaded ones there.
Did I misunderstand, or is something wrong?
Hi Stephanie: No, this doesn’t mean that any widgets are automatically placed in the sidebars. Let me explain myself. The Widgets plugin itself has a few default widgets, like for links, categories, archives, etc. These are usually the standard things found in sidebars.
So what I’ve done was add widgets to the widgets pool (that can be added to the sidebars) so that the widgets available it possible to replicate the default contents of the sidebar entirely.
For example, the Widgets plugin lists the RSS feeds for entries and posts in the “Meta” sidebar, along with the log in/log out links. Well, that’s different than how they are by default in Sandbox. Let me know if that helps explain.
Er… a little. At least I know I’m seeing what I’m supposed to see. It’s not a biggie anyway because I’m sticking a fair amount of widgets in there anyway (and will probably have to write a couple of my own).
Thanks!
2 Trackbacks
[...] I wonder, too, if Wordpress might start to stagnate being centrally hosted. I don’t know why that would be the case, but my fear is that centralized hosting might undermine your ability to innovate. Although, I can see how supporting thousands of distributed installation would be somewhat daunting. Plus, I’ve seen a lot of activity in the WordPress community that seams to have been enlivened by the recent funding that Automattic recieved. [...]
[...] Co-developers Scott Wallick and Andy Skelton are encouraging skin developers to make their efforts available at the Sand Castles skins site. Scott also points to a few other skins in this blog post. [...]