I personally believe that developing custom WordPress theme is not only about creating ‘skin‘ or ‘appearance‘ of a WordPress-based site. It’s about the whole experience: presenting the content (obviously), and what often be missed is since WordPress is not only being used for blogging for the time being, customising the content insertion mechanism is often needed. Not to mention since the rise of touch-interface-based mobile device, lots of thing should be adjusted and optimised for mobile device. During my two more years of WordPress theme (and front-end in general) development, these are the distinctive details that would make your WordPress theme more awesome and functional:
IMO, website without favicon doesn’t feel well-crafted.
- Touch Icon
The one will mimic an app icon if you ‘add to Homescreen’ your site on iOS device.
- Custom Login Screen
Make your site’s administrator feels familiar with the site during the login process to the WordPress dashboard.
- Styling for all kind of markup that will be used on content
Headings, paragraphs, blockquote, table, pre, ordered & unordered list, you name it.
- Touch-friendly UI
Okay, I’m gonna need another post to describe this point.
- Lightbox-alike Gallery / Image Previewer
Jumping to a page of image file sucks.
- Multi-level support for dropdown navigation
- Custom tinyMCE button instead of dropdown of shortcodes
Shortcuts are okay for WordPress-savvy user but confusing for average ‘user’.
- Sprited images
It’s obvious, right?
- Mobile friendly design
It’s not about using responsive design and aggressively removing most of the elements, it’s about the rise of post-PC device and cope with that.
- Decision over options
Don’t bloat the user with configuration on theme options. Just give them the ability to easily adjust essential things, not all of them.
- Page templates
Because unimaginable things often be shown on pages.
- SEO Optimised markup
What’s the use of beautiful design if it can not be found?
- Editor styling
Content creating appearance should mimic the end result as similar as possible.
- Custom meta box
Don’t let your user use custom field to add custom information of a content. Just don’t.
Okay, those are the basics. Do i miss anything?