This looks awesome: “The WPAlchemy MetaBox PHP Class can be used to create WordPress meta boxes quickly. It will give you the flexibility you need as a developer, allowing you to quickly build custom meta boxes for your themes and plugins.”
The discussion starter post last week about WordPress theme frameworks worked nicely. I really enjoyed the comment thread that took place so I thought I'd point it back out to people who may have missed that or didn't see it fully developed. Specific thanks to Justin Tadlock and Nathan Rice for sharing their thoughts as authors of popular frameworks.
I was on the WordPress Podcast with Joost De Valk talking about a whole bunch of things including WordPress 3.0 which was freshly out.
Update! (404 link removed 2014/06/29)
I did a screencast where I took a site that was working on localhost and moved it up to a live domain name. This involved moving the files, moving the database, and altering some information in the database. This is a good thing to know how to do if you are just getting into WordPress development. It is also just as relevant in moving a WordPress site from one domain to a different domain.
Here are a few specific circumstances where elmalak feels that Jooma is better than WordPress. I understand some, disagree with others. I'm always interested in debates comparing different CMSs, but have never read anything that really nailed it. Largely I think people defend the one that they use the most and the one they feel most productive using. Hey, that's what I do.
Update: 404 link removed:
In-depth overview from Paul Kaiser on how WordPress 3.0 is expanding and improving upon creating custom taxonomies, including how they can now be hierarchical. Most importantly Paul shows how (and why) they can be used in themes.
Anything you create in the global namespace has the potential to conflict with a theme, another plugin (including one you wrote), and WordPress core itself. Thus, prefix everything with a unique-enough character set. For example, all functions I write always start with “nacin_”, and I make sure that my functions are unique across all of my plugins.
In this recent post, I used some fairly generic function names like
custom_css_hooks. Andrew is saying that names like that are a little too generic and that it's possible another plugin could use that same name which would be rather disastrous. Since it's totally internal anyway, I should have called it
digwp_custom_css_hooks, which would be far less likely to meet a conflict.
Yes, it runs WordPress on Windows and SQL Server.
Update: (404 link removed 2015/05/14)
Really nice article running down the major caching plugins, including some ones I have never heard of. I'm a fan of W3 Total Cache myself, having tried about four of them on various sites. I like the CDN integration, the fact that it doesn't change your URLs, and that it combines file and database caching. Not to mention it is actively maintained.
Most interesting are the options that turn out to be worse that no caching at all.
CSS-Tricks does nearly 2.5 million pageviews a month and can run OK without caching, it's just much faster and surge-protected with it on.
Update (404 link removed 2016/07/02)
“A popular ability in WordPress themes is to add custom CSS driven by options. This brings up a common question, how should the theme inject custom CSS? I’ll outline three different approaches on how to do this.”
Turn regular datestamps into more human-readable text (e.g. 22 minutes ago) via a built-in WordPress function.
Update 2014/02/08: 404 link removed: http://www.upthemes.com/2010/03/wordpress-master-tip-display-time-ago-for-posts-or-comments/
Still confused about these "custom post types"? We already have categories for Posts and we can use various techniques like post_class to target certain posts with CSS and do different styling. We can also use conditionals to treat posts in different categories completely differently. Why is this going to help?
The big difference is that it actually adds sidebar links to the Admin side specifically for these new types. And beyond that, you can actually declare custom data types for different types. Instead of just "Add Post" and "Add Page", you can have "Add Real Estate Listing", which only will ask for "Property Name", "Description", "Price", and "Sale Status". Powerful stuff!