WPML
Trạng thái
Đã giải quyết
Đã giải quyết trong
2.3.0

Tổng quan về lỗi

Đôi khi, bạn có thể gặp phải lỗi nghiêm trọng sau:

  • Fatal error: Uncaught exception ‘InvalidArgumentException’ with message ‘Argument ID must be numeric and greater than 0’

Sự cố này liên quan đến plugin WPML Media Translation. Lỗi này xảy ra nếu bạn có một hình ảnh không có dữ liệu đính kèm và chỉ là một liên kết tuyệt đối đến hình ảnh đó.

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

Sự cố này sẽ được khắc phục trong phiên bản phát hành tới. Như một giải pháp tạm thời, bạn có thể thực hiện theo các bước sau.


  1. Chỉnh sửa tệp class-wpml-media-image-translate.php nằm trong thư mục ../wpml-media-translation/classes/images-translation/.

  2. Sử dụng mã sau để thay thế hàm get_translated_image_by_url.
public function get_translated_image_by_url( $img_src, $source_language, $target_language ){

$attachment_id = $this->get_attachment_image_from_guid($img_src, $source_language);
if (!$attachment_id) {
$attachment_id = $this->get_attachment_image_from_meta($img_src, $source_language);
}
if ($attachment_id){
$size = $this->get_image_size_from_url($img_src, $attachment_id);

return $this->get_translated_image($attachment_id, $target_language, $size);
} else {
return $img_src;
};
}

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