Hackers Highlight 19 April 2009

Welcome to the weekly Hackers Highlight, showcasing various interesting information that happened in the last week of WordPress hacker’s mailing list, wp-hackers. You can also follow the mailing list via the Google Group front-end here.

Did you know the WordPress 24-Hours Has-Patch Marathon a few days before? Here’s a little inside story of what happened in wp-hackers. Some wanted to help but couldn’t because there’s no news posted at the mailing list, and the two days prior announcement post at the WP development blog were simply too short.

Stephen Rider suggested that it is better to revert from using the word “Appearance” back to “Design” inside the Dashboard. The change to “Appearance” happened within the 2.7 redesign, which changed all the menus from verbs to nouns. “Design” is also a noun, he said, and it encompassed the content underneath that menu better: Widgets, for example, are not just appearances but also part of the design of the site. Demetris suggested using the word “Layout” instead. What do you think?

Here’s a discussion on using the WP_Query() to display posts with a certain search term.

Hackers Highlight 12 April 2009

Wow, last weekend was quite a hectic one for me, and so this particular article goes out of schedule a bit. Anyways, as usually, this is the weekly Hackers Highlight, showcasing various interesting information that happened in the last week of WordPress hacker’s mailing list, wp-hackers.

First, I found out that the Google Groups frontend version of wp-hackers is a much pleasant version to read and link to, so I’m going to use that from now on.

Liraz Siri was working on including WordPress inside TurnKey Linux and then asked what plugins needs to be included with it. And so a bunch of WP hackers recommend their own list of good plugins to have when starting a new WP blog.

Shane A. Froebel released the wireframe document for the new Media Management System for WordPress 2.9.x. Sounds great. It’s on his blog, and also available as a PDF file (direct link, this one).

Here’s a nice and short discussion on best practices for using wp_enqueue_script and wp_enqueue_style, started by Michael Toppa.

Joost de Valk asked about some information on the syntax of WXR. Surprisingly, there is no such definitive resource anywhere!

Hackers Highlight 05 April 2009

This is the weekly Hackers Highlight, showcasing various interesting information that happened in the last week of WordPress hacker’s mailing list, wp-hackers.


Chris Jean questioned whether it’s possible to hide the parent of a child theme in the Manage Themes dashboard area. While this is potentially useful to avoid user confusion (so that they don’t activate the parent theme when they should be activating the child one), I don’t think this is a particularly necessary issue. Users might not even understand what a parent/child theme is: just tell them precisely what theme to activate, and that’s it.

Joost de Valk offered a small fix so that /wp-includes/link-template.php uses less database query. Nice catch.

Ptah Dunbar asked whether there’s a WordPress UI guidelines somewhere. Apparently there is one, except that it’s written in German. Anyone interested to do an English version?

Mike Schinkel found out that WordPress always run a query for posts regardless of whether you need it or not (say, if you’re using a custom query). The discussion that follows talked about ways to disable the query_posts() function.

How to launch your WordPress theme

So you’ve completed your next great WordPress theme. You’ve tested them day and night, squashing bugs and CSS inconsistencies along the way. Your fingers are trembling, waiting for the time to release that theme to the wild.

What next?

Get the news out

  1. The first thing to do is to write about it in your website. Either as a blog post or a specific page, it doesn’t matter, as long as it’s there. This is to be the home page of the theme, which will serve a bunch of purpose: you include the link to this page inside the theme’s style.css, you link to it when announcing your theme, people can come to it to comment and ask around if they encounter some problems, and so on.
  2. Send your theme to the WordPress Theme Directory. Pretty much the go to site for WordPress themes, make sure to upload your theme there for more exposure. You might want to check the guidelines first, though. When you’re done, it will take a few days (based on my limited experience) for the review process to kick in before your theme is included in the Directory. Unfortunately, the Directory does not support uploading of Child Themes yet AFAIK, so if yours is a Child Theme, you might want to skip this step for now.
  3. Announce it on Weblog Tools Collection’s News forum. You will need to register to the forum first (but hey, it’s free) before you can submit your theme there. Take a look around at how other people do it: basically all it takes is a little summary and link to the theme’s home page. You can also submit Child Themes here. When you’re done, give it a few days and your themes will likely to be included in WLTC’s regularly updated new themes post, giving you a lot of traffic in the process.

Let people test it before they have it

  1. First of all, it’s good to know that the Theme Directory provides a download and a demo link of your theme, so you can just use theirs if you’re so inclined. However, since the Theme Directory takes time to include a theme, you might want to provide a temporary demo/download on your theme’s home page as well.
  2. If you’re planning to release a lot of themes, it might be a good idea to create your own test site, add a dummy content into it, and upload your themes there.
  3. After that, you can use various different plugins that allow visitor to test your themes. You can try Theme Preview, Theme Test Drive, Theme Preview, or User Theme.
  4. If you’re too lazy/busy to make a separate site, then hey, your very own blog can be the test site. This is what I do. With the Theme Test Drive plugin, it’s just a matter of appending “?theme=themename” to your site’s URL to change the theme. Do read the documentation first!
  5. While a simple download link is sufficient, you might want to add a download manager plugin to give you more statistics on how many times it has been downloaded, and so on. I use the Download Monitor plugin for this.

