WordPress không thể tải lên hình ảnh lớn – maximum size is 2560 pixels
WordPress từ phiên bản WordPress 5.3 đã thêm chức năng xử lý ảnh dung lượng lớn (hiểu chính xác là size lớn ở đây được tính theo pixel ảnh), mục đích để tự động nén ảnh không phù hợp duyệt web. Nhưng đôi khi cần phải tải ảnh gốc lên. Nếu ảnh gốc rất lớn, quá trình tải lên có thể không thành công do không đủ tài nguyên máy chủ và các sự cố khác khi tạo ảnh nén có kích thước lớn. Đôi khi không hẳn là lỗi mà do server time out dẫn đến một số phản hồi ajax đáng lẽ nhận lại không nhận được, nhìn giao diện người dùng thì là lỗi nhưng thực chất là up hình lên.
Thông báo lỗi bạn sẽ nhìn thấy đó là
Giá trị 2560 có thể được sửa đổi bằng bộ lọc
Theo khuyến nghị của mình thì code để loại bỏ giới hạn kích thước ảnh này phù hợp với những website hoạt động trong lĩnh vực cần chia sẻ ảnh nét, độ phân giải cao như web studio, web album ảnh cưới,… Chúc các bạn thành công.
The server can’t process the image. This can happen if the server is busy or does not have enough resources to complete the task. Uploading a smaller image may help. Suggested maximum size is 2560 pixels.
I. Cách vô hiệu hóa tỷ lệ hình ảnh trong WordPress bằng PHP
Để vô hiệu hoá tính năng scaled ảnh bạn có thể thêm đoạn code phía dưới vào filefunctions.php
là vấn đề sẽ được giải quyết.
Để vô hiệu hoá tính năng scaled ảnh bạn có thể thêm đoạn code phía dưới vào file functions.php
là vấn đề sẽ được giải quyết.
1 |
add_filter( 'big_image_size_threshold', '__return_false' ); |
big_image_size_threshold
. Bộ lọc được định nghĩa tại dòng 283 của wp-admin/includes/image.php
II. Tăng ngưỡng tỷ lệ hình ảnh WordPress với PHP
Nếu bạn chỉ muốn tăng ngưỡng thay đổi kích thước từ 2560px lên độ phân giải cao hơn, bạn có thể sử dụng đoạn mã này. Trong ví dụ bên dưới, tôi đặt nó thành 4000px nhưng bạn có thể thay đổi 4000 thành bất kỳ giá trị nào mà trang web của bạn cần.
1 2 3 4 5 |
// Increase the image resize threshold to 4000px on the longest edge function ngoinhaweb_big_image_size_threshold( $threshold ) { return 4000; } add_filter( 'big_image_size_threshold', 'ngoinhaweb_big_image_size_threshold', 999, 1); |