Last active
March 30, 2021 22:26
-
-
Save rotisoft/487ffcc24aafcca12c7f1c4528e450bb to your computer and use it in GitHub Desktop.
WordPress WebP upload / feltoltes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Sets the extension and mime type for .webp files. | |
* @param array $wp_check_filetype_and_ext File data array containing 'ext', 'type', and * 'proper_filename' keys. | |
* @param string $file Full path to the file. | |
* @param string $filename The name of the file (may differ from $file due to | |
* $file being in a tmp directory). | |
* @param array $mimes Key is the file extension with value as the mime type. | |
*/ | |
add_filter( 'wp_check_filetype_and_ext', 'wpse_file_and_ext_webp', 10, 4 ); | |
function wpse_file_and_ext_webp( $types, $file, $filename, $mimes ) { | |
if ( false !== strpos( $filename, '.webp' ) ) { $types['ext'] = 'webp'; $types['type'] = 'image/webp'; } | |
return $types; | |
} | |
/** | |
* Adds webp filetype to allowed mimes | |
* @see https://codex.WordPress.org/Plugin_API/Filter_Reference/upload_mimes | |
* @param array $mimes Mime types keyed by the file extension regex corresponding to | |
* those types. 'swf' and 'exe' removed from full list. 'htm|html' also | |
* removed depending on '$user' capabilities. * @return array | |
*/ | |
add_filter( 'upload_mimes', 'wpse_mime_types_webp' ); | |
function wpse_mime_types_webp( $mimes ) { | |
$mimes['webp'] = 'image/webp'; return $mimes; | |
} | |
/** | |
* Source: Dave Romsey (https://wordpress.stackexchange.com/questions/323221/allowing-webp-uploads) | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment