hitkodev
Forum Replies Created
-
Forum: Plugins
In reply to: [Breeze - WordPress Cache Plugin] JS and CSS not gzip enabled@djeah Content encoding br means your server supports Brotli compression, which is a more recent alternative to gzip compression.
https://hacks.mozilla.org/2015/11/better-than-gzip-compression-with-brotli/
Forum: Plugins
In reply to: [Breeze - WordPress Cache Plugin] Improper exclude url mergingI believe it should be plenty obvious from the code. Let’s go step by step through the affected code, shall we?
$storage['exclude_url'] = array_merge( $ecommerce_exclude_urls, ! empty( $config['breeze-exclude-urls'] ) ? $config['breeze-exclude-urls'] : array() );
This part merges
$ecommerce_exclude_urls
and exclude urls from config and stores them to$storage['exclude_url']
. So far so good, your code works. Next code:$saved_pages = get_option( 'breeze_exclude_url_pages', array() ); if ( ! empty( $saved_pages ) ) { $saved_pages_urls = array(); foreach ( $saved_pages as $page_id ) { $saved_pages_urls[] = get_permalink( $page_id ); } $saved_pages_urls = array_unique( $saved_pages_urls ); $storage['exclude_url'] = array_merge( $saved_pages_urls, ! empty( $config['breeze-exclude-urls'] ) ? $config['breeze-exclude-urls'] : array() ); }
Now if you look what this does is if
$saved_pages
option is set, it merges$saved_pages_urls
and exclude urls form the config, and stores them to$storage['exclude_url']
. Now tell me, what happened to$ecommerce_exclude_urls
which were added to$storage['exclude_url']
in the previous step? They just got overridden by$saved_pages_urls
. But what’s this? More code?if( class_exists('WC_Facebook_Loader')){ $woocommerce_fb_feed_link = Breeze_Ecommerce_Cache::factory()->wc_facebook_feed(); if(!empty($woocommerce_fb_feed_link)){ $storage['exclude_url'] = array_merge( $woocommerce_fb_feed_link, ! empty( $config['breeze-exclude-urls'] ) ? $config['breeze-exclude-urls'] : array() ); } }
See the pattern? Now if
WC_Facebook_Loader
is active, we again override any saved or ecommerce urls from the previous step. Amazing.- This reply was modified 4 years ago by hitkodev.
Forum: Plugins
In reply to: [Breeze - WordPress Cache Plugin] Improper exclude url mergingHere’s a fixed version: https://pastebin.com/5qMrT3KW
Forum: Plugins
In reply to: [Breeze - WordPress Cache Plugin] Broken caching in 1.1.7The first issue seems to be fixed, but it still doesn’t properly cache multisite.
Forum: Plugins
In reply to: [Breeze - WordPress Cache Plugin] Broken caching in 1.1.7Another fine bug (this time on multisite):
$blog_id
defaults to 1, and only resolves AFTER Breeze tries to serve cached content. Since Breeze prepends$blog_id
to cache path, it tries to read fromcache/breeze/1/...
, but writes tocache/breeze/[resolved blog id]/...
, which obviously doesn’t match.Forum: Plugins
In reply to: [Breeze - WordPress Cache Plugin] Broken caching in 1.1.7Everywhere, just look at the damn code, like, say, line 214 in
execute-cache.php
which was not updated with the new logic, and appendsguest
without?
or&
prefix. Alternatively, here’s the refactored code, so you won’t have to worry about updating copy-pasted code all over the place: https://pastebin.com/x9dEDKhc