My workflow

This is how I do it, probably not the most efficient way, but it might give you an idea of what the steps are.

  1. Write the blog post. Don’t publish it yet. Instead, tweak the permalink and use that link for the theme’s style.css THEME URI.
  2. Upload the theme into the current site.
  3. Open a new tab, upload the zipped theme into the Download Monitor.
  4. Configure the Theme Test Drive and test it so it can show the demo correctly.
  5. Back to the blog post: add the download and demo link.
  6. Publish the post. Here goes nothing.
  7. Submit the theme to Theme Directory.
  8. Announce it to WLTC’s news forum.
  9. Done. Sit back and wait for people to come.

What about yours?

I’m sure a lot of you guys out there have more experience in launching your themes. Do share your very own tips and tricks in the comment area, alright?

Translated Version

Read this article in Italian, translated by Danny of altamentedecorativo.com. Thanks, Danny!

Hackers Highlight 29 March 2009

This is the weekly Hackers Highlight, showcasing various interesting information that happened in the last week of WordPress hacker’s mailing list, wp-hackers.


Joost de Valk warned that he’d been restoring a bunch of 2.7.1 WordPress blogs from hack attempts lately. Symptomps were

iframes being added to the end of all index.php files in the blogs, in the footer. In some cases they were written with javascript, in other cases they were pure iframes.

Lynne Pope also reported another hacked 2.7.1. So far there’s no clear answer how and what this hack does. There’s a possibility that the attack originated from improperly configured shared-hosting issue, instead of a WP specific hack, but it’s mostly a guess now.

Joost also announced his latest plugin that adds a new WP Dashboard widget displaying plugin download statistics from WordPress.org. The current download page is here.

John Biddle started a discussion on WP’s front end performance.

John Sessford found a single page on a WP install that made about 275 database queries, making it very slow to load. Mark Jaquith gave a small how-to on displaying the details of all queries on a WP install. It could also be done with a plugin, Frank Bueltge added.

Hackers Highlight 22 March 2009

This is the weekly Hackers Highlight, showcasing various interesting information that happened in the last week of WordPress hacker’s mailing list, wp-hackers.

Dave Jaggy asked about custom taxonomies, which seems to be coming in 2.8. In the meanwhile, there’s Brian Krausz‘s plugin to do the job.

Alex Polite asked about ways to use a certain language inside the admin interface, and another language on the blog.

Jennifer Hodgdon had a problem following the Codex’s article on internationalizing plugin’s metadata. Turned out the article is somewhat outdated with missing instructions and files. You might want to read the thread if you’re having the same issue.

Jennifer also tried to dig deeper on registering plugin options. There seemed to be a lack of info on this right now.

Also, this is somewhat nice. Jeremy Visser found an old WordPress 1.5 inside his file server, dated in 2005, the day he first downloaded WP. He then wrote a heartfelt note to the WordPress community.

Hackers Highlight 15 March 2009

Doug Stewart started the discussion on using WordPress for user-generated collaborative websites.  Some ideas were thrown in, including the usage of TDO Mini Forms plugin to help the job.

Mike Schinkel found out that an archive page for a month with no post returns an 404 error. Discussion followed.


Malaiac asked: What is the oldest available file in WordPress (meaning that the file existed since the earliest version of WP)? And it seems like the /wp-admin is the answer (MichaelH also pointed to a really old, WP 0.71 zip file for further checking).

Page 3 of 512345

Latest Links More →

The Week in WordPress: 2nd Week of November, 2012

Ghost, Rethinking WordPress. Also don’t miss the discussion over at Hacker News.

For The Aspiring Professional WordPress Developer is a collection of good advices for those wanting to be a WordPress pro.

Recently I had the task of cloning a WordPress site both to my local server and to another development server that I host. The Duplicator plugin has been a massive help for me, makes cloning really simple and fast. Highly recommended.

Classy Plugins

Eric Mann uses classes in his non object-oriented WordPress code. Here’s why.

Playing Nice with the “the_content” Filter

This great article could be useful if for some reason you have a need to filter the_content in your theme.

Google Goes After Links In WordPress Themes

New post from the Search Engine Roundtable: Someone “…received a response from Google to a reconsideration request that the only way his site will be reincluded in Google is if he removes all or most of the links in those WordPress themes.” The problem is that those links are in the form of sponsored links on footer (a practice I saw a lot in the past, not so much in the present).

I don’t think it will be easy, or even possible, to do what Google requested. If a theme contains an upgrade notification feature it might be possible to do, but even then the users might choose not to upgrade.

Secondly, if this is true, I wonder whether Google differentiates between credit links (“Designed by…”) and sponsored links. I would say they should, but then again I’m not a SEO guy.

Theme Options Gallery

