Sauter la navigation

Ce sujet est résolu. Voici une description du problème et de la solution.

Problem:
The client reported a bug with WPML causing several well-indexed product pages to disappear on their live site, while these pages showed no errors on their staging site.
Solution:
We identified a potential conflict between WPML and the Yoast WooCommerce SEO plugin. The error logs indicated a problem with the Yoast WooCommerce SEO plugin's handling of structured data. We recommended deactivating the Yoast WooCommerce SEO plugin to see if the issue resolves. If the client still needs this plugin, we advised contacting the support team of Yoast WooCommerce SEO for further assistance.

Please note that this solution might be outdated or not applicable to your specific case. We highly recommend checking related known issues at https://wpml.org/known-issues/, verifying the version of the permanent fix, and confirming that you have installed the latest versions of themes and plugins. If the problem persists, please open a new support ticket at WPML support forum.

Il s'agit du forum d'assistance technique de WPML, le plug-in multilingue pour WordPress.

Il est accessible à tous, toutefois seuls les clients de WPML peuvent y publier leurs messages. L'équipe du WPML répond sur le forum 6 jours par semaine, 22 heures par jour.

Marqué : 

Ce sujet contient 7 réponses, a 0 voix.

Dernière mise à jour par Bruno Kos Il y a 8 heures et 48 minutes.

Assisté par: Bruno Kos.

Auteur Articles
janvier 3, 2025 à 10:20 am #16560721

nicolasM-36

Contexte de la question:
Bonjour, suite à un bug de WPML dans notre site, plusieurs pages ont sauté. J'aimerais savoir comment résoudre ce problème car il s'agit de pages de produit déjà bien référencées. Sur notre staging, bien avant que WPML ne fasse un bug, les pages en question n'ont aucune erreur. Voici le lien vers une page où le problème peut être vu : lien caché

Symptômes:
Plusieurs pages ont sauté sur le site en production, alors qu'elles n'ont aucune erreur sur le site de staging.

Questions:
Comment résoudre le problème des pages qui ont sauté à cause de WPML ?

janvier 3, 2025 à 1:47 pm #16561561

Bruno Kos
Supporter

Les langues: Anglais (English ) Allemand (Deutsch ) Français (Français )

Fuseau horaire: Europe/Zagreb (GMT+01:00)

Hi,

Est-ce que lien caché est l'URL originale ou traduite?

Si c'est l'URL originale, est-ce que la page fonctionne correctement si vous désactivez WPML?

Si oui, pouvez-vous le faire?

Accédez à votre serveur via FTP et ouvrez wp-config.php (à la racine de votre installation WordPress).
Insérez ces lignes just avant /* That's all, stop editing! Happy blogging. */

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Faites vos tests et si le problème se reproduit (ouvrir lien caché), accédez au fichier debug.log ici: /wp-content/debug.log et copiez/collez l'information dans votre prochaine réponse.
Plus d'info: https://wordpress.org/support/article/debugging-in-wordpress/

janvier 6, 2025 à 3:06 pm #16566839

nicolasM-36

Hi,

Impoqqible to add gebug.log or to copy it

janvier 7, 2025 à 9:24 am #16568613

Bruno Kos
Supporter

Les langues: Anglais (English ) Allemand (Deutsch ) Français (Français )

Fuseau horaire: Europe/Zagreb (GMT+01:00)

You can copy-paste the latest debug.log lines here, it should show Fatal Error of some sort as soon as you reproduce the error by visiting lien caché.

Or there is no file /wp-content/debug.log at all?

janvier 7, 2025 à 1:28 pm #16569679

nicolasM-36

Hi,

It's too long, I cannot paste it here and I cannot add the .log file.
Here are the lines where the fatal error is explained :
[06-Jan-2025 09:24:57 UTC] PHP Deprecated: Creation of dynamic property BE_Table_Rate_Method::$default_rates is deprecated in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce-table-rate-shipping/inc/class.shipping-method.php on line 122
[06-Jan-2025 09:24:57 UTC] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php:791
Stack trace:
#0 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php(809): WPSEO_WooCommerce_Schema->maybe_add_vat()
#1 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php(271): WPSEO_WooCommerce_Schema->add_unit_price_specifications()
#2 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php(215): WPSEO_WooCommerce_Schema->filter_offers()
#3 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/class-wp-hook.php(324): WPSEO_WooCommerce_Schema->change_product()
#4 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/plugin.php(205): WP_Hook->apply_filters()
#5 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/includes/class-wc-structured-data.php(455): apply_filters()
#6 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/class-wp-hook.php(324): WC_Structured_Data->generate_product_data()
#7 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#8 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/plugin.php(517): WP_Hook->do_action()
#9 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/templates/content-single-product.php(60): do_action()
#10 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/template.php(812): require('...')
#11 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/includes/wc-core-functions.php(284): load_template()
#12 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/templates/single-product.php(37): wc_get_template_part()
#13 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/template-loader.php(106): include('...')
#14 /var/www/vhosts/1h2o3.com/httpdocs/wp-blog-header.php(19): require_once('...')
#15 /var/www/vhosts/1h2o3.com/httpdocs/index.php(17): require('...')
#16 {main}
thrown in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php on line 791
[06-Jan-2025 09:24:57 UTC] PHP Deprecated: Creation of dynamic property BE_Table_Rate_WC::$method_conditions is deprecated in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce-table-rate-shipping/woocommerce-table-rate-shipping.php on line 163
[06-Jan-2025 09:24:57 UTC] PHP Deprecated: Creation of dynamic property BE_Table_Rate_WC::$user_management is deprecated in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce-table-rate-shipping/woocommerce-table-rate-shipping.php on line 164
[06-Jan-2025 09:24:57 UTC] PHP Deprecated: Creation of dynamic property GFACL_Plugin_Updater::$domain is deprecated in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/gravity-forms-advanced-conditional-logic/includes/class.GFACL_Plugin_Updater.php on line 78
[06-Jan-2025 09:24:57 UTC] PHP Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the

