W3 Total Cache Settings

Many W3 Total Cache settings are preset (shown in the install tab), but not all. I’ll walk you through the performance tabs then help you setup Cloudflare (free) and MaxCDN ($90/year with my coupon or do a free 30 day trial). I have used the W3 + Cloudflare + MaxCDN + SiteGround combo to make multiple WordPress site load 400% faster – now let’s do yours!

Over 75,000+ people have used this tutorial to optimize their WordPress site. It can fix over 20 items in Pingdom: caching, minify, gzip, bad requests, cache validator, add expires headers, ETag, content delivery network, reduce DNS lookups, cookie-free domains, and plenty more. This tutorial is current with the latest W3 Total Cache version 0.9.5.2 updated Jan. 17, 2017.

Here’s my Pingdom report with W3 Total Cache. My GTmetrix report is pretty good too. Of course if you want a nice report like this you NEED to be on fast servers, minimize plugins and external requests, optimize images, and ideally do everything in my WordPress speed guide.

W3 Total Cache Pingdom Test

Download my recommended W3 Total Cache settings here (you’ll need a Dropbox account). Upload under Performance → General Settings → Import / Export Settings. Check your site to make sure everything is OK (should be). You will still need to configure MaxCDN + Cloudflare.

 

w3-total-cache-performance-tab-settings

 

 

1. General Settings

w3-total-cache-general-settings

Here’s my 25% off MaxCDN coupon ($90/year annually) or sign up for a free trial. Then head to my MaxCDN section. This is recommended in the official WordPress optimization guide…

Geographic-Distance

Here is how Google Page Speed Insights look in your W3 Total Cache “dashboard” tab once you’ve added an API (instructions provided in W3 Total Cache). I prefer Pingdom over GTmetrix and Google Page Speed Insights because it’s more accurate (WP Rocket says so too).

google-page-speed-wordpress-dashboard

 

2. Page Cache

w3-total-cache-page-cache-settings

Enabling compatibility mode is highly recommended by plugin developer (in the install tab) and even though it may slightly reduce performance, problems are much less likely to exist with your site. He says this “optimizes the interoperability of caching; the tradeoff is that disk enhanced page cache performance under load tests will be decreased by ~20% at scale.”

 

3. Minify Settings

The plugin developer says the recommended settings for minify, database, and object cache are preset. You can find this in the install tab. Remember, if you’re using Cloudflare this will take care of minify for you, so just make sure minify is turned off in the General Settings tab.

w3-total-cache-install-tab

 

4. Database Cache

  • Leave as is (recommended in install tab)

 

5. Object Cache

  • Leave as is (recommended in install tab)

 

6. Browser Cache

w3-total-cache-browser-settings

Leave everything else including ‘expires header lifetime’ which the developer says is preset.

 

7. CDN

MaxCDN mirrors your site on multiple data centers around the world which reduces the geographical distance between your server and visitor. Without a CDN, you only have 1 origin server which can be very far away for many people. MaxCDN is specifically good for improving items like reduce HTTP requests, use a content delivery network, reduce DNS lookups, reduce cookie size, cookie-free domains, and other items in Pingdom and other speed testing tools. And yes, you should get better results if you use both Cloudflare and MaxCDN.

MaxCDN W3 Total Cache General Settings

How To Setup MaxCDN With W3 Total Cache
1. Sign up for MaxCDN. My 25% off coupon + 2 free months for annual billing = $90/year, or do a free trial. Use the steps below or watch my video. MaxCDN also has their own tutorial.

Sign up for your plan…

MaxCDN Signup Page

2. Once signed up, go to your MaxCDN dashboard and go to Zones → Create Pull Zone:

maxcdn-pull-zone

3. Enter your website as the origin server URL, the other two are your site name. Click create.

MaxCDN Pullzone

4. Leave this window open (you will need your CDN URL for step 8).

maxcdn-cdn-url

5. Still in MaxCDN, go to the “Account” tab and go to API → View All  → Create Application:

MaxCDN Application

  • Name/description should be your sitename
  • Application URL and Callback URL should be empty

6. After creating an API, leave that window open too. So now you should have your pull zone info and API info (step 4 and 5) open in 2 tabs, which is the info we need for W3 Total Cache:

maxcdn-api-info
maxcdn-pull-zone-info

 

7. Head over to W3 Total Cache and navigate to the General Settings tab, scroll down and enable MaxCDN (remember when you’re using a CDN, database cache should be disabled):

maxcdn-w3-total-cache

8. Now go to the CDN tab and use these settings. You’ll need to enter your alias+key+secret and CDN URL (from step 6), then use the test button to make sure MaxCDN is working…

