Tips on using and developing for WordPress happily

Jeff Chandler at Weblog Tools Collection wrote a post titled Stop Blaming the WordPress Team, in which he basically argues that the users shouldn’t blame the WordPress developers if a plugin breaks with an upgrade.

I wanted to reply in the comments, but my reply probably warrants a longer blog post. And, I figured I’d try to throw in a few tips for both users and plugin authors.

The first thing I want to say is that this doesn’t just extend to plugins. Themes can sometimes break too, especially if they’re themes with more advanced features.

The WordPress developers can’t conceivably test every plugin to see if it’s working, not even what you consider to be a popular and useful plugin. What’s next? Should we start asking them to test themes too?

I’m quite happy that we get regular updates to our blogging platform, which means we get security fixes, bug fixes, and more features.

What I’ll try to do with this post is point users and plugin and theme authors in the right direction. Maybe some folks just don’t understand that when something breaks, it’s not WordPress’ fault.

As a blogger running a self-hosted version of WordPress

You should take some responsibility.

I think one of the major problems is that WordPress has made it too easy to run your own site. So easy, in fact, that we sometimes forget that we’re actually running our own sites. Not that I’m complaining about how easy it is, but it can present some problems.

Honestly, how often to you back up your database? Really? Don’t lie.

How many of the core developer’s blogs are you subscribed to?

If you’re running your own site, then you’re responsible for it. That’s just the simple truth of the matter.

Here are some useful tips for running your own site

First and foremost, make regular database backups of your blog:

Run a local install of WordPress on your computer. Yes, even Average Joe should do this to test plugins and themes before using them on a live site (alternately, you can run a test install in a subdirectory of your site):

Make sure you test plugins with the beta releases and release candidates WordPress puts out on your local install and/or your live test site.

If a plugin or theme doesn’t work with a new version, try contacting the author to see if there’ll be a fix for the latest version of WP. Or, at least let them know there’s an issue. Maybe they’re not even aware of it.

Another useful tip might be to check out a plugin or theme author’s site before using their stuff. Some people might not be that dedicated to their work, which is perfectly fine, but as a user, you might want some assurance. Check out what they’ve done and how involved they are within the WordPress community. Maybe that plugin author made a simple plugin and never made plans to update the plugin at all.

Some tips for plugin and theme authors

Any plugin or theme author worth his salt should have a local setup running the latest WordPress version. You can use the tutorial on setting up WordPress with Xampp. It’s quite simple.

Familiarize yourself with WordPress Trac. That’s all the documentation you’ll ever need on seeing where changes are made to the core WordPress code.

Use Subversion with WordPress. You can easily pull the latest development version of WordPress onto your computer. Ptah Dunbar also has a good article on using Subversion. I personally use Tortoise SVN to both track changes within my themes and plugins and to keep my version of WordPress current on my computer.

Follow Mark Jaquith’s blog He sometimes releases important information for plugin authors. Other developers and contributers’ blogs can be found on the About WordPress page.

Finally, set up support forums for your plugins or themes. bbPress is extremely simple to set up. It’s a lot easier to quickly find bugs if you have a community surrounding your work. Trust me, they’ll let you know if something’s broken.

What I hope you take away from this

I had first written a post in anger at users blaming WordPress for things breaking. But, not all users are as informed as the rest of us. I figured it be much more beneficial to give a few tips and point out some useful links.

What I really hope is that plugin and theme authors take advantage of some of the great tools the WordPress developers either give us or allow us to use with WordPress.

The ability to have updates ready on the day of a new WordPress release is pretty easy if you have the time to put into it.

Be sure to include any advice or tips you have for theme/plugin authors or users in the comments.

