Skip to content
View in the app

A better way to browse. Learn more.

Web Designer Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Webcaching With WP - Plug In Made It Worse

Featured Replies

I have been using website speed tester and it says I need to use webcaching.  So I added WP Fast Cache plugin which has great reviews.  However, when I enable it the website tester GTMetrix says website is even slower and the score for webcaching is even worse.

Quite confused what's going on.  How do I webcache using Wordpress?

  • Author

Hi,

I got the load speed down by more than 60% but now my website doesn't update in other browsers.  This is ridiculous, why is so complex to make a website?

If you need caching you are doing something wrong.

You have a slow site because of your theme, plugins, woocommerce, elementor and everything else you have added.

If you want a fast site strip out everything you really don't need.

You have a 1.9Mb homepage with 117 requests 43 of which are scripts.

Building a website isn't complex if you plan it properly. The planning and preparation is often the longest part of the project (and most boring) but it's vital to get the result you want.

  • Author

But I had this problem before I started using WP.  I hand coded my first site.  I added webcaching code and it stopped the site updating in other browsers.

Once I switched on the webcaching plugin the speed increased by 60% but it wont update on other servers.  I am talking to the owner of the plugin.

How do you use webcaching.  It's ridiculous.  What if a florist wanted to make their own site.  They have to look after all these details.  Surely the host can make webcaching automatic.

3 minutes ago, justlukeyou said:

How do you use webcaching.  It's ridiculous.  What if a florist wanted to make their own site.  They have to look after all these details.  Surely the host can make webcaching automatic.

It's because caching isn't "generic", different file types etc require assessing and depending on use will depend on caching rules. I'd get mighty annoyed if a host started auto caching stuff, like most things on the web it's a case-by-case basis.

If a florist wanted to make their own website they can, just like us developers they would need to learn how to code and other aspects involved in making a site. What if I wanted to be a florist? Is there a "make me a florist with talent" plugin I could use? Don't ever forget these pre-fab site builders were coded at the core by some pretty talented people so you can simply "one click install".

3 minutes ago, justlukeyou said:

Why does it not cache everything.  There must be a simple solution to this.

I don't think you understand caching;

Quote

A web cache (or HTTP cache) is an information technology for the temporary storage (caching) of web documents, such as HTML pages and images, to reduce server lag.

Source: Wikipedia

So the cache is for making quick access to something, but the  question is always "how long before the cache is considered stale". Now for search result page you generally don't want to cache, people running repeat searches don't want a cached version of /search.php. What about a font? If using a locally stored font the odds of the actual font file changing (not the same as css changing a font) is pretty slim; caching these fonts for a year would be favourable.

  • Author

But why is none of the website updating on other browsers when I try webcaching.  I have tried code and a plugin and the same thing happens.  There must be a way to fix this.

  • Author

What about when I used the manual code.  If both options are failing do I need to speak to my host.  This is ridiculous

It's not ridiculous.

You need to read up about how caching works, how browsers interpret the code and how your host delivers content.

As I said, the problem is your site. You have thrown everything on the site without considering its impact on performance.

  • Author

I have said a few times now.  The caching did not work before I started using WP.  So Wordpress is not the issue.  

You can cache with htaccess, I hand code everything and it's my go-to, all my sites are quick no matter the tool used to test. With htaccess I "generally" run;

AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType font/x-woff .woff
AddType image/svg+xml .svg

# Deflate for speed
AddOutputFilterByType DEFLATE font/ttf font/otf image/svg+xml
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

# BEGIN EXPIRES
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/png "access plus 1 week"
ExpiresByType image/gif "access plus 1 week"
ExpiresByType image/jpeg "access plus 1 week"
ExpiresByType text/css "access plus 1 week"
ExpiresByType application/x-javascript "access plus 1 week"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/vnd.ms-fontobject "access plus 1 year"
ExpiresByType font/ttf "access plus 1 year"
ExpiresByType font/otf "access plus 1 year"
ExpiresByType font/x-woff "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
</IfModule>

 

  • Author

Okay.  If so I need to add this to my htaccess file? 

I tried code on my htaccess file when I handed coded my site but it was much smaller than this.

Normally you'll have at the start something like;

Options +FollowSymlinks
RewriteEngine On
RewriteBase /
Options -Indexes
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.yourdomain\.co\.uk [NC]
RewriteRule ^(.*)$ https://www.yourdomain.co.uk/$1 [R=301,L]
ErrorDocument 404 /404.php

