- Statut
- Résolu par l’auteur
- Extension/thème associé
- WPRentals
- Étiquettes de sujet
- Compatibility
Aperçu de l’anomalie
Dans le thème WPRentals, lorsque les utilisateurs changent la langue sur leur site, les factures peuvent ne pas s’afficher correctement dans toutes les langues.
Solution de contournement
Assurez-vous d’avoir une sauvegarde complète de votre site avant de continuer.
- Ouvrez le fichier …/wp-content/themes/wprentals/user_dashboard_invoices.php.
- Cherchez la ligne 48.
- Remplacez :
<?php $args = array( 'post_type' => 'wpestate_invoice', 'post_status' => 'publish', 'posts_per_page' => -1 , 'author' => $userID, 'meta_query' => array( array( 'key' => 'invoice_type', 'value' => esc_html__( 'Reservation fee','wprentals'), 'type' => 'char', 'compare' => 'LIKE' ) ), ); $prop_selection = new WP_Query($args); - Par :
<?php /* * >> WPML Workaround for compsupp-7254 */ // Original meta query $meta_query_value = esc_html__( 'Reservation fee','wprentals'); $meta_query_compare = 'LIKE'; // Modify meta_query if WPML is enabled if ( class_exists ('Sitepress') ) { $meta_query_value = []; $meta_query_value[] = esc_html__( 'Reservation fee','wprentals'); $wpml_current_language = apply_filters( 'wpml_current_language', NULL ); $wpml_languages = apply_filters( 'wpml_active_languages', NULL, 'orderby=id&order=desc' ); if ( ! empty( $wpml_languages ) ) { foreach( $wpml_languages as $language ) { // wpml_translate_single_string filter is not working because this string does not have a registered name // Because of that, we will need to switch languages (then restore it later) do_action( 'wpml_switch_language', $language['language_code'] ); $translated_string = esc_html__( 'Reservation fee','wprentals'); if ( ! in_array($translated_string, $meta_query_value) ) { $meta_query_value[] = $translated_string; } } // Restore original language do_action( 'wpml_switch_language', $wpml_current_language ); } $meta_query_compare = 'IN'; } $args = array( 'post_type' => 'wpestate_invoice', 'post_status' => 'publish', 'posts_per_page' => -1 , 'author' => $userID, 'meta_query' => array( array( 'key' => 'invoice_type', 'value' => $meta_query_value, 'type' => 'char', 'compare' => $meta_query_compare, ) ), ); $prop_selection = new WP_Query($args);