w3-total-cache-maxcdn-settings

Here’s where you enter your MaxCDN info in the “CDN” tab…

w3-total-cache-maxcdn-settings

9. Save changes, then go back to MaxCDN and Whitelist your hosting IP (W3 Total Cache should have a notification with that IP address). Copy and paste into MaxCDN’s IP Whitelist:

maxcdn-ip-whitelist

whitelist-ip-address-maxcdn

10. Finally, view pull zones in MaxCDN and go to Manage → Settings. Make sure you ‘strip all cookies’ and follow the same settings I use, which were configured by MaxCDN themselves.

maxcdn-pull-zone-settings

All done!

If you see “cookie-free domains” in your Pingdom report, you may want to contact MaxCDN’s support to see if they will help you with this – they were able to fix this for me.

cookie-free-domains-maxcdn

Be sure to contact MaxCDN support as they were able to tweak my settings to further improve my performance grade. They have one of the best support teams ever – definitely utilize it.

CDN pointers from the plugin developer (found in Install tab) – if you do not use the Media Library, import your images etc into the default locations. Use the Media Library Import Tool on the “CDN” tab to do this. If you do not have a CDN provider, you can still improve your site’s performance using the “Self-hosted” method. On your own server, create a subdomain and matching DNS Zone record; e.g. static.domain.com and configure FTP options on the “Content Delivery Network” tab. Be sure to FTP upload the appropriate files, using the upload buttons.

 

8. Fragment Cache

You will need to upgrade to W3 Total Cache Pro to use fragment cache (which can make your site faster), but to be honest I don’t use it… so I can’t say whether it’s worth upgrading. If you do they have recommendations on that page I linked to which helps with fragment cache and making the plugin aware you’re grouping transients. You’ll need have some coding experience.

 

9. Extensions

w3-total-cache-extensions

Cloudflare – activate and see step 10.

Genesis Framework – if you’re using the Genesis Framework you can click the ‘upgrade’ button in W3TC to buy W3 Total Cache Pro for $99/year. This will enable additional speed features like fragment cache and the Genesis Framework extension which can improve site speed. Once purchased, it should say “the plugin is enabled in community mode.” Alternatively, your license key will be sent to you via email which you can enter in the General Settings tab.

WordPress SEO by Yoast – activate if using Yoast (ps. my Yoast tutorial is just as good as this).

 

10. Cloudflare

1. In the W3 Total Cache ‘Extensions’ tab, activate CloudeFlare and click the settings:

w3-total-cache-cloudflare-activation

Configure these Cloudflare settings:

w3-total-cache-cloudflare-settings

Caching Levels – I use the aggressive caching level which includes query strings.

Hotlink protection – prevents spammy sites from hosting your images on their site (sucking up your bandwidth) which can cause CPU overages with your hosting company. This was a HUGE problem for me and I suggest monitoring links to your site in Google Search Console to make sure there aren’t a crapload of spammy sites doing this. Hotlink protection prevents this.

2. Now sign up for Cloudflare. You will be prompted to add your website and begin scan…

cloudflare-begin-scan

3. Click ‘continue setup’ then scroll down through the rubbish and click continue…

Cloudflare missing records

4. Choose ‘free website’ then continue. Cloudflare will provide you with 2 nameservers:

cloudflare-custom-nameservers

5. Do a Google search for “how to change nameservers on SiteGround” (only search for your host), then follow their instructions. You will likely copy Cloudflare’s nameservers and paste them into a custom nameservers option in your hosting cPanel (screenshot below is for SiteGround). Then go back to Cloudflare and click ‘I’ve added all missing records, continue.’ You can also use whois.net to double check that your nameservers have been changed.

siteground-dns-records

6. Now login to Cloudflare and go to your speed settings. You definitely want to enable auto minify for ALL items and Rocket Loader

cloudflare-speed-settings

7. Now go to your page rules settings. There are 3 page rules I recommend creating:

cloudflare-page-rule

cloudflare-page-rule-2

cloudflare-page-rule-3

Once you’re done configuring W3 Total Cache, MaxCDN and Cloudflare, purge all caches in W3 Total Cache (below). If you don’t see this, there may be an ’empty all caches’ option in the dashboard tab. Then retest your site in Pingdom. It can take up to 72 hours for Cloudflare nameservers to propagate, but you should receive a confirmation email when it’s complete.

purge-all-cache

 

Source: Online Media Masters

Tools We Use And Recommend

Managed WordPress Hosting

