wp_get_attachment_url()
Получает УРЛ вложения по переданному ID вложения. Получает ссылку на файл.
Под вложением подразумевается, любой файл добавленный в медиатеку: картинка, архив, видео и т.д. Не важно прикреплено вложение к посту или нет.
Функция не очищает получаемый URL. Если вложение имеет неправильные символы в имени или URL, то следует очистить URL через rawurlencode().
Например, получим относительный путь файла:
$url = wp_get_attachment_url( $attachment->ID ); $path = parse_url( $url )['path']; $relative = dirname( $path ) . '/' . rawurlencode( basename( $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. Строка.
$pagenowThe filename of the current screen.
Список изменений
| С версии 2.1.0 | Введена. |