13 Tips for Working with WordPress on Client Sites

by Steven Snell

March 25, 2009 in Business/Freelance

In the right situation WordPress is an excellent CMS to use for client websites. As a designer/developer, it provides flexibility and it’s easy to work with. From the client’s perspective, it’s free and open-source and it gives them control over the content of their own website. However, there are some things that you’ll need to consider when working with WordPress as a CMS for clients. If you have built your own personal sites on WordPress you’re probably used to doing things in certain ways. Clients, on the other hand, may have a different experience and it’s important to consider some things during the process. In this article I’ll discuss some things from my own personal experience, feel free to share your own thoughts in the comments.

1. Take Advantage of WordPress’s Built-In CMS Capabilities

Over the past few years WordPress has consistently improved the experience and ability to use it as a full-fledged CMS, rather than just a blogging platform. The options of having a static front page and the blog posts on a specific page make it possible to use WordPress for a lot of different purposes. Additionally, options like using different page templates can help to make a site that looks less like a typical blog.

2. Talk to the Client About Upgrades Ahead of Time

Part of working with WordPress and using it as a CMS is the inevitability of the need to upgrade. Upgrades either bring new functionality or features, or they fix security holes, so they’re not a bad thing, but from a client perspective they may bring added maintenance to the site. If the client is not comfortable doing the upgrade themselves they’ll have to hire someone to do it for them (maybe you). Upgrading is not that big of an issue and shouldn’t be a deal breaker, but the client should be aware of the need to upgrade periodically before jumping in to the project.

3. Be Prepared to Train the Client on How to Use WordPress

For those of us that spend a lot of time with WordPress of other CMSs, it may seem pretty simple. However, many clients, especially those who are not very tech-savvy, will have no idea what to do without some instruction. For most sites, it won’t require hours of your time, but you will need to spend some time with most clients walking them through the process of editing and adding content. Be sure to account for this when you’re estimating how long the project will take.

4. Find Out Who is Currently Hosting Their Website

This is probably something you would want to find out up front anyway, but it’s more important when you’re dealing with WordPress. Most major hosting companies by now are offering an easy installation of WordPress (such as through Fantastico), but it’s a good idea to make sure that their web host offers this option. If not, you may want to charge a little more for a manual installation of WordPress, or ask them to move to a new hosting company. One option is to become a reseller of a particular host. Then you could get as many clients as possible to use your own hosting and you would be working in a familiar environment most of the time (plus you could make some extra money on the hosting).

5. Minimize Plugins When Possible

One of the best things about being a WordPress user is the excellent community and all of the resources available, including plugins. However, plugins are a potential source of problems when it comes time to upgrade. I’m not suggesting that you use no plugins, but if a client site isn’t upgraded frequently, excessive plugins can lead to extra work. If you stick to plugins that are actively being updated by developers you should be fine. Additionally, if there are other plugins that can accomplish the same thing, you’ll always have some alternatives if a plugin causes problems following an upgrade.

6. Minimize the Use of Custom Fields

Custom fields are a great feature of WordPress and they open up all kinds of possibilities. But in my opinion, many clients get overwhelmed if they need to use custom fields. In many cases it really comes down to what the client wants and needs. For some things you may not be able to accomplish something specific without the use of custom fields.

7. Consider Purchasing a Developer’s License of Premium Themes

Many premium themes offer developer’s licenses that sell for two or three times the cost of a single license. If you do a lot of client work on WordPress, you may want to consider purchasing some of these. It could save you a little bit of money (you could still charge a client the cost of a single license if you have paid for a developer’s license), plus it will allow you to get very familiar with some specific themes. Editing an existing theme can often be faster and more cost effective than building a theme from scratch, and many premium themes include additional functionality from the dashboard.

8. Use Child Themes if You’re Customizing Existing Themes for Clients

If you want to make modifications to an existing theme for a client, theme upgrades could be difficult or impossible depending on just how much you change the theme. Child themes can allow you to edit the theme while keeping the upgrade process very simple. Admittedly, this is an area that I need to work on for myself.

A child theme is essentially a CSS-only theme that allows you to modify the look of the theme without hindering the ability to upgrade in the future. If you want to learn more about child themes, see:

9. Have a Development Blog

If you do much work at all on WordPress, this is probably something that you already have, but still worth mentioning. You’ll want to install WordPress somewhere that will allow you to work on client themes (and test) without the public being able to find it. With a development blog you can keep multiple themes and switch back and forth whenever you want to work on one.

At the start of a project you may prefer to code it in static HTML and CSS before implementing it into WordPress, but there are sometimes going to be slight changes to how things will appear once it’s in WordPress. For this reason, it’s preferable to get into WordPress earlier rather than later to avoid re-doing things.

