Получение картинок прикрепленных к посту в WORDPRESS
29.01.10 / Категории Wordpress, php | Оставить комментарийИтак как же получить картинки поста в Wordpress. Это касается не только картинок но и к примеру прикрепленных flv файлов и других документов.
В общем получается все это следующим образом.
<?php $images = get_children( array( 'post_parent' => $postID, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image' ) ); if($images) { foreach ( $images as $id => $image ) { $img = wp_get_attachment_url( $image->ID ); echo '<img src="'.$img.'" alt="" />'; } } ?>
Этот код получает и выводит все изображения прикрепленные к посту с id = $postID
Для того чтобы отсортировать изображения в соответствии с menu_order (очередь) значением, которое вы можете менять в окне Gallery(Галерея) поста.
Нужно определить и выполнить после получения изображений функцию.
<?php function menuOrderCompare($a, $b) { if ( $a->menu_order === $b->menu_order) { return 0; } return ( $a->menu_order < $b->menu_order) ? -1 : 1; } ?>
Вот код получения изображений с сортировкой по полю menu_order.
<?php function menuOrderCompare($a, $b) { if ( $a->menu_order === $b->menu_order){ return 0; } return ( $a->menu_order < $b->menu_order) ? -1 : 1; } $images = get_children( array( 'post_parent' => $postID, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image' ) ); if($images) { usort($images, "menuOrderCompare"); foreach ( $images as $id => $image ) { $img = wp_get_attachment_url( $image->ID ); echo '<img src="'.$img.'" alt="" />'; } } ?>
Замените ‘post_mime_type’ => ‘image’ на ‘post_mime_type’ => ‘video’ и вы получите прикрепленные ролики.
Кстати flv ролик может иметь как video mime type, так и application mime type.