... after that should be fine but I warn you I have no idea what WP does in the htaccess file.

23 minutes ago, justlukeyou said:

I have said a few times now.  The caching did not work before I started using WP.  So Wordpress is not the issue.  

Yes, but I also said if your site is properly constructed you shouldn't need caching. It can help but if you have a slow site all caching does is mask the underlying problems

21 minutes ago, fisicx said:

Yes, but I also said if your site is properly constructed you shouldn't need caching. It can help but if you have a slow site all caching does is mask the underlying problems

Which brings us back to the caching on a case-by-case basis ;)

  • Author
31 minutes ago, fisicx said:

Yes, but I also said if your site is properly constructed you shouldn't need caching. It can help but if you have a slow site all caching does is mask the underlying problems

The Google site seems to suggest that every site should using Caching.  They just don't explain how to do it.

  • Author
9 minutes ago, BrowserBugs said:

Which brings us back to the caching on a case-by-case basis ;)

I see.  So how do I go about it with my site?  I just don't understand how both options don't work.  

6 minutes ago, justlukeyou said:

The Google site seems to suggest that every site should using Caching.  They just don't explain how to do it.

Google says a lot of things - and a lot of them just aren't practical.

To fix the site you need to eliminate all the scripts, styles, images and other clutter you aren't using.

You minimize and concatenate the rest. Then you can use your functions.php to remove all the detritus wordpress adds to your site. It's a slow process but the end result is a fast and efficient site.

You should be able to get those 177 server calls down to around 30. Just doing that will cut your load speed by a large chunk.

  • Author
3 minutes ago, fisicx said:

Google says a lot of things - and a lot of them just aren't practical.

To fix the site you need to eliminate all the scripts, styles, images and other clutter you aren't using.

You minimize and concatenate the rest. Then you can use your functions.php to remove all the detritus wordpress adds to your site. It's a slow process but the end result is a fast and efficient site.

You should be able to get those 177 server calls down to around 30. Just doing that will cut your load speed by a large chunk.

Okay but I have absolutely no experience in that and it sounds like a mountain to climb when I already have so much else to do.  Why are there plugins that speed my site up by 60% but then stop updating when I visit the site.

  • Author

What I'm confused about is that I see corporate websites with lots of images on and they large file image sizes but their sites are fast.

  • Author

Hi,

Is there a quick fix to this. I have sold ebooks in the past and I want to sell a new ebook with 10% from each sale going to a charity that uses drones to find homeless people.  I really need to get this sorted.

9 hours ago, justlukeyou said:

What I'm confused about is that I see corporate websites with lots of images on and they large file image sizes but their sites are fast.

Better hosting. You are on cheap shared hosting with one of the worst providers in the UK so it's never going to be quick.

7 hours ago, justlukeyou said:

Hi,

Is there a quick fix to this. I have sold ebooks in the past and I want to sell a new ebook with 10% from each sale going to a charity that uses drones to find homeless people.  I really need to get this sorted.

The fix is to remove all the plugins and page builders and make the site really simple. You don't need all those layout features. To sell the book all you need is a basic payment plugin like this one: https://wordpress.org/plugins/quick-paypal-payments/

The sort of site you want can be put together in a couple of hours. If it's a charity thing I can help you with this.

11 hours ago, justlukeyou said:

I see.  So how do I go about it with my site?  I just don't understand how both options don't work.  

The caching of assets like images / css / js will help. To test a file you can use a header check. An example, I tested your logo.png;

HTTP/1.1 200 OK => 
Date => Thu, 25 Oct 2018 07:48:47 GMT
Server => Apache
Last-Modified => Sat, 20 Oct 2018 19:23:07 GMT
ETag => "37046822-6d55-578adf31ed804"
Accept-Ranges => bytes
Content-Length => 27989
Connection => close
Content-Type => image/png
Set-Cookie => DYNSRV=lin226; path=/

No caching, so here is an example of a jpg from a site I work on which uses htaccess for caching images as I showed earlier;

HTTP/1.1 200 OK => 
Date => Thu, 25 Oct 2018 07:50:08 GMT
Server => Apache
Last-Modified => Wed, 26 Sep 2018 11:27:47 GMT
ETag => "bd1756d-e9e0-576c48307670d"
Accept-Ranges => bytes
Content-Length => 59872
Cache-Control => max-age=604800
Expires => Thu, 01 Nov 2018 07:50:08 GMT
X-Clacks-Overhead => GNU Terry Pratchett
Connection => close
Content-Type => image/jpeg
Set-Cookie => DYNSRV=lin-10-170-0-64; path=/

