WPML
Statut
Résolu
Signalé pour
Gravity Forms Multilingual 1.7.2
Résolu dans
Gravity Forms Multilingual 1.8.0
Extension/thème associé
Gravity Forms
Étiquettes de sujet
Compatibility

Aperçu de l’anomalie

Les utilisateurs de l’extension Gravity Forms peuvent rencontrer un problème où le texte du bouton Continuer dans le module complémentaire Conversational Forms n’est pas traduisible via WPML.

Solution de contournement

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


  • Ouvrez le fichier …/wp-content/plugins/gravityformsconversationalforms/includes/theme-layers/layers/views/class-conversational-field-markup.php

  • Recherchez la ligne 67.

  • Remplacez :
    private function get_field_footer( $form_id, $field ) {
    	$continue_button_settings = $this->get_setting( 'continue_button_text', $form_id );
    
    	/* Translators: ⏎: Symbol for enter key on keyboard. */
    	$field_nav_text = esc_html__( 'Press Enter', 'gravityformsconversationalforms' );
    
    	return '<div class="gform-conversational__field-footer"><div class="gform-conversational__field-nav"><button type="button" class="gform-conversational__nav-button gform-conversational__nav-button--next-field_' . $form_id . '_' . $field['id'] .' gform-button active" data-js="gform-conversational-nav-field-next">' . $continue_button_settings . '</button>' .
    		'<span class="gform-conversational__field-nav-helper-text">' . $field_nav_text . '<span class="gform-conversational__field-nav-helper-icon gform-orbital-icon gform-orbital-icon--arrow-back" aria-hidden="true"></span></span></div></div>';
    }

  • Par :
    private function get_field_footer( $form_id, $field ) {
    	$continue_button_settings = $this->get_setting( 'continue_button_text', $form_id );
    
    	// WPMl Workaround for compsupp-7398
    	if ( class_exists('Sitepress') ) {
    
    		$textdomain = 'gravityforms';
    		$string_name = 'Gravity Forms: '.substr($string, 0, 20);
    	
    		if ( apply_filters('wpml_default_language', NULL ) == apply_filters( 'wpml_current_language', NULL )) {
    			do_action( 'wpml_register_single_string', $textdomain, $string_name, $continue_button_settings);
    		}	
    		// Apply the translation to the string
    		$continue_button_settings = apply_filters('wpml_translate_single_string', $continue_button_settings , $textdomain, $string_name);
    	}
    	
    
    	/* Translators: &#9166;: Symbol for enter key on keyboard. */
    	$field_nav_text = esc_html__( 'Press Enter', 'gravityformsconversationalforms' );
    
    	return '<div class="gform-conversational__field-footer"><div class="gform-conversational__field-nav"><button type="button" class="gform-conversational__nav-button gform-conversational__nav-button--next-field_' . $form_id . '_' . $field['id'] .' gform-button active" data-js="gform-conversational-nav-field-next">' . $continue_button_settings . '</button>' .
    		'<span class="gform-conversational__field-nav-helper-text">' . $field_nav_text . '<span class="gform-conversational__field-nav-helper-icon gform-orbital-icon gform-orbital-icon--arrow-back" aria-hidden="true"></span></span></div></div>';
    }

  • Visitez la page présentant le problème dans la langue d’origine. Cela enregistrera une nouvelle chaîne de texte.

  • Allez dans WPML > Traduction de chaînes et traduisez la chaîne de texte. Elle devrait se trouver sous le domaine de texte gravityforms.

Toutes les anomalies connues →