Как я могу получить размеры пользовательских размеров эскизов?

Предполагая, что у меня есть собственный размер эскиза, как определено следующим …

add_image_size( $name, $dim_x, $dim_y, true ); 

… как я могу получить определенные размеры изображения программно, используя только $ name?

Solutions Collecting From Web of "Как я могу получить размеры пользовательских размеров эскизов?"

Если вы посмотрите на источник функции, просто $_wp_additional_image_sizes аргументы в $_wp_additional_image_sizes global, с ключом по имени.

Насколько я помню, для него нет специальных функций API ( get_intermediate_image_sizes() вернет список имен, но не данные). Просто обращайтесь к глобальному и ищите нужные данные по ключу.

Благодаря ответу, полученному Rarst, я смог найти это в документации WordPress …

 function get_image_sizes( $name ) { global $_wp_additional_image_sizes; $sizes = array(); $get_intermediate_image_sizes = get_intermediate_image_sizes(); // Create the full array with sizes and crop info foreach( $get_intermediate_image_sizes as $_size ) { if ( in_array( $_size, array( 'thumbnail', 'medium', 'large' ) ) ) { $sizes[ $_size ]['width'] = get_option( $_size . '_size_w' ); $sizes[ $_size ]['height'] = get_option( $_size . '_size_h' ); $sizes[ $_size ]['crop'] = (bool) get_option( $_size . '_crop' ); } elseif ( isset( $_wp_additional_image_sizes[ $_size ] ) ) { $sizes[ $_size ] = array( 'width' => $_wp_additional_image_sizes[ $_size ]['width'], 'height' => $_wp_additional_image_sizes[ $_size ]['height'], 'crop' => $_wp_additional_image_sizes[ $_size ]['crop'] ); } } // Get only 1 size if found if ( $size ) { if( isset( $sizes[ $size ] ) ) { return $sizes[ $size ]; } else { return false; } } return $sizes; } 

 <?php var_dump(get_image_sizes('custom-size')); ?> 

 array(3) { ["width"] => int(250) ["height"] => int(250) ["crop"] => bool(true) }