WPML
Statut
Résolu par l’auteur
Extension/thème associé
Houzez
Étiquettes de sujet
Compatibility

Aperçu de l’anomalie

Lorsque vous utilisez le thème Houzez, vous pourriez rencontrer le problème suivant : les propriétés traduites ne conservent pas leur attribution d’agent, ce qui fait que les profils d’agent traduits affichent zéro propriété. Cela se produit car le champ de l’agent (fave_agents) n’est pas correctement lié à l’article de l’agent traduit.

Solution de contournement

Veuillez vous assurer de disposer d’une sauvegarde complète de votre site avant de continuer.

1. Définissez la préférence de traduction


  • Allez dans « WPML > Paramètres > Traduction des champs personnalisés »

  • Définissez la préférence de traduction du champ personnalisé fave_agents sur COPIER

2. Ajustez la gestion de l’ID de l’agent dans les fonctions du thème


  • Ouvrez le fichier …/wp-content/themes/houzez/framework/functions/property_functions.php.

  • Cherchez la ligne 3663 (fonction houzez_get_property_agent).

  • Remplacez :
    $agent_id = intval( $agent );
            


  • Par :
    $agent_id = intval( $agent );
    // WPML Workaround for compsupp-7949 
    $agent_id = apply_filters( 'wpml_object_id', $agent_id, 'houzez_agent', TRUE ); 
            

  • Cherchez la ligne 3738 (fonction houzez20_get_property_agent).
  • Remplacez :
    $agent_id = intval( $agent_id );
            
  • Par :
    $agent_id = intval( $agent_id );
    // WPML Workaround for compsupp-7949 
    $agent_id = apply_filters( 'wpml_object_id', $agent_id, 'houzez_agent', TRUE ); 
            

3. Assurez-vous que le profil de l’agent liste les propriétés correctes

  • Ouvrez le fichier …/wp-content/themes/houzez/framework/classes/Houzez_Query.php.
  • Cherchez la ligne 718 (fonction loop_agent_properties).
  • Remplacez :
    $agent_id = get_the_ID();
            
  • Par :
    $agent_id = get_the_ID();
    // WPML Workaround for compsupp-7949 
    $default_lang = apply_filters('wpml_default_language', NULL );  
    $agent_id = apply_filters( 'wpml_object_id', $agent_id, 'houzez_agent', TRUE,  $default_lang ); 
            

Toutes les anomalies connues →