Note it has Cache-Control => max-age=604800 which is 7 days in seconds aka "access plus 1 week". This tells the browser that until the expiry of Thu, 01 Nov 2018 07:50:08 GMT this image is considered fresh so use the local cached version of the image. Now for the next 7 days that's 1 image they don't have to request again.

Pages themselves on the other hand are treated differently, so for example your home page comes back as;

HTTP/1.1 200 OK => 
Date => Thu, 25 Oct 2018 08:14:50 GMT
Server => Apache
X-UA-Compatible => IE=edge
X-Pingback => https://www.mydronecareer.com/xmlrpc.php
Link => ; rel="https://api.w.org/", ; rel=shortlink
Connection => close
Content-Type => text/html; charset=UTF-8
Set-Cookie => DYNSRV=lin-10-170-0-15; path=/

Nothing about cache control, this is why the pages don't update in some browsers, they are not informed to your cache preference so they will make their own mind up. With actual pages I generally go for no cache, this forum home page also follows this method.

HTTP/1.1 200 OK => 
Date => Thu, 25 Oct 2018 08:17:02 GMT
Server => Apache
X-Powered-By => PHP/7.0.32
Expires => Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control => no-store, no-cache, must-revalidate
Pragma => no-cache
X-XSS-Protection => 0
X-IPS-Cached-Response => Thu, 25 Oct 2018 08:16:57 GMT
Connection => close
Set-Cookie => ips4_IPSSessionFront=9aj1dkcu74kim90fu2hof1c1c2; path=/; secure; HttpOnly
Content-Length => 109430
Vary => Accept-Encoding
Content-Type => text/html;charset=UTF-8
X-Backend-Server => standard_backend/web5.hosting.stackcp.net

Note they have set the expiry to a previous date and set the cache control to not store or cache and the browser needs to re-validate each request. You can set these with php just before the start of the page;

header("Expires: " . date("D, d M Y H:i:s", strtotime("-1 year")) . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");

 

Edited by BrowserBugs

9 hours ago, justlukeyou said:

Hi,

Is there a quick fix to this. I have sold ebooks in the past and I want to sell a new ebook with 10% from each sale going to a charity that uses drones to find homeless people.  I really need to get this sorted.

As I see it your options are 1) continue to learn about caching yourself and find a way through the issues you're having or 2) find a hosting provider who will not just host your site, but provide proactive management for it too. There are plenty out there, but obviously you will pay more.

As the other posters have said though, a clean/efficiently put together WP site with a host already running optimizations for hosting Wordpress, shouldn't need a caching plugin as well. 

1 hour ago, BrowserBugs said:

Note it has Cache-Control => max-age=604800 which is 7 days in seconds aka "access plus 1 week". This tells the browser that until the expiry of Thu, 01 Nov 2018 07:50:08 GMT this image is considered fresh so use the local cached version of the image. Now for the next 7 days that's 1 image they don't have to request again.

And this is where it all starts to fall over. You still need the initial page load to build the local cache which means the site isn't going to load any faster. And if your browser (like mine) it set to clear history when you close the browser then the local cache won't even exist. On a phone the cache is tiny so only really lasts for a few hours so again you will have to reload everything every time.

It also relies on the repeat visits to the site. If they land and bounce off and not return then the caching becomes irrelevant.

10 minutes ago, fisicx said:

And this is where it all starts to fall over. You still need the initial page load to build the local cache which means the site isn't going to load any faster. And if your browser (like mine) it set to clear history when you close the browser then the local cache won't even exist. On a phone the cache is tiny so only really lasts for a few hours so again you will have to reload everything every time.

It also relies on the repeat visits to the site. If they land and bounce off and not return then the caching becomes irrelevant.

Yep, that's your browser and preference, you can even turn off any caching. Caching is good even for a single visit if you explore more than one page in a session. If you don't ever come back the speed and lack of repeat downloading in that single session is worth it IMO, especially if you run a plug in heavy WP site you still only swallow the excessive js files once per visit.

Just like using JavaScript for lazy loading, only benefits the JS faithful and actually adds an extra request for those without. Without caching anything no one will benefit.

Edited by BrowserBugs

  • Author
2 hours ago, fisicx said:

Better hosting. You are on cheap shared hosting with one of the worst providers in the UK so it's never going to be quick.