wc_catalog_restrictions

domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the

init

action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/functions.php on line 6114
[06-Jan-2025 09:24:57 UTC] PHP Deprecated: Creation of dynamic property BE_Table_Rate_WC::$method_conditions is deprecated in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce-table-rate-shipping/woocommerce-table-rate-shipping.php on line 163
[06-Jan-2025 09:24:57 UTC] PHP Deprecated: Creation of dynamic property BE_Table_Rate_WC::$user_management is deprecated in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce-table-rate-shipping/woocommerce-table-rate-shipping.php on line 164
[06-Jan-2025 09:24:57 UTC] PHP Deprecated: Creation of dynamic property GFACL_Plugin_Updater::$domain is deprecated in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/gravity-forms-advanced-conditional-logic/includes/class.GFACL_Plugin_Updater.php on line 78
[06-Jan-2025 09:24:57 UTC] PHP Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the

wc_catalog_restrictions

domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the

init

action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/functions.php on line 6114
[06-Jan-2025 09:24:57 UTC] PHP Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the

secupress

domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the

init

action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/functions.php on line 6114
[06-Jan-2025 09:24:57 UTC] PHP Warning: Array to string conversion in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/foobox-image-lightbox/compatibility/class-wprocket.php on line 20
[06-Jan-2025 09:24:57 UTC] PHP Warning: Array to string conversion in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/foobox-image-lightbox/compatibility/class-wprocket.php on line 20

janvier 7, 2025 à 2:09 pm #16569983

Bruno Kos
Supporter

Les langues: Anglais (English ) Allemand (Deutsch ) Français (Français )

Fuseau horaire: Europe/Zagreb (GMT+01:00)

Ok, based on this:

PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php:791
Stack trace:
#0 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php(809): WPSEO_WooCommerce_Schema->maybe_add_vat()
#1 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php(271): WPSEO_WooCommerce_Schema->add_unit_price_specifications()
#2 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php(215): WPSEO_WooCommerce_Schema->filter_offers()
#3 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/class-wp-hook.php(324): WPSEO_WooCommerce_Schema->change_product()
#4 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/plugin.php(205): WP_Hook->apply_filters()
#5 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/includes/class-wc-structured-data.php(455): apply_filters()
#6 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/class-wp-hook.php(324): WC_Structured_Data->generate_product_data()
#7 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters()
#8 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/plugin.php(517): WP_Hook->do_action()
#9 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/templates/content-single-product.php(60): do_action()
#10 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/template.php(812): require('...')
#11 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/includes/wc-core-functions.php(284): load_template()
#12 /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/woocommerce/templates/single-product.php(37): wc_get_template_part()
#13 /var/www/vhosts/1h2o3.com/httpdocs/wp-includes/template-loader.php(106): include('...')
#14 /var/www/vhosts/1h2o3.com/httpdocs/wp-blog-header.php(19): require_once('...')
#15 /var/www/vhosts/1h2o3.com/httpdocs/index.php(17): require('...')
#16 {main}
thrown in /var/www/vhosts/1h2o3.com/httpdocs/wp-content/plugins/wpseo-woocommerce/classes/woocommerce-schema.php on line 791

This seems possibly related to lien caché?

If you disable WPML, does lien caché work properly?

janvier 7, 2025 à 3:51 pm #16570684

nicolasM-36

Hi,
You're right. When I deactivate wpml, nothing change. When I deactivate yoast-woocommerce-seo, it works. Thanks!

janvier 8, 2025 à 7:02 am #16572163

Bruno Kos
Supporter

Les langues: Anglais (English ) Allemand (Deutsch ) Français (Français )

Fuseau horaire: Europe/Zagreb (GMT+01:00)

If you still need this plugin I suggest you reach their support.

Regards!