wp_get_attachment_url()
Получает УРЛ вложения по переданному ID вложения. Получает ссылку на файл.
Под вложением подразумевается, любой файл добавленный в медиатеку: картинка, архив, видео и т.д. Не важно прикреплено вложение к посту или нет.
Функция не изменяет/очищает получаемый URL. Если вложение имеет неправильные символы в имени или URL, то следует очистить URL через rawurlencode(). Например, получим относительный путь файла:
$parsed = parse_url( wp_get_attachment_url( $attachment->ID ) ); $url = dirname( $parsed['path'] ) . '/' . rawurlencode( basename( $parsed['path'] ) );
Если нужно получить ссылку на страницу вложения, а не на само вложение, используйте get_attachment_link().
Хуки из функции
Возвращает
Строку|false
. УРЛ вложения или false, если УРЛ получить не удалось.
Использование
wp_get_attachment_url( $attachment_id );
- $attachment_id(число)
- ID вложения, УРЛ которого нужно получить.
По умолчанию: 0 (текущий пост)
Примеры
#1 Получим ссылку на вложение
Допустим мы добавили в медиатеку картинку и она получила ID 55, тогда ссылку на эту картинку мы может получить так:
$image_url = wp_get_attachment_url( 55 ); echo $image_url; // Вернет: http://example.com/wp-content/uploads/image.png
#2 Выведем картинку прикрепленную к посту
Допустим мы хотим вывести картинку прикрепленную к посту 5. Тогда сначала мы должны узнать ID вложения (прикрепленной картинки), а затем вывести картинку:
// Получим ID вложения поста 5 $id = 5; $attachment_image = get_children( array( 'numberposts' => 1, 'post_mime_type' => 'image', 'post_parent' => $id, 'post_type' => 'attachment' ) ); // вынимаем первую картинку из массива $attachment_image = array_shift($attachment_image); $img = '<img src="' . wp_get_attachment_url( $attachment_image->ID ) . '" alt="" />'; echo $img; // вернет: // <img src="http://example.com/wp-content/uploads/2011/07/robots.txt.jpg" alt="" />
#3 Вложение записи как фоновая картинка в цикле
if( have_posts() ){ while( have_posts() ){ the_post(); if( has_post_thumbnail() ){ $feat_image_url = wp_get_attachment_url( get_post_thumbnail_id() ); echo '<div style="background-image:url('. $feat_image_url .');"></div>'; } } }
Заметки
- Global. Строка. $pagenow The filename of the current screen.
Список изменений
С версии 2.1.0 | Введена. |