15 responses to “Tips on using and developing for WordPress happily”

  1. Robert

    Justin, I think there is a big disconnect though between the users “in the know” and the rest of the WP community.

    Many hosts give away WP blogs for free now, and provide FTP access to the code, so they can upload plugins, themes, and upgrade if necessary.

    But I think most bloggers “just want to blog”. They don’t know anything about dot releases or software development cycles. They use WP because it’s fee and it it’s easy to use.

    I think the problem should fall on both the plug-in/theme authors who don’t support their product as they should, and the WP core team, for not taking the upgrading process more serious. I feel they have ignored that issue altogether, putting the onus on the user to deal with it.

    I also feel the upgrade process is way more complicated than it needs to be, granted that it’s really nothing more than deleting files, and uploading them again. But the system OUGHT to do that for the user.

    I do upgrade my blogs, and watch for plug-in/theme compatibility, and take that burden off of my users. But, I don’t really know that most users know anything about version x of this and version y of that don’t work together kind of stuff. It’s a bit much.

  2. Justin Tadlock

    Robert
    I think you’re definitely right when it comes to those that “just want to blog.” But, I’m of the opinion that if you don’t want the hassle of maintaining your own site (even if it’s relatively easy with WordPress), then you might need to start out at WordPress.com before moving on.

    That was the point I was trying to make about it being too easy to start a site. Some people don’t realize what they’re getting into.

    There’s definitely room to blame plugin/theme authors that don’t support their releases. Someone mentioned on the WLTC article in the comments about implementing more standards to get, and keep, your plugin on WordPress.org, which might go a long way in making sure users aren’t getting bad plugins.

    The upgrade process is getting simpler for Average Joe too. I’m thinking we’ll see a built-in upgrader sometime soon. It’s something Matt has talked about on a few occasions.

    Of course, more advanced users know they can upgrade their blogs in about 10 seconds with Subversion, but not all hosts allow this kind of access and it’s much too complicated for the average user.

  3. Robert

    BTW Love the Options Theme. :)

    All the new upgrade notifications are awesome.

    I never did understand why a plugin-installer wasn’t part of WP. One-Clicke or Pluginstaller are perfect, and do exactly what they ought to. They notify when a new version of a plugin is available, AND install it. Simple, and perfect.

    I mentioned over there, that perhaps Plug-in authors should be forced to periodically have to indicate they are still supporting their plug-ins? Sometimes, we don’t know until we have come to depend on the functionality of a plug-in, that it’s dead past WP v.x.

  4. styletime

    Hi Justin

    Thanks for the tips I installed a copy of xampp and am running WP locally but with a test site not a copy of my live website Db.

    Whats the easiest way to backup my ‘live’ WP install with Database and then install it to my local machine?

    Backup the WP Db using the plugin above and import it using phpmyadmin, then copy over the whole WP folder from my ‘live’ site?

    Or is there an easier way and also to easily keep them synced?

  5. Andrew

    I agree that it is too easy but I am conflicted. I certainly wouldn’t want to restrict anyone, but at the end of the day there are a lot of people who just don’t understand what is going on enough to get a plugin to work with their setup.

  6. Justin Tadlock

    Robert
    I suppose that a built-in installer was the last thing on most developer’s minds when building the platform. The technology just had to grow until that point.

    There could definitely be some more standards like plugin authors periodically indicating that the plugin is working or something.

    styletime
    I don’t know how to easily keep them synced. Hey, maybe there’s a plugin! ;)

    For testing purposes though, you could just export your WordPress posts from your dashboard under “Manage > Export.” Then, just import them into your local install. I only recommend this type of importing/exporting for testing and not as a complete backup.

    Andrew
    I definitely wouldn’t want to restrict anyone either. The great thing about the WordPress community is that anyone can use the software and share with each other freely.

    But, maybe there should be some type of guide that really tells users, “Hey! To run your own site, here’s some important things you need to know!”

    I suppose I’m a bit conflicted too. I want more people using WordPress because it’s good for the community. At the same time though, I want people to realize that this isn’t blogger.com and they’re responsible for their own content.

  7. hyper

    Also an easy way to run WordPress locally is to use BitNami Stacks ( http://bitnami.org/stack/wordpress ) They install apache,mysql,php,phpmyadmin and your CMS of choice. I run a few of these along with some subdomains to test out installs. Once way you could run a local copy or your WordPress install is to setup an auto sync to pull down the latest from your site once a day. While that would overwrite what is local with the DB you would still be able to then try out a test version on that DB to see if it will work fine and then every night it is reset. You would need to use rsync for the files or mount your ftp server and use a sync app. I am not sure about syncing the MySQL though.

  8. J Mehmett

    It is the same that Windows users blame Microsoft when a Trojan invades their systems.

    As the above crowd commented, thousands of WP users only know how to upload a plugin/theme, how to activate it and of course how make posts and pages. Many of them do not have an idea about the term “localhost” and of course, there are many WP users who upload and activate every plugin/theme (they see) to their live web server.

    As the time passes and WP evolves there are even newer users, but the more the theme/plugin developer takes care of his works, the less the users blame WP.

    I would the fallowing tips:

    1. Don’t upload more than your need.

    Don’t use more than 5 plugins (excluding hello dolly and akismet) and 2 themes (excluding the classic theme and the default Kubrick). Use only a plugin if you think it’s very necessary for your live website. Use the theme that you tested in your localhost.

    2. Always check your server settings

    Your web host may change the server settings without your knowledge. If you are on a shared host, this is likely to happen.

    3. Learn WP Code Language

    If you don’t know, learn the basics of PHP, XHTML and CSS. You can learn them from w3schools.

    Then familiarize yourself with WordPress Codex.

    Cheers

  9. Justin Tadlock

    hyper
    Thanks for the tips about BitNami Stacks. I might have to give it a go sometime.

    J Mehmett
    Tip number one is definitely a good one. Five plugins is a solid number. Plugins should only be used if necessary. I’m running eight on this site, but three of them are plugins that I’ve written and tested to use here, which I could just use in the theme files if I wanted. And, one of them is Akismet.

    Tip three is a favorite of mine too. Familiarizing yourself with the WP Codex is a must. If you need to troubleshoot something, people can’t help you if you don’t know what they’re talking about. Learning WordPress terminology and how the system works (to a degree) is something everyone should be doing.

  10. Link Medley Blogging - Forty Plus Two

    [...] Tadlock has Tips on using and developing for WordPress happily. The post includes a link to a turotial about installing Xampp and WordPress on your own computer, [...]

  11. Taiwan

    I used the backup wordpress plugin before and it caused many hanging files and my server got pissed off. they would kill the files after I complained my sites were down. Finally I was able to figure out it was that plugin. I hope they fixed it.

  12. Interesting Reads - Sep 21st, 2008 | Perfect Blogger

    [...] Justin Tadlock: Tips on Using and Developing WordPress happily - great post for WordPress blog owners [...]

  13. Jaki Levy

    I do agree with a few things - setting up a wordpress site has never been easier. However, I think this should be encouraged. The more users, the larger our community, which leads to feedback + innovation.

    And you’ve encouraged me to backup my stuff. I just realized - I’ve had a blog for 3 years and have not backed it up once. wow. When it comes to data, Ignorance is NOT Bliss

  14. Dainis

    Well, I dunno, blog software, CMS’s, all these things come and go. Right now, what I know is that I created blog.curetinnitus.org using WP. It took FOREVER to figure out a solution for subscriber-only content, and I’m still not really pleased with “hidepost.” The search tool to find plugins is very bad at finding relevant plugins. And, I really have to dig deep to get things to work in a way that “works” for me.

    Now that I’ve invested so much into WP, my site hangs. I’m a pretty skilled IT fella, but really, I might just have to switch to Joomla. I’ve created a few sites using Joomla, and my experience might be unique, I’ve never had a Joomla site “just hang.” Errors, sure. Displaying improperly, of course. But just hanging and creating server errors. Nope.

    How am I to find out why my WP site hangs? Days of testing? Weeks of learning and setting up a “test environment?” It hangs — sometimes, which is not something I can build a community on.

    Considering abandoning WP,
    Dainis

  15. Guitar Blog

    Thanks for the tips. Getting your blog up and running is definitely easier nowadays. I appreciate the reminder for backing up. That is the best advice anyone can get. There is a huge selection of plug ins out there and I’m sure most of them are great. Just don’t go overboard with the installation, you don’t need every single widget out there. I know it can be tempting but having a lot of plug ins might cause more harm than help.

Leave a Reply

By submitting a comment here you grant this site a perpetual license to reproduce your words and name/web site in attribution.

WordPress-o-Sphere