Introducing Semicolon

Semicolon is a brand new magazine theme for WordPress. It’s simple, clean, and it’s got quite a unique grid layout with support for featured posts. Semicolon was initially created for WP Magazine, an online news site about WordPress in Russian. It’s got support for featured posts, a social profiles menu, related posts, author bios, and a few widget areas. Head over to the demo...

Idea: Static Templates for WordPress

I was helping out a friend a few days with their fairly complicated WordPress website. Complicated because it had over 40 different page templates, rendered exclusively by PHP. Each page template had something special about it, like a form and form handler, a JavaScript calculator, a list of registered users, the current user profile and more. Page Templates worked pretty well, and the other...

Debug Bar Slow Actions

If a typical WordPress page load takes more than one second, chances are there’s something terribly wrong with your site, a theme or a plugin is probably doing something it shouldn’t. Obviously you don’t have time to review every single line in your codebase, so Debug Bar Slow Actions might help you out. Debug Bar Slow Actions is an extension for the popular Debug Bar plugin. It...

Templating WordPress (Video)

Last year I spoke at WordCamp Sofia and the videos are finally up on WordPress.tv. I spoke about templating in WordPress, about how and why the template hierarchy works, and covered some of the core functions like locate_template() and filters like template_include.

You can find the slides and reference links right here.

Social Menus in WordPress Themes

I’ve seen tens, maybe hundreds of different plugins, all with different approaches at creating social profile links in WordPress themes via widgets, menus, shortcodes, and “insert this piece of PHP code in footer.php” and whatnot.
A few days ago I stumbled on what I think is the right way.

Fail2ban + WordPress + Nginx

I’ve been using the Limit Login Attempts plugin for WordPress for quite a while. It basically logs failed login attempts and automatically blocks multiple attempts from a single IP address. A few days ago I’ve switched to fail2ban instead, which is pretty new to me. Fail2ban is a fairly simple yet very flexible framework that monitors log files for certain patterns, and runs...

2013: A Year in Review

Twenty Thirteen (the year, not the theme) is almost over, so I’d like to go back and review some of the things I had planned and the goals I had set for the year.

Here’s what happened in 2013.

Publish up to 170% more posts with Color Schemes Roulette for WordPress

You know WordPress 3.8 has arrived, right? It’s got a total of eight new and beautiful color schemes for you to choose from, and another eight (at the time of writing) in an official plugin called Admin Color Schemes, so sixteen total. How do you pick one? Easy. Meet Color Schemes Roulette — a brand new WordPress plugin, that will randomly change your admin color scheme every time you...

Understanding _n_noop()

_n_noop() is one of the many functions overlooked by WordPress developers, probably because of it’s somewhat cryptic name, or perhaps due to lack of a good use case. Let’s see what the docs say:
Register plural strings in POT file, but don’t translate them.
Exactly. No, seriously, that’s what it does.