10. Keep Your Development Blog Updated with Every New Release of WordPress

Updating WordPress is a good practice in any situation, but especially if you’re developing new themes. If you’re developing a theme for a client that will be using a new installation of WordPress, they’ll be using the latest version. The last thing you’re going to want to find out is that something in the theme doesn’t work quite right on the client’s site because your development blog is not up-to-date.

11. Use Different Page Templates

Page templates can be very useful for a few different reasons. First, they allow you to have pages look and function in different ways, rather than everything using the same blog sidebar for example. Also, and equally important, page templates can allow you to “lock down” certain elements of the design that might otherwise be unintentionally altered by the client. Using the WordPress editor makes it easy for clients to accidentally delete something that might have a significant function in the design. By keeping these items as part of the page template you can ensure that nothing important is deleted or changed.

12. Consider Using PSD to WordPress Services

PSD to HTML services are obviously very popular right now, and they can save you some time in development. There are also some, like WP Coder, that specialize in converting PSDs to WordPress themes. In the right situation, this type of service could make your process easier and free up some of your own time.

13. Set the Client Up with a Database Backup Plugin

Most of your clients won’t think about backing up their database, so it can be helpful if you install a database backup plugin and show them how to use it periodically, it could save tons of headaches later.

What’s Your Advice?

For those of you who work with WordPress, what is your advice on the subject?

Powered by Shutterstock

About Steven Snell

