Почему этот эскиз жесткого кода обрезки не работает?

Я пытаюсь показать уменьшенное изображение как вложение в фиде. Поэтому я использую следующий код.

function add_images_to_rss($var) { global $post; if(has_post_thumbnail($post->ID)) { $tid = get_post_thumbnail_id( $post->ID); //$thumb = wp_get_attachment_image_src($tid, 'large'); $thumb = wp_get_attachment_image_src($tid, '100x100'); $thumb_meta = wp_get_attachment_metadata($tid); $up = wp_upload_dir(); print '<enclosure type="'.get_post_mime_type($tid).'" length="'.filesize($up['basedir'].'/'.$thumb_meta['file']).'" url="'.$thumb[0].'" />'; } } add_action('rss2_item','add_images_to_rss'); 

Но он показывает изображения большего размера как вложение. Предположим, что вы показываете только вложения размером 100×100. Что я делаю неправильно?

Как я могу показать attxhemnts размера изображения 100×100 в этом фиде?

сайт: http://www.supgower.com/feed/

Вы используете параметр размера wp_get_attachment_image_src в неправильном формате. Этот параметр может быть:

  • Строка: ключевое слово размера изображения; эскиз, средний, большой, полный или любой другой пользовательский размер, ранее зарегистрированный).
  • Массив из 2 элементов, представляющий ширину и высоту; например, array( 100, 100 ) .

Итак, вы должны изменить это:

 $thumb = wp_get_attachment_image_src($tid, '100x100'); 

С:

 $thumb = wp_get_attachment_image_src( $tid, array(100,100) ); 

И это также должно работать для размера эскизов:

 $thumb = wp_get_attachment_image_src( $tid, 'thumbnail' );