WPML
סטטוס
פתוח
תוסף/ערכת עיצוב קשורים
RSVP Pro
תגיות נושא
Compatibility

סקירה כללית של התקלה

אם אתה משתמש בתוסף RSVP Pro, ייתכן שתיתקל בבעיות שבהן מחרוזות מסוימות אינן מוצגות כמתורגמות בחזית האתר בעת השימוש ב־WPML. בעיה זו נובעת בדרך כלל מכך שהמפתח הייחודי של המחרוזת חורג ממגבלת התווים שהוגדרה על ידי המערכת, מה שמוביל למפתחות לא תואמים ולמחרוזות לא מתורגמות.

פתרון עוקף

אנא ודא שיש לך גיבוי מלא של האתר לפני שתמשיך.


  • פתח את הקובץ app/public/wp-content/plugins/rsvp-pro-plugin/includes/rsvp-utils.inc.php

  • חפש את שורה 1069.

  • החלף את:
    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;
    }

  • ב:
    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;
    }

כל התקלות הידועות →