the_post_thumbnail()
Виводить html код картинки-мініатюри поточного посту.
Цей тег шаблон повинен використовуватися всередині циклу WordPress.
Використовуйте get_the_post_thumbnail() , коли потрібно отримати дані цієї функції для обробки PHP.
Додатковий розмір картинки, яку можна отримати за допомогою цієї функції, можна створити через add_image_size() . За замовчуванням доступні такі розміри: thumbnail , medium , large , full , post-thumbnail .
get_the_post_thumbnail()
(дуже повільно) | 50000 разів – 6.79 сек
(швидко) |
PHP 7.1.2, WP 4.7.3
Хуків немає.
Повертає
null
. Виводить на екран рядок. Функція виводить на екран html код зображення або порожнє значення (null), якщо зображення не існує.
Використання
<?php the_post_thumbnail( $size, $attr ); ?>
-
$size
(рядок/масив) Розмір мініатюри, яку необхідно отримати. Може бути рядком:
thumbnail
,medium
,large
,full
або масивом двох елементів (ширина і висота картинки):array(32, 32)
.Коли вказано масив, нова мініатюра із зазначеними розмірами не створюється. А WP шукає відповідний розмір з тих, що вже є, бере його і просто вказує висоту і ширину в пікселях для тега IMG, щоб зменшити картинку. Тобто. картинка зменшується лише візуально.
Типово: ‘post-thumbnail’, розмір який встановлюється для теми функцією
set_post_thumbnail_size()
-
$attr
(рядок/масив) Масив атрибутів, які потрібно додати одержуваному html тегу img .
Можна вказати рядком:
alt=альт&class=alignleft
або масивом:$default_attr = array( 'src' => $src, 'class' => "attachment-$size", 'alt' => trim(strip_tags( $wp_postmeta->_wp_attachment_image_alt )), );
Атрибути можна вказувати будь-які.
За замовчуванням: ”
Приклади
Додаткові приклади, як стилізувати мініатюри і передавати атрибути дивіться у описі функції get_the_post_thumbnail() .
#1 Мініатюра-посилання на оригінальний розмір
Приклад, що показує як створити мініатюру, яка посилатиметься на оригінальний розмір картинки:
<?php if ( has_post_thumbnail()) { $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'large'); echo '<a href="' . $large_image_url[0] . '" title="' . the_title_attribute('echo=0') . '" >'; the_post_thumbnail('thumbnail'); echo '</a>'; } ?>
#2 Мініатюра як посилання на пост
Приклад 1: Використовуйте наступний код, щоб зробити зображення мініатюри посиланням на пост. Приклад для використання всередині Цикл WordPress:
<?php if ( has_post_thumbnail()) { ?> <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>" > <?php the_post_thumbnail(); ?> </a> <?php } ?>
Теж саме з використанням хука
Для цього використовуємо хук post_thumbnail_html . У цьому випадку зображення буде посиланням на пост відразу при виклику функції the_post_thumbnail(). Код потрібно додавати у файл шаблону functions.php :
add_filter( 'post_thumbnail_html', 'my_post_image_html', 10, 3); function my_post_image_html( $html, $post_id, $post_image_id ) { $html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_post_field( 'post_title', $post_id ) ) . $html. '</a>'; return $html; }
#3 Реєстрація нового розміру
За допомогою add_image_size() можна зареєструвати новий розмір і отримати його за ключом:
// допустимо у functions.php ми реєструємо додатковий розмір так: add_image_size('spec_thumb', 360, 240, true); // Далі в циклі виводимо цей розмір так: the_post_thumbnail( 'spec_thumb');
нотатки
- Дивіться: get_the_post_thumbnail()
список змін
З версії 2.9.0 | Введено. |
the post thumbnail WP 6.0.2
function the_post_thumbnail( $size = 'post-thumbnail', $attr = '' ) { echo get_the_post_thumbnail (null, $ size, $ attr); }