> CMS 튜토리얼 > Word누르다 > WordPress에서 WebP 형식 이미지를 지원하도록 만드는 방법

WordPress에서 WebP 형식 이미지를 지원하도록 만드는 방법

藏色散人
풀어 주다: 2020-11-05 16:16:41
앞으로
3030명이 탐색했습니다.

다음 WordPress Tutorial 칼럼에서는 WordPress 지원 WebP 형식 이미지를 만드는 방법을 소개합니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!

WordPress에서 WebP 형식 이미지를 지원하도록 만드는 방법

WordPress는 기본적으로 WebP 형식 이미지 업로드를 지원하지 않습니다. 업로드 문제를 해결하려면 현재 테마 함수 템플릿 function.php에 다음 코드를 추가하세요.

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');
로그인 후 복사

WebP 형식으로 이미지를 업로드할 수는 있지만 미디어 목록에서 썸네일을 볼 수는 없습니다. 이는 WordPress에서 wp_generate_attachment_metadata() 함수를 사용하여 이미지 데이터를 생성할 때 파일이 이미지인지 여부를 확인하기 위해 file_is_displayable_image() 함수를 사용하기 때문입니다. , WebP 이미지 판단 결과 '아니요'로 판단되어 이미지 데이터 저장 작업이 중단됩니다.

이 기능은 다음 위치에 있습니다: wp-admin/includes/image.php 확장

해결책은 테마의 function.php에 다음 코드를 추가하는 것입니다:

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);
로그인 후 복사

텍스트의 그림은 현재 Qiniu이지만 텍스트의 그림은 webp 사진입니다. Zaipai Cloud, Alibaba Cloud oss, Tencent Cloud cos 등은 모두 WebP를 지원하지만, WeChat의 IOS 버전을 포함하여 Apple 기기에서는 webp 이미지를 지원하지 않는 것으로 나타났습니다. 이는 WordPress가 webp를 지원하지 않는 이유일 수도 있습니다. 이미지.

위 내용은 WordPress에서 WebP 형식 이미지를 지원하도록 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:zmingcx.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