wp_get_attachment_link()
Получает ссылку на файл вложения или WP страницу вложения. Возвращает <a> тег.
-
Ссылка будет показана, если вложение или страница содержат:
- Прикрепленную к посту картинку указанного размера (в параметрах);
- Медиа-иконку указанного размера, символизирующую вложенный файл;
- Заголовок вложения;
- Любой другой указанный заголовок.
- В противном случае функция вернет
Вложение не найдено
(Missing Attachment).
Хуки из функции
Возвращает
Строку
.
- html код ссылки.
- сообщение __( 'Missing Attachment' ), если не удалось получить вложение.
Использование
wp_get_attachment_link( $id, $size, $permalink, $icon, $text, $attr );
- $id(число/WP_Post)
- ID или объект вложения, ссылку на которое нужно получить.
По умолчанию: ID текущего вложения (внутри цикла вложений) - $size(строка/массив)
Размер изображения. Может быть:
-
Строкой —
thumbnail
,medium
,large
илиfull
; - Массивом — массивом из двух значений означающих ширину и высоту картинки в пикселях (пр.
array(32,32)
). С версии 2.5. этот параметр не влияет на размер медиа иконок, которые всегда показываются в оригинальном размере.
По умолчанию: 'thumbnail'
-
- $permalink(true/false)
- false — Прямая ссылка на вложение.
true — ссылка на вложение в структуре сайта (как прикрепленный файл к посту).
По умолчанию: false - $icon(логический)
- Использовать медиа иконку, для отображения вложения — true. Не использовать иконку — false - по умолчанию.
По умолчанию: false - $text(строка)
- Текст ссылки, который будет вести на вложение. По умолчанию этим текстом становится название вложения.
По умолчанию: null - $attr(массив/строка)
- Массив или строка атрибутов тега.
По умолчанию: ''
Примеры
#1 Покажем вложение среднего размера
По умолчанию размер картинок в WordPress - это thumbnail, medium, large, full
(картинки которые загружаются). Конкретные размеры выставляются в настройках WordPress Настройки > Медиа
.
$id = 12144; // ID вложения echo wp_get_attachment_link( $id, 'medium' ); /* получим: <a href='https://example.com/wp-content/uploads/2019/05/image.png'> <img width="803" height="803" src="https://example.com/wp-content/uploads/2019/05/image.png" class="attachment-medium size-medium" alt="" /> </a> */
#2 Этот пример выведет ссылку на вложение, в структуре WordPress:
$id = 12144; echo wp_get_attachment_link( $id, 'thumbnail', true ); /* Получим: <a href='http://example.com/название_поста/'> <img width="120" height="120" src="https://example.com/wp-content/uploads/2019/05/image.png" class="attachment-thumbnail size-thumbnail" alt="" /> </a> */
#3 Выставим свой текст ссылки:
$id = 12144; echo wp_get_attachment_link( $id, '' , false, false, 'my link text' ); // <a href='https://example.com/wp-content/uploads/2019/05/image.png'>my link text</a>
#4 Ссылка с текстом заголовка поста, которая будет вести на файл вложения.
$id = 12144; echo wp_get_attachment_link( $id, '' , false, false, ' ' ); // <a href='https://example.com/wp-content/uploads/2019/05/image.png'>Оптимизация</a>
#5 WordPress может использовать иконки, представляющие прикрепленный файл (вложение).
Для картинок показываются миниатюры, для других файлов показываются картинки, соответствующие типу файла (например файл wp-includes/images/crystal/audio.jpg
для аудио файлов).
Следующий пример покажет вам, как можно изменить каталог откуда WordPress будет получать такие иконки, например изменим его на: wp-content/themes/yourtheme/images
. Создайте каталог и скопируйте туда картинки-иконки и чтобы изменить путь до каталога в WordPress скопируйте этот код в файл темы functions.php:
add_filter( 'icon_dir', 'my_theme_icon_dyrectory' ); function my_theme_icon_dyrectory( $icon_dir ) { return TEMPLATEPATH . '/images'; } add_filter( 'icon_dir_uri', 'my_theme_icon_uri' ); function my_theme_icon_uri( $icon_dir ){ return get_bloginfo('stylesheet_directory').'/images'; }
Список изменений
С версии 2.5.0 | Введена. |
С версии 4.4.0 | The $post parameter can now accept either a post ID or WP_Post object. |