If you’re creating WordPress websites for clients, Jetpack adds a number of features to your client sites without the need for a dozen different plugins — reducing the technical debt that you need to maintain, and saving you time and your clients money. Here are some of our favorite tips for using Jetpack to streamline your work with clients.
Using Jetpack during development
Jetpack lets you work on sites in either Development Mode and Staging Mode, enabling you to test and try new things without impacting a client’s live site. What’s the difference, and how are they useful? Keep reading!
Development Mode lets you work with features that don’t require a connection to WordPress.com servers and often a great way to build on top of Jetpack. Development mode is automatically enabled when you don’t have a period in your site’s hostname, i.e. localhost, and can also be manually enabled if you’re working on a development server or other URL.
Enable Development Mode as constant in wp-config.php by adding:
define( 'JETPACK_DEV_DEBUG', true);
or add it as a filter in your theme’s functions.php or a development plugin via:
add_filter( 'jetpack_development_mode', '__return_true' );
For adding filters, we strongly recommend using a development plugin to use for all of your in-development needs. With a custom development plugin, you can include the Jetpack Development Mode filter and include other necessary tools like the Debug Bar. A good development plugin reduces the number of items on your launch checklist, leaving fewer things to slip through the cracks when launching a site.
A Development Mode filter added via a plugin might look something like this:
No matter how you enable Development Mode, ensure it is disabled before handing the site over the client to ensure your clients don’t ask why Jetpack isn’t working!
A staging site is a testing site meant to replicate a production site, so you can test changes without impacting your site’s visitors — or your client’s business. Enabling Jetpack’s Staging Mode on your staging server enables you to keep all of Jetpack’s functions active without possibly impacting your production site.
Your staging site will have all the same Jetpack features enabled, except nothing will be sent up to WordPress.com. You can test styling on Related Posts or customize the default message in Publicize without actually publicizing anything to your social media networks or generating e-mail notifications.
As of Jetpack 3.9.2, you enable Staging Mode by adding this to your staging sites’s wp-config.php:
define( 'JETPACK_STAGING_MODE', true );
Then, simply clone your production site to staging and enjoy. You can safely copy your site from production to staging and back to production without impacting Jetpack or Jetpack’s connection to WordPress.com. To make things even easier, we automatically enable Staging Mode on all WP Engine staging sites, and will be adding more hosting providers soon.
Other Development Tips
We realize that development processes can’t always follow the practices outlined above. What if you’re testing changes to a feature that requires a connection to WordPress.com for a site still in development and never connected to WordPress.com, like styling our Subscription widget?
While on a development server, you can connect your client’s site to WordPress.com with your own WordPress.com account while you work on the site. One thing to remember when using a connected site during development is to first disconnect Jetpack from your WordPress.com account before migrating to your production server. Then, when the migration is done, reconnect the site on the production URL with your client’s WordPress.com account.
Why is it important to disassociate your account from the client site? Many site developers will connect Jetpack to WordPress.com with their WordPress.com account for convenience. This becomes problematic when you end up with hundreds of sites listed on your https://wordpress.com/sites page. Since it is often likely that your work will be done for the client once development is completed, it’s also likely that you do not need or want access to the site any longer unless you have a continued relationship with the client. Even if you do, its a good idea to teach your clients to self-serve so that you’re not a bottleneck.
From your client’s perspective, if Jetpack is connected to your account, they also aren’t able to manage their Jetpack connection via https://wordpress.com/sites or access their enhanced stats via WordPress.com. Your client may already have a WordPress.com account if they’ve used Gravatar or Akismet in the past so very often its easy to connect Jetpack with their existing account.
Speaking of managing sites on WordPress.com…
Managing Sites on WordPress.com
If you do manage sites on behalf of your clients, you can manage menus, posts, pages, plugins, and more through a single unified dashboard on WordPress.com — saving time and money for you and your clients. We’re adding more and more functionality to site management on this dashboard – keep an eye on our blog for updates and new additions.
Through WordPress.com, you can also upgrade to Jetpack Premium and Jetpack Business to access Akismet and VaultPress for an anti-spam solution, backups, and security scanning services.
Question? We offer free support, so contact us anytime. If you think you’ve discovered a bug or found a particular pain point, don’t keep it to yourself! We want to make Jetpack the first plugin you install on every client site.
In addition to our e-mail support, for bugs or feature requests, we develop Jetpack on GitHub.
If you’re particularly proud of how you have used Jetpack on a client site, let us know in the comments; we’re always excited to hear how people our using our tools and services to make the web a better place.