WPML
Trạng thái
Đang mở
Plugin/giao diện liên quan
RSVP Pro
Thẻ chủ đề
Compatibility

Tổng quan về lỗi

Nếu bạn đang sử dụng plugin RSVP Pro, bạn có thể gặp sự cố một số chuỗi không hiển thị bản dịch trên frontend khi sử dụng WPML. Vấn đề này thường phát sinh do khóa duy nhất của chuỗi vượt quá giới hạn ký tự do hệ thống thiết lập, dẫn đến các khóa không khớp và các chuỗi không được dịch.

Giải pháp tạm thời

Vui lòng đảm bảo có bản sao lưu toàn bộ trang web trước khi tiếp tục.


  • Mở tệp app/public/wp-content/plugins/rsvp-pro-plugin/includes/rsvp-utils.inc.php

  • Tìm dòng 1069.

  • Thay thế:
    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;
    }

  • Bằng:
    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;
    }

Tất cả các lỗi đã ghi nhận →