일부 사용자 정의 게시물 유형에 대해 기본 이미지 크기 생성을 비활성화하는 방법은 무엇입니까?


12

'썸네일', '중간'및 '큰'크기가 필요하지 않은 맞춤 게시물 유형을 사용했습니다. 이 크기를 비활성화하고 각 사용자 정의 게시물 유형에 필요한 이미지 크기를 설정할 수있는 기능 또는 플러그인을 만들어야합니다.

첫 번째 단계는 wp-includes / media.php에서 get_intermediate_image_sizes 함수를 연결하는 것입니다. 이 코드를 functions.php에 추가했지만 작동하지 않습니다. (

add_filter('get_intermediate_image_sizes', 'get_intermediate_image_sizes_fixed');
function get_intermediate_image_sizes_fixed() {
    global $_wp_additional_image_sizes;
    //$image_sizes = array('thumbnail', 'medium', 'large'); // Standard sizes
    $image_sizes = array();
    if ( isset( $_wp_additional_image_sizes ) && count( $_wp_additional_image_sizes ) )
        $image_sizes = array_merge( $image_sizes, array_keys( $_wp_additional_image_sizes ) );
return apply_filters( 'intermediate_image_sizes', $image_sizes );
}   

UPD : media.php에서이 줄을 편집하는 중입니다. 변경 후 생성되지 않는 기본 유형

$image_sizes = array('thumbnail', 'medium', 'large');

그러나 어떻게 내 후크를 작동 시키는가?


1
너무 이것에 대한 답변을 부탁합니다
urok93

2
그 필터를 사용하는 방법이 아닙니다. 기본 크기를 지우려면 우선 순위가 매우 낮은 것을 추가하고 빈 배열을 반환하면됩니다. 그러나 모든 게시물 유형에 영향을 미치므로 문제가 해결되지 않습니다. 현재 WP 버전에서 원하는 것을 할 수있는 방법이 없다고 생각합니다. 함수 $attachment_id내에서 필터에 인수 를 추가하도록 WP 개발자에게 요청하십시오 . 당신이 당신의 후크 내부의 포스트 유형을 확인하실 수 있습니다 그 방법
onetrickpony

내 단계는 실험 일뿐이지만 완전한 해결책은 아닙니다. 필터를 올바르게 사용하려면 어떻게해야합니까? 추신 : 링크 주셔서 감사합니다 ..
Bohdan Hdal

지금 가능하게하는 WP에 대한 변경 사항이 있습니까?
Drivingralle

변화가 없다. 여전히 같은 문제입니다.
Bohdan Hdal

답변:


7

현재 귀하가 가지고있는 유일한 솔루션은 모든 중간 이미지 크기를 비활성화하는 것입니다.

add_filter( 'intermediate_image_sizes', '__return_empty_array', 99 );

그런 다음 게시물 유형에 따라 'wp_generate_attachment_metadata'에 연결하여 수동으로 생성합니다. 여기서 첨부 파일 ID (및 상위 게시물)에 액세스 할 수 있습니다.

function do_your_stuff( $data, $attachment_id ) {
  // generate intermediate images

  return $data;
}

add_filter( 'wp_generate_attachment_metadata', 'do_your_stuff', 10, 2 );

마지막 add_filter에 전달하는 10 & 2 매개 변수는 무엇입니까?
Luke

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.