New favorite blog: Theme Options Gallery by Konstantin Kovshenin, discussing “the best (and the worst) theme options screens around”. Loving the in-depth article and discussions already available there.

Dive into Responsive Prototyping with Foundation

Pretty safe to say that if it shows up on A List Apart, it’s going to be the de facto standard. Time to learn some Foundation.

Google HTML/CSS Style Guide

Couple of days ago we got Starbucks’ style guide, and now here’s another by Google. I think the interesting thing is the rule to “\[o\]mit the protocol from embedded resources“. So instead of typing <script src="http://www.google.com/js/gweb/analytics/autotrack.js"></script>, they recommend to type <script src="//www.google.com/js/gweb/analytics/autotrack.js"></script> instead (without the http part). Never heard of that before.

“I Woke Up but My Server Wasn’t There”

Robb Shecter’s WordPress site got popular overnight thanks to Reddit and went down immediately. The interesting aspect is that the site was new and it’s on a relatively high-powered server. The author then found that the theme he used in particular was doing too many (47!) server requests at a time, and the site ran along very well after switching back to Twenty Eleven.

I think it’s an important read for any theme developers out there.

Read the story here

Modern Web Development – Part I: The Webkit Inspector

A superbly detailed article, part one of a series about web development toolchain.

Crayon Syntax Highlighter plugin

I’ve always been on the hunt for that perfect syntax highlighter plugin. Currently I’m using WP-Syntax, which does its job very well. However I’ve just found this plugin called Crayon Syntax Highlighter, which could be a good contender for the best WordPress syntax highlighter plugin out there.

It looks good, and I like the little toolbar on top of the code box, with the small icons. Additionally, it also offers a lot of customization options. Lastly, it seems to support the same pre tags to wrap the code, similar WP-Syntax, so if I do make the switch, my old codes will still be highlighted correctly.

Starbucks Style Guide

The Starbuck website has its own style guide, accessible for public. I think its a neat idea, wouldn’t it be cool if themes have their own style guide? Pretty sure it will be helpful both to users or developers alike, if time consuming to write.

Also, I wonder what they use for the various toggles panel on the top right corner like on this page. It shows background, baseline, boxes, can be used to change windows size as well. Looks like it’s custom coded, imagine how super useful it can be if it’s a jQuery plugin.

NHP Theme Options Framework

I love theme options frameworks. And I want you guys to check this new framework called NHP. It passes my “does its UI look like the rest of WordPress enough?” test (screenshots here), it has tons of field types, and even offer validations, too.

Can’t wait to test and probably use it too in my to-be-released theme hint hint

What Dev4Press thinks WordPress needs…

This post at Dev4Press outlines what MillaN, its author, thinks would be a necessary addition to WordPress.

Based on the comments, it appears that a lot of people agree with this list. Some of the items mentioned can be achieved with plugins (e.g Tax Meta Class to add meta data to taxonomy items, Custom Post Types Relationships for, well, creating custom post type relationships), so expect there to be a bunch of debates about what should and shouldn’t go to the core.

I like his list, but I disagree with his assessment that we don’t need new core themes. We do, especially to bring about the standard for how a theme options should be designed. This is the aspect that desperately needs to be standardized. Different theme companies and individual theme designers have their own idea of how the theme option UI should look, and it’s hurting the users.

Upgrading from WordPress 1.5

I recently spotted this interesting Ask Metafilter thread where user gd779 tries to find a way to upgrade his old, WordPress 1.5 install. One of the answer is pretty detailed:

I think the right approach is going to be:

  1. Do a full backup of your WordPress files
  2. Do a full database backup (mysql dump using phpMyAdmin or similar)

Then, from your 1.5.2 install:

  1. Upgrade to 2.0
  2. Upgrade to 2.5.1
  3. Upgrade to 3.0
  4. Upgrade to 3.3.1

It is quite fascinating thinking about the solution to this. There’s an official Codex page called Updating WordPress, but it doesn’t seem to go that far back in time.

Smashing Special: What’s Going On In The WordPress Economy?

Siobhan McKeown wrote this awesome, birds-eye view of the whole WordPress economy. Make sure to read this two-part article so you know what’s up with WordPress and identify what opportunity lies ahead.

I agree with Matt’s prediction on that article:

I think the next big opportunity is around agencies and consulting—there will be five to six companies as large as Automattic, just providing high-end consulting and services to the large customers who are adopting WordPress en masse.

Start with Part I of the article.

Automatic responsive images for WordPress

The one issue with creating responsive web design is in displaying images, especially getting the most appropriate size in a particular screen size. One solution for it is the Responsive-Enhance jQuery plugin. It works by loading small-sized images by default, then checks the screen size and loads the bigger version if necessary.

According to its creator, Josh Emerson:

This results in a faster perceived page load speed, but a slower actual speed. I’m happy with this solution as I care more about perceived speed than actual speed.

This tutorial by Keir Whitaker takes the whole thing further by teaching us how to apply Responsive-Enhance in WordPress.