Hình ảnh đã tải lên không hiển thị trong Thư viện phương tiện nếu có các ký tự đặc biệt trong Từ khóa IPTC


8

Một số hình ảnh được tải lên WordPress không hiển thị trong Thư viện phương tiện. Các hình ảnh được tải lên và thậm chí được cắt theo kích thước đã xác định, có một mục trong Thư viện phương tiện, nhưng hình ảnh xem trước không hiển thị. Tôi thậm chí có thể sử dụng chúng như một hình ảnh đặc trưng và chúng hiển thị chính xác trên trang web của tôi.

Tôi đã có thể tìm ra nguyên nhân của vấn đề: Nếu có các ký tự đặc biệt (như tiếng Đức) trong trường "Từ khóa" IPTC trong JPG, thì sự cố này xảy ra. Ngay khi tôi sử dụng Exiftool để xóa trường "Từ khóa" khỏi JPG hiển thị các sự cố đã đề cập, tệp này hoạt động mà không gặp sự cố nào. Tôi có thể xác minh sự cố này trên ba cài đặt WordPress trên hai máy chủ web hoàn toàn khác nhau được lưu trữ bởi các công ty khác nhau. Phiên bản Wordpress là 4.4.1.

Tôi có xu hướng báo cáo đây là một lỗi WordPress. Nhưng trước khi làm như vậy, tôi muốn tìm hiểu thêm về vấn đề thực sự. Tôi có thể thấy rằng đối với tất cả các hình ảnh "xấu", không có _wp_attachment_metadatamục nào trong wp_postmetabảng.

Nếu tôi hack wp-admin/includes/image.phptập tin và thiết lập $meta['keywords'] = array();trong wp_read_image_metadata(), mọi thứ đều hoạt động tốt. Rõ ràng có một số mã sử dụng kết quả từ đó wp_read_image_metadata()để tạo một _wp_attachment_metadatahàng cho tệp đính kèm đó. Nhưng mã đó không được chèn vào đâu _wp_attachment_metadatanếu có vấn đề với các chuỗi được mã hóa sai $meta['keywords']?

Và có một cái móc để ghi đè vấn đề đó trong cài đặt của tôi không? Một cài đặt WordPress cho thấy vấn đề đó được sử dụng bởi một số biên tập viên cực kỳ khó hiểu về máy tính. Việc bảo họ sử dụng một phần mềm trên PC để loại bỏ các thẻ IPTC bị lỗi là điều không nên. Nhưng tôi cũng không muốn hack tập tin cốt lõi được đề cập trên một hệ thống trực tiếp.

Cập nhật: Đây là hai hình ảnh giống hệt nhau trong đó một hình ảnh cho thấy vấn đề, hình ảnh kia thì không. Sự khác biệt duy nhất là trong lĩnh vực "từ khóa", trong đó một từ có nội dung "ngọt", một từ khác "süß" (= từ tiếng Đức có nghĩa là ngọt ngào).

hình ảnh không hoạt động hình ảnh làm việc


Theo tôi nhớ, không có mã hóa tiêu chuẩn cho các trường IPTC, thực tế nó có thể là bất cứ thứ gì, điều này khá là lộn xộn. Tuy nhiên +1 cho câu hỏi. Bạn có thể cung cấp một hình ảnh mẫu để xác minh hành vi này?
David

2
Có vẻ như một lỗi WordPress với tôi. Tôi nghĩ rằng bạn an toàn để báo cáo như vậy.
MikeNGarrett

Tôi nghĩ rằng điều này có thể được sửa trong WordPress 4.4.2: core.trac.wordpress.org/ticket353316
JD

2
@ z80crew Bạn có thể sao chép điều này đang được sửa chữa như nhận xét ở trên không? Nếu vậy, vui lòng thêm câu trả lời và đánh dấu là đã được chấp nhận :)
Tim Malone

Đã sửa lỗi cốt lõi giải quyết điều này? Như @TimMopol nói, việc thêm và chấp nhận câu trả lời sẽ giúp chúng tôi giữ WPSE gọn gàng. Cảm ơn.
Andy Macaulay-Brook

Câu trả lời:


2

Tôi đã thử nghiệm điều này với một hình ảnh tôi tự tạo bằng Photoshop, nơi tôi đã chèn từ "Süss" vào mọi trường IPTC đáng suy nghĩ.

Tôi đã tải nó lên bản cài đặt WordPress 4.6, không cài đặt plugin xử lý ảnh. Quá trình tải lên diễn ra suôn sẻ, các hình thu nhỏ bên phải đã được tạo trong thư mục tải lên và trường chú thích được tải chính xác từ trường IPTC tương ứng.

Ngoài ra, hình thu nhỏ được hiển thị chính xác trong thư viện phương tiện.

Vì vậy, tôi muốn nói rằng đây thực sự là một lỗi đã được giải quyết kể từ đó.


0

Vấn đề dường như xảy ra với các ký tự đặc biệt ("â", trong trường hợp của tôi) trong tên tệp. Nó đã xảy ra với tôi ít nhất và tôi chưa bao giờ chỉnh sửa thông tin exif vì vậy nó không chỉ liên quan đến trường IPTC. Bây giờ nó hoạt động như mong đợi sau khi chỉnh sửa tên tệp, loại bỏ dấu.

Điều kỳ lạ nhất là, biết các vấn đề mã hóa thường gặp phải, tôi không thể tìm thấy bài đăng hay tài liệu nào nói rằng các ký tự đặc biệt không được chấp nhận hoặc nên tránh trong tên tệp thư viện wordpress, mặc dù nhìn thấy nhiều vấn đề mọi người gặp phải, không nên sử dụng bất kỳ vấn đề nào ... Hoặc yêu cầu wordpress làm việc trên đó. Có thể ít nhất chỉ thất bại khi tải lên nếu bất kỳ spechar nào được tìm thấy để thực thi tên sạch và không có rủi ro cho vấn đề tiếp theo.

Hy vọng điều này sẽ giúp được ai đó. Mã hóa ký tự luôn là một mớ hỗn độn trong khoa học máy tính ... thở dài ...

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.