Получить все изображения в галерее мультимедиа?
-
-
Вы имеете в виду все изображения во всей медиатеке (т. Е. На всем сайте)?Do you mean all images in the entire Media library (i.e., site-wide)?
- 0
- 2011-03-12
- ZaMoose
-
6 ответ
- голосов
-
- 2011-03-12
$query_images_args = array( 'post_type' => 'attachment', 'post_mime_type' => 'image', 'post_status' => 'inherit', 'posts_per_page' => - 1, ); $query_images = new WP_Query( $query_images_args ); $images = array(); foreach ( $query_images->posts as $image ) { $images[] = wp_get_attachment_url( $image->ID ); }
Все URL-адреса изображений теперь находятся в
$images
;$query_images_args = array( 'post_type' => 'attachment', 'post_mime_type' => 'image', 'post_status' => 'inherit', 'posts_per_page' => - 1, ); $query_images = new WP_Query( $query_images_args ); $images = array(); foreach ( $query_images->posts as $image ) { $images[] = wp_get_attachment_url( $image->ID ); }
All the images url are now in
$images
;-
ммм .. похоже,@somatic меня опередил.В отличие от его решения выше,мое будет получать только изображения.um.. looks like @somatic has beat me to it. Unlike his solution above, mine will only get images.
- 0
- 2011-03-12
- Azizur Rahman
-
очевидно,что наши методы схожи ... и азизур прав,добавлениеpost_mime_type к любому запросу сузит возвращаемые типы. Одна вещь,которую следует учитывать: руководство часто содержит полный URL-адрес изображения,но это не надежный источник.Он статичен,создается только один раз при создании сообщения и основан на текущем URL-адресе сайта и структуре папок мультимедиа.Но эта структура папок * и * домен могут измениться в какой-то момент,и тогдаguid больше не будет фактическим URL-адресом изображения,а просто записью того,что было,когда оно было создано ...obviously our methods are similar... and azizur is right, adding the 'post_mime_type' to either query will narrow the types returned. one thing to consider: the guid often does contain the full url to the image, but it is not a reliable source. It is static, generated only once when the post is created, and is built on the current site url and the media folder structure. But that folder structure *and* the domain could change at some point, and then the guid is not the actual image URL anymore, just a record of what it was when it was created...
- 2
- 2011-03-13
- somatic
-
Это ** НЕПРАВИЛЬНО **.Он не получает изображения из библиотеки мультимедиа.Он использует изображения внутри сообщений.Неиспользуемых изображений не найдено!This answer is **WRONG**. It does not get images from Media Library. It gets images used inside posts. Unused images are not found!
- 1
- 2011-10-10
- Christian
-
@Christian - это неправильно?Или я должен спросить «все еще» неправильно?Я понимаю,что комментирую почти 2 года спустя,но я попробовал это на WP 3.6 и получаю изображения,которые я только что добавил в медиатеку,не добавляя их ни в какие сообщения:/@Christian - is it wrong? Or should I ask 'still' wrong? I realise I'm commenting almost 2 years later, but I tried this out on WP 3.6 and I'm receiving images that I've just added to the media library without adding them to any posts :/
- 0
- 2013-08-16
- Chris Kempen
-
Может быть,глупый вопрос,но как теперь получить изображения разных размеров?Might be a stupid question, but how would I now get the different image sizes?
- 0
- 2016-07-17
- Frederik Witte
-
@FrederikWitte вы можете комбинировать [get_intermediate_image_sizes] (https://developer.wordpress.org/reference/functions/get_intermediate_image_sizes/) и [wp_get_attachment_image_src] (https://developer.wordpress.org/reference_functions_functions/wpвсе URL-адреса.@FrederikWitte you can combine [get_intermediate_image_sizes](https://developer.wordpress.org/reference/functions/get_intermediate_image_sizes/) and [wp_get_attachment_image_src](https://developer.wordpress.org/reference/functions/wp_get_attachment_image_src/) to get all the urls.
- 0
- 2016-07-17
- Azizur Rahman
-
yaaaaaaaaaaaaaaaaasyaaaaaaaaaaaaaaaaas
- 0
- 2018-02-22
- Zach Smith
-
- 2011-03-12
$media_query = new WP_Query( array( 'post_type' => 'attachment', 'post_status' => 'inherit', 'posts_per_page' => -1, ) ); $list = array(); foreach ($media_query->posts as $post) { $list[] = wp_get_attachment_url($post->ID); } // do something with $list here;
Запросить в БД все элементы медиатеки (а не только те,которые прикреплены к сообщениям),получить их URL-адреса,выгрузить их все в массив
$list
.$media_query = new WP_Query( array( 'post_type' => 'attachment', 'post_status' => 'inherit', 'posts_per_page' => -1, ) ); $list = array(); foreach ($media_query->posts as $post) { $list[] = wp_get_attachment_url($post->ID); } // do something with $list here;
Query the db for all media library items (not just ones attached to posts), grab their url, dump them all in
$list
array. -
- 2011-03-12
<?php $attachments = get_children( array('post_parent' => get_the_ID(), 'post_type' => 'attachment', 'post_mime_type' =>'image') ); foreach ( $attachments as $attachment_id => $attachment ) { echo wp_get_attachment_image( $attachment_id, 'medium' ); } ?>
При этом извлекаются все вложения для сообщения/страницы. Прикрепите к сообщению больше изображений,и оно будет указано
<?php $attachments = get_children( array('post_parent' => get_the_ID(), 'post_type' => 'attachment', 'post_mime_type' =>'image') ); foreach ( $attachments as $attachment_id => $attachment ) { echo wp_get_attachment_image( $attachment_id, 'medium' ); } ?>
This pulls all attachments for a post/page. Attach more images to a post, and it will be listed
-
- 2012-02-27
Хорошо,вы использовали этот код для отображения ВСЕХ изображений в медиа-библиотеке!
$args = array( 'post_type' => 'attachment', 'post_status' => 'published', 'posts_per_page' =>25, 'post_parent' => 210, // Post-> ID; 'numberposts' => null, ); $attachments = get_posts($args); $post_count = count ($attachments); if ($attachments) { foreach ($attachments as $attachment) { echo "<div class=\"post photo col3\">"; $url = get_attachment_link($attachment->ID);// extraigo la _posturl del attachmnet $img = wp_get_attachment_url($attachment->ID); $title = get_the_title($attachment->post_parent);//extraigo titulo echo '<a href="'.$url.'"><img title="'.$title.'" src="'.get_bloginfo('template_url').'/timthumb.php?src='.$img.'&w=350&h=500&zc=3"></a>'; echo "</div>"; } }
и если вы знаете метод отображения нумерации страниц,ответьте.
ok y used this code for show ALL images in media Library!
$args = array( 'post_type' => 'attachment', 'post_status' => 'published', 'posts_per_page' =>25, 'post_parent' => 210, // Post-> ID; 'numberposts' => null, ); $attachments = get_posts($args); $post_count = count ($attachments); if ($attachments) { foreach ($attachments as $attachment) { echo "<div class=\"post photo col3\">"; $url = get_attachment_link($attachment->ID);// extraigo la _posturl del attachmnet $img = wp_get_attachment_url($attachment->ID); $title = get_the_title($attachment->post_parent);//extraigo titulo echo '<a href="'.$url.'"><img title="'.$title.'" src="'.get_bloginfo('template_url').'/timthumb.php?src='.$img.'&w=350&h=500&zc=3"></a>'; echo "</div>"; } }
and if you know method for show pagination, please answer.
-
- 2011-03-12
Похоже,что он давно не обновлялся,но MediaПлагин Library Gallery может стать хорошим примером для начала.
It looks as though it hasn't been updated in a while, but the Media Library Gallery plugin might be a good example to start looking at.
-
- 2016-01-20
Это всего лишь сокращенная версия этого ответа с использованием
get_posts()
иarray_map()
.$image_ids = get_posts( array( 'post_type' => 'attachment', 'post_mime_type' => 'image', 'post_status' => 'inherit', 'posts_per_page' => - 1, 'fields' => 'ids', ) ); $images = array_map( "wp_get_attachment_url", $image_ids );
This is just a shorter version of this answer using
get_posts()
andarray_map()
.$image_ids = get_posts( array( 'post_type' => 'attachment', 'post_mime_type' => 'image', 'post_status' => 'inherit', 'posts_per_page' => - 1, 'fields' => 'ids', ) ); $images = array_map( "wp_get_attachment_url", $image_ids );
Есть ли способ получить URL-адреса ВСЕХ изображений в галерее мультимедиа?
Я думаю,что это был бы простой способ для веб-сайта иметь страницу изображений,которая просто извлекает все изображения из галереи мультимедиа,при условии,что это будет необходимо только в определенных сценариях.
Мне не нужны инструкции о том,как создать страницу изображений,только как получить все URL-адреса изображений.Спасибо!