WPML
Statut
Résolu
Extension/thème associé
WooCommerce Subscriptions
Étiquettes de sujet
Compatibility

Aperçu de l’anomalie

Si vous utilisez WooCommerce Subscriptions avec une configuration de langue par domaine de WPML, vous pourriez rencontrer un avis vous avertissant à tort d’un éventuel site de préproduction ou dupliqué. Ce problème peut survenir lorsque les paiements automatiques sont activés sur un domaine, puis vérifiés sur un autre domaine au sein de la même configuration.

Il semble que ce site ait été déplacé ou qu’il s’agisse d’un site dupliqué. WooCommerce Subscriptions a désactivé les paiements automatiques et les e-mails liés aux abonnements sur ce site afin d’éviter les paiements en double depuis un environnement de préproduction ou de test. WooCommerce Subscriptions considère https://www.domain.com comme l’URL du site. En savoir plus ».

Solution de contournement

Assurez-vous d’avoir une sauvegarde complète de votre site avant de continuer.


  • Ouvrez le fichier functions.php de votre thème.

  • Ajoutez l’extrait suivant :
    // WPML Workaround for compsupp-7065
    function wpml_compsupp7065_filter_wc_subscriptions_site_url( $url, $path, $scheme, $blog_id ) {
        
    	// Define your list of allowed URLs - DO NOT add staging versions here
        $allowed_url_list = array(
            'https://www.domain.com',
            'https://www.domain.nl',
            // Add more URLs as needed
        );
    
        // Get the current WordPress home URL
        $current_home_url = home_url();
    	  $current_home_url = parse_url($url);
    	  $current_home_url = $current_home_url['host'];
    	
        // Check if the current home URL is in the list
        foreach ( $allowed_url_list as $listed_url ) {
    		
            if ( str_contains( $listed_url, $current_home_url) ) {
    			      // Replace the $url variable with the listed URL
                $url = $listed_url;
                add_filter('woocommerce_subscriptions_is_duplicate_site', '__return_false');
                break; 
            }
        }
    	
        return $url;
    }
    
    add_filter( 'wc_subscriptions_site_url', 'wpml_compsupp7065_filter_wc_subscriptions_site_url', 10, 4 );


  • Modifiez-le et ajoutez les domaines de l’URL de votre site à la place de l’exemple.

Toutes les anomalies connues →