Для замены кода стандартного вывода галереи изображений в functions.php добавляется вот такой код:
Код HTML:
add_filter('post_gallery', 'my_gallery_output', 10, 2);
function my_gallery_output( $output, $attr ){
$ids_arr = explode(',', $attr['ids']);
$ids_arr = array_map('trim', $ids_arr );
$pictures = get_posts( array(
'posts_per_page' => -1,
'post__in' => $ids_arr,
'post_type' => 'attachment',
'orderby' => 'post__in',
) );
if( ! $pictures ) return 'Запрос вернул пустой результат.';
// Вывод
$out = '<div class="popup-gallery">';
// Выводим каждую картинку из галереи
foreach( $pictures as $pic ){
$src = $pic->guid;
$t = esc_attr( $pic->post_title );
$title = ( $t && false === strpos($src, $t) ) ? $t : '';
$caption = ( $pic->post_excerpt != '' ? $pic->post_excerpt : $title );
$out .= '<div class="phototech">
<a href="'.esc_url($src).'" title="'.$title.'"><img src="'.$src.'" alt="'. $title .'" /></a>
</div>';
}
$out .= '</div>';
return $out;
}
При загрузке изображений создаются миниатюры следующих размеров
Как в строке
<a href="'.esc_url($src).'" title="'.$title.'"><img src="'.$src.'" alt="'. $title .'" /></a>
в качестве изображения вывести миниатюру среднего размера (640х480) или самую маленькую (300х225)?
Помогите пожалуйста!!!
добавлено через 4 часа 13 минут
Решение:
Код HTML:
$imagemini = wp_get_attachment_image_url($pic->ID, 'thumbnail');
...
<a href="'.esc_url($src).'" title="'.$title.'"><img src="'.$imagemini.'" alt="'. $title .'" /></a>