This thread is resolved. Here is a description of the problem and solution.
Problem:
The client is experiencing issues with custom widgets turning into 'Missing widget' entries after saving a page in SiteOrigin Page Builder, following updates to WPML v4.8.4 and String Translation v3.4.1. Additionally, there is a 404 error on the pagination of a custom post type archive, which temporarily resolves upon re-saving the ACF custom post type but reappears later.
Solution:
We have determined that the issue with the widgets is not directly caused by WPML or String Translation, but rather by how the custom widgets are loaded and registered. Ensure that all custom widgets are registered using the standard
widgets_init
action and confirm that widget IDs and class names exactly match those saved in SiteOrigin. Also, check for PHP 8.3 compatibility as the plugin might use outdated code.
For the 'Missing widget' issue, disabling the 'Automatically detect best options for translating image texts' setting under WPML → Settings → Media Translation might resolve the issue. This is because WPML's media duplication process could be stripping necessary backslashes from the widget's data when saved in a secondary language. If problems persist, it's recommended to use
wp_slash()
when saving data to ensure backslashes are preserved.
If these solutions do not resolve the issues or if new problems arise, we recommend opening a new support ticket. Additionally, it's advisable to check related known issues at https://wpml.org/known-issues/, verify the version of the permanent fix, and confirm that you have installed the latest versions of themes and plugins. For further assistance, please visit our support forum at WPML Support Forum.
This is the technical support forum for WPML - the multilingual WordPress plugin.
Everyone can read, but only WPML clients can post here. WPML team is replying on the forum 6 days per week, 22 hours per day.
This topic contains 18 replies, has 0 voices.
Last updated by 5 months, 2 weeks ago.
Assisted by: Dražen.