Stephen Snell is the owner and editor of Vandelay Design.Connect with Stephen on google+

  • Bobby Burdette

    Mar 25th

    do you know of any resources that can help with #3? I have had a lot of trouble getting people to understand what they have when i deliver them a WordPress site. Thanks.

  • Doug Waltman

    Mar 25th

    I’ve used WordPress as a CMS in many client’s website, and currently use it on my personal blog. One thing I learned early on is to be careful when using image replacement techniques in your menu/navigation such as image sprites. When the client adds a new page, you no longer have a sprite for that navigational item. If you’re familiar with the GD library and PHP, you can write a script that dynamically generates new images for your navigation and page titles. Oooh, that just gave me an idea for my next blog post.

    And I still have yet to try one of those PSD to XHTML services. I’ve been very tempted. Maybe I will give WP Coder a shot, now that you’ve mentioned them.

  • Matt

    Mar 25th

    Noting the upgrades is good advice. People should know that either they will have to do upgrades, or more likely you will.

  • Matt

    Mar 25th

    Here’s something specific I do to make using WordPress easier for non-technical clients: I teach them to bookmark the /wp-login page AND their home page. Then the process I tell them to use goes thusly: 1) Go to your wp-login bookmark and log in. 2) Go to the home page bookmark. 3) Navigate to the page you want to edit. 4) Click the “edit this page” link at the bottom of the page.

    This keeps them from having to learn how to navigate through the WordPress back-end. Clients generally take to editing their own sites much more quickly when they can spend all their time in the front-end.

  • Rank Higher, Make Money!

    Mar 25th

    Thanks for the tips! Good call on keeping plugins to a minimum – perhaps increase of fees for each plugin used might be a good idea?

  • Tracy Boyer

    Mar 25th

    Great advice, Steven. I am actually implementing my first WordPress site for a client and have considered most of your points. Another tip I would suggest is to make a separate user profile for the client. This way, trouble-shooting is easier if something breaks on their end since you can start by looking for areas denoted from their user activity.

  • Steven Snell

    Mar 25th

    Bobby,
    I typically walk through the admin panel with the client over the phone. I only go into details on parts that the client will need to use. I think it’s also good to let provide them with a link to the forums where they can ask questions in the future. I’m sure others have better methods, but this has worked pretty well for me so far.

    Matt,
    I agree, especially with clients who are very non-tech savvy, entering from the page is a bit easier than moving through the admin area.

  • Craig

    Mar 25th

    I think that the last point regarding backups is VERY important, although this is of course dependent on the information contained within the website.

  • Steven Bradley

    Mar 25th

    Steven I also walk clients through things over the phone. I may help them publish a post or page too. Maybe let them try the last one before the site goes live. Sometimes they’ll need a second quick call to remind them of something, but after that they’re usually fine.

    Good advice as always.

  • Tracey Grady

    Mar 25th

    Like you, I need to spend a bit of time looking at child themes. Thanks for the reminder (!) and the resources which give more information about child themes.

  • Thomas

    Mar 25th

    Thanks Steven, Good to remind this :)

  • Rafie

    Mar 25th

    Few things to add:

    // Security – Lot’s of article on WP Security
    // SEO – (same as above)
    // Analytics – Yup, you can offer them this service.

    Above all, I tend to give more than required and that is when they will love you more than their own employees :)

  • Addicott Web

    Mar 25th

    Thanks for the article and all the good tips. I’ve done a few WordPress sites for clients, but I’m currently developing a few for clients who aren’t very tech-savvy, so it will be a good opportunity to put some of these into practice.

    One quick thing I did was customize the dashboard that they’ll see once they log in. In WordPress 2.7+ you have the option of choosing what to display, so instead of having it display everything, I only have it display the most basic stuff that they’ll need.

  • vishal

    Mar 25th

    Having a development blog is always a good idea. Many a times when we feel like experimenting we can do it in the development blog. For the same reason it’s better to have a hosting server which has got both ‘fantastico deluxe’ and ability to create multiple ‘subdomains’. Some subdomains when created can be used only for developmental purposes.

  • John McMullen

    Mar 25th

    Here’s some advice: don’t actually let the client update things themselves. Sure, if they’re blogging, let them blog, but for other things take care of it for them and charge hourly or a flat monthly (with limited hours). This will ensure the site doesn’t suddenly freak out b/c they put it some weird code they found on the interwebs.

  • Steven Snell

    Mar 25th

    John,
    While I agree in theory with handling all the changes yourself, it’s not practical for many clients, at least not the ones I have dealt with. Most clients want to use a CMS so they can handle the content themselves and this kind of defeats the purpose. I guess it depends on how much of the site will be using the blog, and how much will be using other pages that would require hiring a designer or developer. If there’s only a few pages that don’t need to be changed very often it may not be a problem.

  • Doug Waltman

    Mar 25th

    @John McMullen

    I used to take that approach. But, if a client ads some code that breaks the site, they call you to come in and fix it. This way you aren’t bleeding your customers dry over simple updates. Most of the time, this results in a happier customer. People like to have some control over their own sites.

  • Cassie

    Mar 26th

    I always go over HOW my clients write their blog posts before I let them go live. Almost all of them write their blog posts in Word or something which embeds all those nice little bits of bad code. The one time I had a tech-savvy client was such a breath of fresh air! I do try and teach my non-savvy clients as much as I can. Teach them how to fish kind of thing.

  • Steven Snell

    Mar 26th

    Cassie,
    That’s a good point. It’s something I do, but forgot to mention in the article.

  • PiterKokoniz

    Apr 7th

    Hi !!! ;)
    I am Piter Kokoniz. Just want to tell, that I like your blog very much!
    And want to ask you: will you continue to post in this blog in future?
    Sorry for my bad english:)
    Tnx!
    Piter.

  • Steven Snell

    Apr 8th

    Hi Piter,
    Yes, new posts will continue on this blog. Thanks for reading.

  • Adam Kayce

    Apr 17th

    I’m a full-time WordPress designer, and this list is spot on. I read through it, nodding, saying, “Yep… yep… yep…”

    Solid advice, every one.

  • Steven Snell

    Apr 18th

    Adam,
    Thanks for the feedback. I obviously do client work with WordPress, but certainly not full-time, so it’s good to hear that you agree.

  • Anja

    May 5th

    More and more clients ask for an option to update their own sites, so I was thinking of starting to use WordPress as a CMS for them. While I have successfully developed two WordPress sites for myself, I have no idea how to set this up for clients. For regular sites I use a test directory on my server, and for WordPress I would do the same. But can I install several instances of WordPress on the same server? Also, once the WP site is complete, how do I move it to the client server without running into problems? I have not really seen a good tutorial on this anywhere.

  • Steven Snell

    May 5th

    Anja,
    My advice is to have a development installation of WordPress somewhere for working on new themes. You could either set it up locally or have a a private domain where you work on themes. Six Revisions had a good tutorial recently for using XAMPP for local WP development. As far as moving it to a client’s site, once you have the theme developed and tested on your server you can just upload the theme to the clients site and activate it. Of course you’ll need to test it there, and if the client isn’t already using WordPress you will need to install it first.

  • Mark @ Alchemy United

    May 27th

    Two things…

    1) Thanks. Nice list. Good tips and some good reminders as well.

    2) “8. Use Child Themes if Your Customizing Existing Themes for Clients” Pardon me but I believe it should be You’re not Your.

  • Steven Snell

    May 27th

    Hi Mark,
    Thanks for catching my typo. I fixed it.

  • Anja

    Aug 6th

    I have now developed a bunch of client sites on my server and I’m ready to move the first site. There are several ways to move a site on WordPress.org not sure which one is the safest and easiest. I wanted to go with the Export/Import version but it says that it won’t delete the “Hello World” and other default stuff WordPress puts in there. So I think this is the only way to do this:

    1. Download a copy of the main WordPress files from your OLD blog to your hard drive and edit wp-config.php to suit the new server.
    2. Go back to your OLD blog and go to options and change the URL (both of them) to that of your new site.
    3. Again, download your database (but keep the old one just in case), upload this new database and the copy of the WordPress core files with the edited wp-config.php to your new server.

    Just hoping that this won’t cause any database problems and server issues!

  • Tom Hermans

    Sep 29th

    All of the above ideas were in my head too, and I try to make it customers as easy as can..

    But what I’m wondering is what do you answer if a client asks: “but wordpress, isn’t that a free, open-source blogging platform ?”

    Not that I have difficulties about it, I make the front-end and customize the whole setup to their needs, so I should be payed, but still..

    Tom.

  • Steven Snell

    Sep 29th

    Tom,
    When using WordPress for a client’s site I usually explain the pros and cons of WP and open source with them prior to starting the project. The main reason is so they don’t get upset six months later when they have to upgrade (or pay me to do it) WP or something like that. If clients are objecting to paying for a WordPress theme I would explain that the system to power the website is free, but to get the custom design that they want they will have to hire a designer. I’ve never had anyone object if a custom design is what they want.

  • yeoj

    Oct 12th

    page bookmarked!

    Hi I am new to wordpress, but I have already learned the basics of customization. I would like to ask where do you guys get contents for your blog? I am not a writer my self.

  • nirok

    Oct 21st

    Hey with regards to teaching your clients to use wordpress, i’m actually looking into creating my own blog teaching my clients how to do the different functions therefore not having to constantly write up and send through emails…. that way you can just link in the dashboard your blog on how to do stuff… so when they login its all there…. I think the dashboard should be edited so that relevant stuff is shown there

  • Troy Dean

    May 24th

    Hi Nirok,

    We might have beaten you to the punch, so to speak. We have a suite of video tutorials and a written manual designed for clients available as a plugin accessible from the dashboard. We also have a plugin called White Label CMS (http://www.videousermanuals.com/white-label-cms/) which allows you rebrand the dashboard and remove unwanted panels and menus.

    http://videousermanuals.com

    Enjoy!

  • Saad Ibrahim

    Jun 9th

    Wow! that’s one awesome list!

  • Joanna Ciolek

    Jul 24th

    Excellent list. I’d like to stress the importance of points #2, #3 and #8. Setting up your client for the long run is crucial.

  • designer jakarta

    Jul 26th

    Thank’s for share…. nice post…

  • Shalon Ironroad

    Jul 30th

    Thank you for this list! I’ve found that DimDim is a great tool for walking clients through and training them. You can record the meeting, as well, for future reference (saves you time because you don’t have to train and re-train).

  • vuitton

    Aug 8th

    Yes, new posts will continue on this blog. Thanks for reading.

  • jehn glynn

    Oct 17th

    Hii! I have been searching the internet for info like this. Thank you so much!

    I have a question and I was wondering if you would not mind answering it for me? I am working for a freelance client doing their website and logo design. We have had our initial meetings and I know what they want and do want for their website. The next step is for me to show them 3 website layout ideas and then they choose from there & I make the skeleton of the website etc…
    I am using wordpress for this and have 3 themes in mind that would work with what they want but they are different.
    My question is: How would I present these website ideas? Just as sketches? In an InDesign file, converted to a PDF, printed out and mounted? What are your thoughts? I am totally lost…

    Thank you Thank you Thank you!

  • Willena Sleet

    Dec 11th

    Thanks for the facts!

  • web hosting

    Jan 18th

    @jehn glynn: prepare both an InDesign and give a printed version of it to the client so he can write and sketc possible remarks. You can also take notes on a separate print.

    As for advising, I would suggest to create a new user for your client and restrict him from certain functions of WordPress, so you make sure he will not make a mess out of the site.

  • Chris

    Jul 1st

    Great article! I’ve always been an advocate of WordPress for enterprise websites. It’s a really flexible and powerful CMS, really easy admin backend for clients too!

  • Caça Vazamento

    Jul 27th

    I got a client and he want a CMS to easily edit content on the site. To do so, I will create another user and choose what the user can see and what the user can not see. Obviously, he will see only the parts that matters for him. Such as Page and Add a new post and edit them.

    If he add some bad code that will break the site, he will call me, and I will fix but I want to be paid. It is a way that you have to earn some extra money with client mistakes.

    Thanks for the tips.
    By the way, I am from Brasil, if you find some english mistakes that i`ve made, forgive me.

  • huzaifa

    Jul 28th

    Very good article. Thanks.
    Would you recommend using snippets where possible or should I stick to plugins?

  • Leave a Comment

    Your email address will not be published. Required fields are marked *