Heim > Artikel > CMS-Tutorial > So stellen Sie sicher, dass WordPress Bilder im WebP-Format unterstützt
In der folgenden Kolumne „WordPress-Tutorial“ erfahren Sie, wie Sie dafür sorgen, dass WordPress Bilder im WebP-Format unterstützt. Ich hoffe, dass es für Freunde in Not hilfreich ist!
WordPress unterstützt das Hochladen von Bildern im WebP-Format standardmäßig nicht. Fügen Sie den folgenden Code zur aktuellen Theme-Funktionsvorlage „functions.php“ hinzu, um das Upload-Problem zu lösen.function webp_filter_mime_types( $array ) { $array['webp'] = 'image/webp'; return $array; } add_filter( 'mime_types', 'webp_filter_mime_types', 10, 1 );
function webp_upload_mimes($existing_mimes) { $existing_mimes['webp'] = 'image/webp'; return $existing_mimes; } add_filter('mime_types', 'webp_upload_mimes');Obwohl Sie Bilder im WebP-Format hochladen können, können Sie in der Medienliste keine Miniaturansichten sehen. Dies liegt daran, dass WordPress die Funktion file_is_displayable_image() verwendet, um zu bestimmen, ob die Datei ein Bild ist, wenn Bilddaten mit der Funktion wp_generate_attachment_metadata() generiert werden. Das Ergebnis der Beurteilung des WebP-Bildes lautet „Nein“, sodass der Vorgang zum Speichern der Bilddaten unterbrochen wird.
Diese Funktion befindet sich unter: wp-admin/includes/image.php Erweitern
Die Lösung besteht darin, den folgenden Code in die Funktionen.php des Themas einzufügen:
function webp_file_is_displayable_image($result, $path) { $info = @getimagesize( $path ); if($info['mime'] == 'image/webp') { $result = true; } return $result; } add_filter( 'file_is_displayable_image', 'webp_file_is_displayable_image', 10, 2 );
function webp_is_displayable($result, $path) { if ($result === false) { $displayable_image_types = array( IMAGETYPE_WEBP ); $info = @getimagesize( $path ); if (empty($info)) { $result = false; } elseif (!in_array($info[2], $displayable_image_types)) { $result = false; } else { $result = true; } } return $result; } add_filter('file_is_displayable_image', 'webp_is_displayable', 10, 2);
Die Abbildungen im Text sind Webp-Bilder, obwohl derzeit Qiniu und Zaipai Cloud, Alibaba Cloud oss, Tencent Cloud cos usw. unterstützen alle WebP, es wurde jedoch festgestellt, dass Apple-Geräte keine WebP-Bilder unterstützen, einschließlich der IOS-Version von WeChat. Dies kann auch der Grund sein, warum WordPress WebP nicht unterstützt Bilder.
Das obige ist der detaillierte Inhalt vonSo stellen Sie sicher, dass WordPress Bilder im WebP-Format unterstützt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!