The fix is to remove all the plugins and page builders and make the site really simple. You don't need all those layout features. To sell the book all you need is a basic payment plugin like this one: https://wordpress.org/plugins/quick-paypal-payments/

The sort of site you want can be put together in a couple of hours. If it's a charity thing I can help you with this.

Many thanks!

What host would you recommend.

How would you construct the sort of the site.  With the Pagebuilder I just need the homepage to shrink down on mobile.  If I have a template code I should be able to do it myself and get rid of Pagebuilder.

I've got my own server so I'm probably not the best person to ask about hosting but I point clients to https://www.hihosting.co.uk/

They seem to do a good job.

Get the content on the homepage and I'll fix it for you. But it's not just the page builder, it's the theme and woocommerce slowing things down.

  • Author

Okay great.  I will design the final page.  Should be able to do it tomorrow.

Do you think the Twitter feed is a problem.  I am using the standard Twitter feed.

The thing I'm puzzles about is that the Wordpress plugins have great reviews.  That's why I'm confused as to why they don't work.

29 minutes ago, justlukeyou said:

Okay great.  I will design the final page.  Should be able to do it tomorrow.

Do you think the Twitter feed is a problem.  I am using the standard Twitter feed.

The thing I'm puzzles about is that the Wordpress plugins have great reviews.  That's why I'm confused as to why they don't work.

They do work, but most do server-side and not client-side caching. One will store data in a users browser, the other will fetch cached data off the server to avoid things like database queries. Some server side caching, for example, will take data out of an in-memory store, others will fetch a static HTML version of the page. Caching isn't a silver bullet, it needs to be understood to implemented properly.

  • Author
1 minute ago, Jack said:

They do work, but most do server-side and not client-side caching. One will store data in a users browser, the other will fetch cached data off the server to avoid things like database queries. Some server side caching, for example, will take data out of an in-memory store, others will fetch a static HTML version of the page. Caching isn't a silver bullet, it needs to be understood to implemented properly.

I contacted my host and they suggested I use a different plugin and that didn't work either.  

So are you suggesting I cant use any plugins?

I have never used any of them. Our host has their own server-side caching system that we use instead based on something called memcached.

Quote

I got the load speed down by more than 60% but now my website doesn't update in other browsers.

That's exactly how it should work. When something changes, you need a way of invalidating the current cache on the server.

It sounds like before you touch anything on the server, you need to improve the frontend performance of your site, then look at cache control headers, which are client-side not server-side. Focus on frontend and client-side performance before anything else.

1 hour ago, justlukeyou said:

Many thanks!

What host would you recommend.

How would you construct the sort of the site.  With the Pagebuilder I just need the homepage to shrink down on mobile.  If I have a template code I should be able to do it myself and get rid of Pagebuilder.

There are a ton of good hosts around, for example at RackX we employ a number of server-side solutions to optimise performance as well as run everything in shared accounts from SSD. It makes a huge difference.

Just take the time to do some research and be prepared to look beyond the typical “big” names 

Edited by Matt-RackX
Remove link

1 hour ago, justlukeyou said:

The thing I'm puzzles about is that the Wordpress plugins have great reviews.  That's why I'm confused as to why they don't work.

The do work. They just don't work the way you want them to. In any case, most of the reviews were written by people who have no idea what they are doing.

40 minutes ago, justlukeyou said:

I contacted my host and they suggested I use a different plugin and that didn't work either.  

So are you suggesting I cant use any plugins?

Avoid plugins where possible. And avoid any theme that bolts on stuff you don't need.

Caching is not the answer to your problem. The solution is to do what I suggested a while back and focus on the content. Get this sorted and then make it look pretty.

  • Author
7 hours ago, fisicx said:

The do work. They just don't work the way you want them to. In any case, most of the reviews were written by people who have no idea what they are doing.

Avoid plugins where possible. And avoid any theme that bolts on stuff you don't need.

Caching is not the answer to your problem. The solution is to do what I suggested a while back and focus on the content. Get this sorted and then make it look pretty.

Thanks,

I do like the layout of my site.  10X better than it used to be.  I want to get rid of the pagebuilder.  Is there any template media kit I can use.  If I had a template I could probably get it working and then get rid of the pagebuilder.  Starting from scratch with a mediakit could take me 2 months but a template could take me a week.

  • Author

I have been doing some more testing and I either need to get rid of the images which obviously I can't do or the pagebuilder but to do that I need to use mediakit which I haven't used before.  The way I learn is by playing with templates.  Is there such thing as a template media kit that I can practice with.  I need to get this sorted.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.