After checking your configuration, there is a high chance that Object Cache is what is causing these 404 error.
One way to test it, is to disable it and see if the issue persists,
We've recently identified some issues with WPML that only arise when the Object cache is enabled on the site. For detailed information, please check the Errata below.
Could you please install the plugin suggested in the Errata and see if it resolves the issue?
- Back up the site completely first to prevent any issues.
- Go to the "/wp-content/" folder on the site and create a folder named 'mu-plugins' if there is not one already.
- Inside the 'mu-plugins' folder upload this PHP file: hidden link
- Once done, enable the Object Cache plugin and clear the caches from there.
After setting up the plugin properly, it would be beneficial to refresh the permalink structure. You can do this by navigating to "Settings > Permalinks" from your dashboard and clicking on "Save changes." This step often helps to ensure the changes take effect correctly.
Ok thanks for your answer, so, for sure the problem is Redis Object Cache.
Please find attached 2 screenshot, one with object cache on, one off.
Basically you can see that the footer block under the logo is always in one language if the cache is ON. When deactivated the language is correct, I guess it's the same with the URLs, so when searching for a URL it's missing in the language not present in cache.
The thing is I uploaded your Must Use Plugin and activated the object cache and still have the issue. Does it mean I have to switch object cache completely off?
Checking the server resource usage, I have to say that disabling Redis Object Cache obviously increases the usage of MySql resources and PHP processes in general, hope you can help with this so I can switch Redis back on. Please see the blue and orange areas in the attachment.
Thank you
Did not translate the block as you suggested yet.
Redis Cache turned OFF and cleared cache, the block is showing in the correct language (Italian), this means that Object cache has something to do with this.
Next I'll try your solution with Obj cache ON.
Translated the block in all languages as you suggested.
Redis Cache turned ON, all caches flushed in all languages (WProcket and Cloudflare) but still the block is showing in the wrong language (English) in the Italian site.
This is potentially the same issue all over again with Object Cache plugin,
I think we should escalate this to our 2nd tier team, but before that, since we will have to turn Object cache on and off for testing purposes, could we simply do that on your live site or should we migrate your site on a different server of ours (or yours if you have a staging with a the same issue)?
I will open an internal ticket once you confirm which approach we could take,
PS: we will also potentially need a copy of your site, for that I could install all-in-one WP migration
I have a staging area but with no Object Cache installed.
If no changes are made to the site apart from activating and deactivating Object Cache you can use the live site.
If changes are needed to debug (like switching themes or deactivating plugins) please copy everything to your servers.
Ilyes will be of for a few days. I logged into your site and find a workaround for your issue.
Here is the video of my intervention: hidden link
- Basically I switched to a default HTML WordPress widget
- I translated it in "WPML > String Translation"
- I purged all caches from Object Cache and WP Rocket
Thanks for the suggested solution. It works using html, however I guess that everytime I'll use these kind of blocks in my theme I'll have this language problem.
I also tried to translate every block with Advanced Editor and to update each language with a different slug but same result.
Thanks for your support anyway
The topic ‘[Closed] Categories showing 404 error’ is closed to new replies.