• Hello,

    We absolutely love your plugin however this is one downfall which we are able to overcome – Edge Side Includes.

    On our WooCommerce store, dynamic content such as price variations with coupons, our Amazon style purchase timer (Order within xxxx to get this item on Tuesday) etc do not work due to the nature of the way the plugin caches the content.

    I’ve been experimenting with OpenLiteSpeed, LiteSpeed Cache and QUIC.cloud and have found that these items are automatically setup with ESI so that only these small parts of the page are left as dynamic content where as the rest of the page is statically cached.

    With LiteSpeed cache and QUIC.cloud, I simply need to add ‘esi’ to any shortcodes or a simple line to the javascript and all this content can be easily cached dynamically.

    CloudFlare have supported ESI with CloudFlare workers for some time now which serves exactly the same purpose as what LiteSpeed cache has already achieved thus far.

    Is it possible to setup your workers so that they automatically include ESI for the essential parts of WooCommerce?

    The page speed we get from your plugin is sensational, however losing all dynamic functionality on the pages which are statically cached is of no use when running an ECommerce store as this removes all personal experience for the user.

    Please do let us know if you plan to implement this in the future as we’d love to stay with your plugin, however the downfalls are starting to outweigh the benefits when I know there is a solution out there which already works.

    Many thanks for your time!

Viewing 1 replies (of 1 total)
  • Plugin Contributor iSaumya

    (@isaumya)

    Hi,
    what you are stating is a quite common thing in caching. As when a page is cached in the CF datacenter and is being served from CF CDN the request never even reaches to the origin server and hence no PHP gets executed to show things dynamically.

    Instead, for a page that can be cached when the first request is generated the origin server generated the HTML of the page which is then further gets saved by CF CDN.

    In order for dynamic contents to show up, PHP must be executed as those dynamic inclusions are happening with PHP codes. This is why while using the plugin, if you have a page with dynamic content that depends on PHP to generate the content, we suggest those pages to be bypassed from cache.

    Similarly when someone login for all logged in session pages are bypassed from Cloudflare cache. This is because for logged in session many dynamic content shows up which requires PHP to execute and hence the request must be processed by the origin server.

    Now coming to ESI, unfortunately there is no easy to to enable ESI in cloudflare. You can use Railgun to improve your dynamic content speed not in most cases I have seen it working poorly and causing many issues than solving any.

    Coming to using Worker for ESI, unfortunately, as you know WordPress is a very complex and diverse system completed of many types of themes, plugins most of which does not follow and proper coding standards. Due to which creating a generic worker script that will work across all kind of WP sites with ESI is mostly impossible.

    But with this plugin if you enable the worker mode it will allow you to have your own custom worker script. I mean you can extend our default worker script to add your own custom featured into it. Check the FAQ tab inside the plugin setting for how to do that.

    Also check: https://blog.cloudflare.com/edge-side-includes-with-cloudflare-workers/

Viewing 1 replies (of 1 total)
  • The topic ‘CloudFlare ESI – WooCommerce’ is closed to new replies.