- Trạng thái
- Đang mở
- Plugin/giao diện liên quan
- Events Manager
- Thẻ chủ đề
- Compatibility
Tổng quan về lỗi
Nếu bạn đang sử dụng plugin Events Manager, bạn có thể gặp phải sự cố trong đó chi tiết vé cho các sự kiện định kỳ không hiển thị bản dịch ở các ngôn ngữ phụ.
Giải pháp tạm thời
Đảm bảo sao lưu toàn bộ trang web của bạn trước khi tiếp tục.
- Mở tệp …/wp-content/plugins/events-manager/classes/em-ticket.php.
- Tìm dòng 150.
- Thay thế:
function __get( $var ){ if( $var == 'name' || $var == 'ticket_name' || $var == 'description' || $var == 'ticket_description' ){ $prop = $var == 'name' || $var == 'description' ? 'ticket_'.$var : $var; if( EM_ML::$is_ml && !$this->ticket_parent && !empty($this->ticket_meta['langs'][EM_ML::$current_language][$prop]) ){ return $this->ticket_meta['langs'][EM_ML::$current_language][$prop]; }else{ return $this->{$prop}; } }elseif( $var == 'event' ){ - Bằng:
function __get( $var ){ if( $var == 'name' || $var == 'ticket_name' || $var == 'description' || $var == 'ticket_description' ){ $prop = $var == 'name' || $var == 'description' ? 'ticket_'.$var : $var; // WPML Workaround for compsupp-7315 if ( class_exists('Sitepress') && isset( $this->ticket_id ) && isset( $this->event->post_id ) ) { $string_name = 'ticket_description_'.$this->ticket_id; $textdomain = 'event-tickets-'.$this->event->post_id ; $this->{$prop} = apply_filters('wpml_translate_single_string', $this->{$prop} , $textdomain, $string_name); } else if ( $prop == 'ticket_name' ) { $string_name = 'Ticket Name:'.substr($this->{$prop}, 0, 20); $textdomain = 'events-manager' ; if ( apply_filters('wpml_default_language', NULL ) == apply_filters( 'wpml_current_language', NULL )) { do_action( 'wpml_register_single_string', $textdomain, $string_name, $this->{$prop} ); } $this->{$prop} = apply_filters('wpml_translate_single_string', $this->{$prop} , $textdomain, $string_name); } if( EM_ML::$is_ml && !$this->ticket_parent && !empty($this->ticket_meta['langs'][EM_ML::$current_language][$prop]) ){ $check = $this->ticket_meta['langs'][EM_ML::$current_language][$prop]; return $this->ticket_meta['langs'][EM_ML::$current_language][$prop]; }else{ return $this->{$prop}; } }elseif( $var == 'event' ){ - Truy cập trang đang gặp sự cố bằng ngôn ngữ gốc.
- Đi tới trang WPML > Dịch chuỗi, tìm kiếm các chuỗi và dịch chúng.