Beaver Builder only working on homepage

Hi,

I have moved servers and now beaver builder is not working properly. I moved from apache to nginx so a lot of the server config is very different, I am not sure if it is a rewrite rule interfering or something else.

I can set global CSS and edit the first page but if I view a post or other page then the global CSS does not take effect and I cannot enter the page builder.

Could you have a look at it? I will follow up with logon details

[Content Hidden]

We have identified the issue but do not know how to solve it.

The problem stems from this rule:

# Use cached or actual file if they exists, otherwise pass request to WordPress
	location / {
		try_files /wp-content/cache/supercache/$http_host/$cache_uri/index.html $uri $uri/ /index.php ;
	}   

I have found another post where you say to use index.php?$args but this breaks wp-super-cache.

The problem is detailed in the discussion below this article: https://easyengine.io/wordpress-nginx/tutorials/multisite/subdomains/wp-super-cache/

Can I get some advice how to handle this one please?

I think the issue here is that beaver builder is being called by a link to “?fl_builder”. If wp-super-cache detects a GET parameter it falls back to legacy caching because all pages are written to static html pages, thats why route must be index.php and not index.php?$args.

I am assuming we need a specific try_files directive just for ?fl_builder but I am not sure how to structure this.

Any advice?

(if you look at my site beaver builder is working as we are using index.php$args but any url with a GET is not properly cached. This means pretty much every other plugin like ecommerce and forum are using legacy caching)

Hey Mike!

Sorry to hear about the issue! Can you try temporarily disabling WP Super Cache and clear BB’s cache by going to Settings > Page Builder > Cache and see if that fixes it? Give it a shot and let us know how it goes.

Jun

Hi Jun,

How will disabling wp-super-cache fix it’s integration with beaver builder? I believe I have been very detailed laying out what the problem is so your response makes it seem like you haven’t read what I have written.

The issue is that wp-super-cache needs this nging rule:

	location / {
		try_files /wp-content/cache/supercache/$http_host/$cache_uri/index.html $uri $uri/ /index.php ;
	}  

Beaver builder is loaded with ?fl_builder so this is not being routed due to that rule.

In another thread you advise to use this:

	location / {
		try_files /wp-content/cache/supercache/$http_host/$cache_uri/index.html $uri $uri/ /index.php?$args ;
	}  

This makes beaver builder work but now wp-super-cache falls back to legacy caching mode as it is detecting GET parameters in URLs.

Can you address this issue please?

Hi Mike,

I believe the reason why Jun suggested disabling WP Super Cache is because we recommend any cache plugin be disabled whilst using the page builder.

Therefore, if you disable the cache plugin does the issue remain?

Thanks,
Danny

The issue is to do with nginx rules. If no args are routed then BB doesn’t load regardless of what plugins are enabled or disabled because the route doesn’t go anywhere.

It is fine though don’t worry. I thought it would have worse impact but most plugins are not having static content on URL with GET paramter, just things like my signup page are falling back to legacy caching but it appears most static content is still correctly cached.

Hi Mike,

I’m not familiar with nginx rules, but another user did have this issue and fixed it with the following…

In the vHost config, you have to make a change from:

try_files /wp-content/cache/supercache/$http_host/$cache_uri/index.html $uri $uri/ /index.php;

TO -

try_files /wp-content/cache/supercache/$http_host/$cache_uri/index.html $uri $uri/ /index.php?$query_string;

with the ( ?$query_string; ) at the end solved the issue :=)

Have a look at that and let me know if it helps.

Thanks,
Justin

Yeah, $args & $query_string are same value only difference is $query_string is read only.

It works fine but it makes wp-super-cache fall back to legacy caching in some circumstances but it’s not a problem really as it seems most plugins use permalinks instead of query parameters on the front end.

Thanks for the response. If I work out a specific beaver builder routing rule I’ll post it here.