- Status
- Offen
- Gemeldet für
- Gravity Forms Multilingual 1.7.2
- Zugehöriges Plugin/Theme
- Gravity Forms
- Themen-Tags
- Compatibility
Übersicht über das Problem
Wenn Sie das Plugin Gravity Forms Polls Add-On verwenden, kann es zu Problemen kommen, bei denen die Umfrageergebnisse keine übersetzten Inhalte anzeigen, wenn sie in einer anderen Sprache als der Standardsprache aufgerufen werden. Dieses Problem tritt hauptsächlich auf, wenn der Shortcode-Parameter auf mode="results" gesetzt ist. Die Übersetzungen funktionieren korrekt, wenn der Modus auf mode=”poll” gesetzt ist.
Problemumgehung
Bitte erstellen Sie ein vollständiges Backup Ihrer Website, bevor Sie fortfahren.
- Öffnen Sie die Datei …/wp-content/plugins/gravityformspolls/class-gf-polls.php.
- Suchen Sie nach Zeile 2140.
- Direkt vor:
$gpoll_output['summary'] .= $field['field_label'] . '</div></div>';
- Fügen Sie diesen Code hinzu:
// WPML Workaround for compsupp-7316 - Part I if ( class_exists('Sitepress') ) { $wpml_question = $field['field_label']; $textdomain = 'WordPress'; $string_name = 'WPML Workaround : '.substr($wpml_question, 0, 20); $wpml_default_lang = apply_filters('wpml_default_language', NULL ); $wpml_current_lang = apply_filters( 'wpml_current_language', NULL ); if ($wpml_default_lang == $wpml_current_lang ) { do_action( 'wpml_register_single_string', $textdomain, $string_name, $wpml_question ); } // Apply the translation to the string $wpml_question = apply_filters('wpml_translate_single_string', $wpml_question , $textdomain, $string_name); $field['field_label'] = $wpml_question; // Replace the title } - Suchen Sie dann nach Zeile 2184.
- Ersetzen Sie:
$gpoll_output['summary'] .= sprintf( "<div class='gpoll_choice_wrapper'><div class='gfield_description gpoll_choice_label%s'>%s</div>", $selected_class, rgar( $input, 'label' ) );
- Durch:
// WPML Workaround for compsupp-7316 - Part II if ( class_exists('Sitepress') ) { $string = rgar( $input, 'label' ); $textdomain = 'WordPress'; $string_name = 'WPML Workaround : '.substr($string, 0, 20); $wpml_default_lang = apply_filters('wpml_default_language', NULL ); $wpml_current_lang = apply_filters( 'wpml_current_language', NULL ); if ($wpml_default_lang == $wpml_current_lang ) { do_action( 'wpml_register_single_string', $textdomain, $string_name, $string ); } // Apply the translation to the string $string = apply_filters('wpml_translate_single_string', $string , $textdomain, $string_name); $wpml_poll_label = $string; // Replace the title } $gpoll_output['summary'] .= sprintf( "<div class='gpoll_choice_wrapper'><div class='gfield_description gpoll_choice_label%s'>%s</div>", $selected_class, $wpml_poll_label );