Engineered for speed, built for security, crafted for WordPress. Feature-rich managed WordPress hosting with premium support, starting at just $3.95/month.

Elegant Themes with Visual Builder

WordPress Themes That Empower 401,632 Customers.  Get The Ultimate WordPress Toolkit For Web Design Professionals And Business Owners

Constant Contact

With Constant Contact, you can create effective email marketing and other online marketing campaigns to meet your business goals

whitespark

Whitespark builds tools and provides services that help businesses and agencies with local search marketing. We live and breathe local SEO and we’re known far and wide for writing and speaking on it.

Udemy

Be Able. From programming to photography, take in-depth online courses and meet any challenge with skill.

At TJ-WEBS, our goal is to provide awesome & affordable web design to individuals, small businesses and non-profits. We love the little guys, the newbies, the novices… the up-and-comers, the mom and pops and the have nots. We believe beautiful websites can be affordable and accessible to everyone. From basic blogs to full blown e-Commerce sites, we offer affordable websites to all.

Use UpdraftPlus To Save Backups To GoogleDrive

use updraftPlus to save backups in google drive

How to use UpdraftPlus to save backups in GoogleDrive in WordPress?

Taking regular backups of your site is extremely important. It can save you website if it ever gets hacked and then these backups can make your site live again in just few minutes.

UpdraftPlus plugin is one of the best and simple to use WordPress plugin for taking full backups of your blogs or websites and then restoring them easily. UpdraftPlus also allow you to easily Schedule or automate your Backups.

UpdraftPlus provides options to save your backup in various locations like:

  • Dropbox.
  • Google Drive.
  • Amazon S3.
  • FTP.
  • Rackspace.

There is Premium version of UpdraftPlus which provides additional functionality like Migrating Site, Multisite Support, Database Text Replace and many more.

Here we will be take a look at the process of configuring UpdraftPlus to upload backups to Google Drive.

Google Drive provides free storage of about 15 GB which is more than enough to store backups of small to medium websites.

The Process of configuring UpdraftPlus to store Backups in GoogleDrive is little lengthy by its totally worth the effort.

Here can follow these steps to setup the backup in UpdraftPlus:

 

Setting up UpdraftPlus to take backups.

 

updraft-setting-google-drive

Go to  Plugins –> UpdraftPlus – Backup/Restore –> Settings  and you will see the UpdraftPlus Backup/Restore page. click  settings  option.

You can select Files Backup Schedule , Database Backup Schedule to schedule regular backup.

After that select  Google Drive  as shown in the above picture.

You need to create a new project for UpdraftPlus. SO log in to your Google Account and you can follow this link to go to your Google API console.

 

Create a new project.

updraft-google-api-console-1

Create a new Google project.

 

 

updraft-google-api-project-2

Enter Project name and Project ID. if you want to get emails from Google, Select Yes otherwise NO.

You need to Agree to their Terms of Service. Press Create button to create a new project for your UpdraftPlus backups.

 

 

updraft-google-api-project-3

Click  Drive API  link to proceed further.

 

 

updraft-google-api-project-4

Click Enable to Enable the API.

 

 

updraft-google-api-project-6-1

Go to  Drive UI Integration tab.

Enter the Application Name and Short Description and other information. and scroll down to see further options.

 

Add Icons and website url.

updraft-google-api-project-6-2

If you want to set an Icon for your Application then you can upload an image here. After that scroll down to see next set of options.

 

 

updraft-google-api-project-app-icon

Same way If you want to set an  Icon  for your  Document  then you can upload an image here.

 

 

updraft-google-api-project-app-icon-4

Fill Open URL field with your website address and if you need additional options then you should configure them too. After this click  Save Changes.

 

 

updraft-google-api-project-app-icon-5

Now go to OAuth consent screen and enter your Email address and Product name.

Click Save to save the changes.

 

 

updraft-google-api-project-app-icon-6

Now select Credentials and click on OAuth client ID.

 

 

updraft-google-api-project-app-icon-9

In Client ID, select Web application as Application  type.

Enter Name (updraftPLUS)  for Client ID.
Enter your Website url in Authorised Javascript origins field.

To fill the Authorized redirect URIs field we need to copy the authorised redirect URI from UpdaftPlus plugin page.

So go back to the UpdraftPlus settings page.

 

 

updraft-google-api-project-app-icon-7

copy the authorised redirect URI text as shown in the above image. Go to Google API Console page.

 

 

updraft-google-api-project-app-icon-8

and paste it here as shown in the picture and finally click Create. It will generate the Client ID and Client secret key.

 

 

updraft-google-api-project-app-icon-10

