the_post_thumbnail() WP 2.9.0

Виводить html код картинки-мініатюри поточного посту.

Цей тег шаблон повинен використовуватися всередині циклу WordPress.

Використовуйте get_the_post_thumbnail() , коли потрібно отримати дані цієї функції для обробки PHP.

Додатковий розмір картинки, яку можна отримати за допомогою цієї функції, можна створити через add_image_size() . За замовчуванням доступні такі розміри: thumbnail , medium , large , full , post-thumbnail .

Працює на основі:
get_the_post_thumbnail()
1 раз – 0.001739 сек
(дуже повільно) | 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() .

3

#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>';
 }
 ?>
0

#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;

}
0

#3 Реєстрація нового розміру

За допомогою add_image_size() можна зареєструвати новий розмір і отримати його за ключом:

// допустимо у functions.php ми реєструємо додатковий розмір так:
add_image_size('spec_thumb', 360, 240, true);

// Далі в циклі виводимо цей розмір так:
the_post_thumbnail( 'spec_thumb');

нотатки

список змін

З версії 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);
}