- Statut
- Ouvert
- Extension/thème associé
- RSVP Pro
- Étiquettes de sujet
- Compatibility
Aperçu de l’anomalie
Si vous utilisez l’extension RSVP Pro, vous pouvez rencontrer des problèmes où certaines chaînes de texte ne s’affichent pas traduites sur le front-end lorsque vous utilisez WPML. Ce problème survient généralement parce que la clé unique de la chaîne dépasse la limite de caractères définie par le système, ce qui entraîne une non-correspondance des clés et des chaînes non traduites.
Solution de contournement
Veuillez vous assurer de disposer d’une sauvegarde complète de votre site avant de continuer.
- Ouvrez le fichier app/public/wp-content/plugins/rsvp-pro-plugin/includes/rsvp-utils.inc.php
- Recherchez la ligne 1069.
- Remplacez :
function rsvp_pro_get_dynamic_translated_string( $key_name, $string, $event_id ) { $text = $string; if ( function_exists( 'pll__' ) ) { $text = pll__( $string ); } if ( has_filter( 'wpml_translate_string' ) ) { $event_name = rsvp_pro_get_event_name( $event_id ); $package = array( 'kind' => "RSVPPro - {$event_id}", 'name' => "rsvp-pro-plugin-{$event_id}", 'title' => "RSVP Pro Plugin - {$event_name}", ); $key_name = strtolower( $key_name ); $key_name = str_replace( ' ', '-', $key_name ); $text = apply_filters( 'wpml_translate_string', $string, $key_name, $package ); } return $text; } - Par :
function rsvp_pro_get_dynamic_translated_string( $key_name, $string, $event_id ) { $text = $string; if ( function_exists( 'pll__' ) ) { $text = pll__( $string ); } if ( has_filter( 'wpml_translate_string' ) ) { $event_name = rsvp_pro_get_event_name( $event_id ); $package = array( 'kind' => "RSVPPro - {$event_id}", 'name' => "rsvp-pro-plugin-{$event_id}", 'title' => "RSVP Pro Plugin - {$event_name}", ); $key_name = strtolower( $key_name ); $key_name = str_replace( ' ', '-', $key_name ); // WPML Workaround for compsupp-7503 $key_name = substr($key_name, 0, 160); $text = apply_filters( 'wpml_translate_string', $string, $key_name, $package ); } return $text; }