You can find these Client ID and Client secret key by clicking the credentials as shown in above picture.

 

 

updraft-google-api-project-app-icon-11

You need to copy the Client ID and Client secret key values to enter them on the next step.

 

 

updraftplus-google-api-entry

Enter the Google Drive Client ID and Google Drive Client Secret Key that you copied in previous step in their appropriate fields. After that Click Save.

 

 

updraft-google-api-project-app-icon-12

Now you need to Click on the UpdraftPlus notice to authenticate your Google Drive Account.

 

 

updraft-google-api-project-app-icon-13

You should see the Success message after successful authentication of your Google Drive account.

You can now start taking your First Backup now By Clicking  Backup Now button.

 

Taking Backups

updraft-google-api-project-app-icon-14

Include all the options that you think are necessary and click   Back Now   to proceed further.

 

 

updraft-google-api-project-app-icon-15

Backup is in Progress.

 

 

use updraftplus to save backups in google drive.
How to use updraftplus to save backups in google drive.

Go to your Google Drive account  to verify and you should see an UpdraftPlus folder.  Here all our backups will be stored from now on.

 

 

use updraftplus to save backups in google drive.
How to use updraftplus to save backups in google drive.

Restoring backups, you can choose from Database, Plugins and other options to restore them if ever needed.

 

 

use updraftplus to save backups in google drive.
how to use updraftplus to save backups in google drive.

Click Restore and you are good to go.

How to Create a Complete WordPress Backup for Free with BackWPup

First thing you need to do is install and activate BackWPup plugin. Upon activation, the plugin will display a welcome page. It will also add a BackWPup menu item in your WordPress admin sidebar.

BackWPup Menu

Creating Backup Jobs with BackWPup

Click on Add New Job to create an automated backup job for your WordPress website. Under General tab, provide a name for this job. This name will be used internally and will help you identify each backup instance. Under the Job Tasks section, select the type of tasks you want this to perform. Available tasks include database backup, file backup, WordPress XML export, Installed plugins list, optimize database tables and check database tables. If you just want to create backup of your website, then you can select all options except for optimize and check database tables.

Create a new backup job in BackWPup

Under backup file creation section, choose an archive type. The default option is tar.gz, however you can choose zip archive if you want. Below this, you will see Job Destination section. This is where your backups will be stored. BackWPup provides multiple options to store your backup files. It can store backup file on your server, send it via email, backup to FTP, backup to dropbox, amazon S3, Windows Azure, Rackspace, and Sugarsync. Whatever you do, DO NOT store the backups on your server. For the sake of this WordPress tutorial, we will be using DropBox.

Choose backup destination and compression

Scheduling Automated Backup in WordPress using BackWPup

Click on Schedule tab and choose how often do you want to backup your site. You can schedule it to run monhtly, weekly, or daily basis by choosing WordPress Cron option. Alternatively, you can choose to manually run the job, so that you can create on-demand backups of your site. For advance level users there are more choices like using a URL to start the job externally using some other software or starting the job using WP-CLI, a command line interface for WordPress. For beginner level users we would highly recommend scheduling a daily or weekly backup by choosing WordPres Cron option.

Scheduling automatic backups in WordPress using BackWPup

What to Backup?

Click on DB Backup tab to select which tables you want to be included in the backup. Sometimes WordPress plugins create their own tables into your database, most of the time this data is not crucial and you may not need it. Unchecking these tables will reduce your backup size. However if you don’t know what you are doing, then keep all tables selected.

Select or exclude tables from backup job

Under the Files tab you can select which directories and files you want to include in the backup job. We would recommend that you do not backup core WordPress files. Instead, only backup your wp-content/uploads folder. Uncheck Backup root folder. Exclude any folders in wp-content folder that you don’t want. For example, sometimes plugins will create their own directories inside wp-content folder to store plugin data. You can exclude these folders if you want.

Select or Include files and directories from backup job

Saving WordPress Backups To Dropbox

Depending on what you chose as destination for your backup, you will see a tab for it. In this tutorial we will show you how to automatically upload your WordPress backup to Dropbox using BackupWP plugin. So click on Dropbox tab and then click on Reauthenticate (full Dropbox).

Authenticate with Dropbox to save your backups to Dropbox

This will take you to the Dropbox website where you will be asked to provide your username and password. After signing in, DropBox will ask for your permission to grant BackWPup access to your DropBox account.

Giving BackWPup Access to your Dropbox account

After that, the plugin will take care of the rest.

Creating Multiple WordPress Backup Jobs using BackWPup

You can create multiple backup jobs with BackWPup. For example, you can create a scheduled job to run on a daily or weekly basis to backup your WordPress Database and another job to run manually for backing up your WordPress files only. You can see all jobs created by you on BackWPup » Jobs page. You can run any of the backup jobs by clicking on Run Now link below the job, even for scheduled jobs. You can also edit settings for a job or delete it entirely.

Creating and managing multiple Backup Jobs

Running a Backup Job

When you execute a Backup Job manually by clicking on Run Now link, BackWPup will display the backup progress. Clicking on display working log, you can see what is going on in the background. If for some reason the backup job fails, then this log will also display the reason. You can also abort a job during the progress by clicking on abort button.

Running a manual backup job in BackWPup

Troubleshooting WordPress Backup Jobs in BackWPup

Running a backup job may cause extra load on your hosting server. This may result in unfinished backup jobs. Also on most shared hosting services, there is a limit on how much time or memory a script can consume. When your server stops BackWPup for crossing the time or memory limit, it waits for 5 minutes and then resumes the process. In this case, it would take a while for a backup job to finish.

The first thing you should do is increase your PHP memory limit, then go to BackWPup » Settings and click on the Jobs tab. Increase Maximum number of restries for job steps option. The default value is 3, you can increase it to 5 and see if this works for you. After that scroll down to Reduce server load option and select medium or minimum server load options.

Increasing memory and reducing server load for BackWPup

Final Thoughts

You are probably wondering if a good free plugin like BackWPup exist, then why do people pay for plugins like BackupBuddy or VaultPress. One of the reason is support. When you pay for a product, then you are guaranteed to get support. Another thing that we notice with both BackupBuddy and VaultPress is that they offer malware scanning. We use VaultPress because it is a 100% managed service. The backup is stored in their cloud server, and it is a pretty fool-proof setup.

We can not stress this enough that you need to back up your site regularly. Do not wait for your WordPress site getting hacked or infected with malware, start backing up now, so that you can swiftly restore WordPress from backup when the time comes. We hope that this guide helped you automate your WordPress backups. Let us know which WordPress backup solution you use by leaving a comment below.

Source: WP Beginner

Child Theme Configurator

What is a Child Theme?

A child theme is a special feature of WordPress that lets you override specific styles and functions of another theme. By using a child theme, you can update any WordPress theme without losing your changes.

Child Theme Configurator makes it easy.

Child Theme Configurator is a fast and easy to use CSS editor that allows you to create Child Themes and customize them beyond the options of the WordPress theme Customizer. It helps you easily identify and override the exact CSS attributes you want to change and gives you unlimited control over the look and feel while leaving your WordPress Theme untouched.

Thousands of users have already seen the benefits of Child Theme Configurator making it one of the most popular plugins on WordPress.org.* Read the reviews

Child Theme Configurator parses and indexes a WordPress theme’s stylesheet so that every media query, selector, attribute rule and value are at your fingertips. Second, it shows you how each change you make will look before you commit it to the Child Theme. Finally, it saves your work so that you can fine-tune your WordPress Child Theme without the risk of losing your edits.

You can make any number of Child Themes from any existing WordPress Theme. Child Theme Configurator lets you choose from your installed WordPress themes (even existing child themes) and save the results in your Themes directory.

When you are ready, just activate the child theme and your WordPress theme takes on the new look and feel automatically.

Be sure to check the Copy Parent Menu option if you’ve altered the default menu.

ChildTheme 2

WordPress SEO Plugin

WordPress out of the box is already technically quite a good platform for SEO.  This plugin is written from the ground up by Joost de Valk and his team at Yoast to improve your site’s SEO on all needed aspects.  While this WordPress SEO plugin goes the extra mile to take care of all the technical optimization, more on that below, it first and foremost helps you write better content. WordPress SEO forces you to choose a focus keyword when you’re writing your articles, and then makes sure you use that focus keyword everywhere.

 

 

Simple Slideshow Manager Plugin

This Plugin is an easy Simple Slideshow Manager where you have the ability to create as many slideshow, any number of slides, display slideshow using widgets, shortcodes or php codes.

On this website the Simple Slideshow Manager plugin was used for the Lynda.com ad space on the right sidebar.

An Easy to use slideshow plugin which help you to include slideshow in your WordPress website or blog.  Slideshow can be on your header, sidebar as widget or widget slideshow.

Click here for a live Demo

Simple Image Widget Plugin

Simple Image Widget is what the name implies — the easiest way to add images to your sidebars.  Display advertisements, calls-to-action, or even build a slider based on image widgets.

On this website, this plugin was used to display the WooCommerce Ninja.