thumbnail wordpress — выводим миниатюру записи

Миниатюра записи — это специальная настройка в шаблоне wordpress. Сделать превью можно и нужно без сторонних плагинов, средствами движка.

Для начала следует объявить функцию в файле functions.php используемого шаблона:

if ( function_exists( 'add_theme_support' ) ) { add_theme_support( 'post-thumbnails' ); }

После этого при создании записи мы сможем указывать миниатюру, но выводится она не будет.
Что бы вывести миниатюру в категории у записи или непосредственно в самом посте необходимо вставить код в single.php :

<?php if ( has_post_thumbnail() ) {  
the_post_thumbnail('thumbnail'); 
} ?>
У функции миниатюр есть настройки, отвечающие за размер миниатюры.
Что бы изменить размер следует прописать в файл functions.php сразу после объявления функции:

set_post_thumbnail_size(280, 210, false);

Этот код сделает размер миниатюр 280px на 210px.

Так же размер миниатюры можно указать непосредственно при вставке кода в файл записи:
the_post_thumbnail();                  // без параметров, миниатюра
the_post_thumbnail('thumbnail');       // Миниатюра (по умолчанию 150px x 150px)
the_post_thumbnail('medium');          // Средний размер (по умолчанию 300px x 300px)
the_post_thumbnail('large');           // Большой размер (по умолчанию 640px x 640px)
the_post_thumbnail('full');            // Полный размер (оригинальный размер изображения)
the_post_thumbnail( array(100,100) );  // ширина и высота в пикселях, можно указывать произвольную.

Иногда может потребоваться задать класс вставляемого изображения, сделать это можно следующим образом:

<?php the_post_thumbnail('thumbnail', array('class' => 'thumbnail')); ?>

Этот код назначит превьюшке класс thumbnail.

Так же бывает нужно обрезать превью в соответствии с пропорциями (например когда этого требует особый дизайн).
add_image_size (‘dev’, 120, 120, true); // Обрезает изображение без масштабирования

add_image_size (‘devul’, 420, 220, false); //  Масштабирует изображение и обрезает пропорционально его размерам.

Небольшая хитрость — если нужно что бы одна из сторон была всегда одинакового размера — то можно указать для второй стороны очень большой размер.

add_image_size ('megadevul', 480, 666666 );

Миниатюра будет всегда шириной 480px а высота будет изменятся в зависимости от исходника.

 

Запись опубликована в рубрике wordpress. Добавьте в закладки постоянную ссылку.

3 комментария на «thumbnail wordpress — выводим миниатюру записи»

  1. Алла говорит:

    Спасибо. А можно сделать так, чтобы миниатюра в самой статье не выводилась, только в превью?

  2. Igor говорит:

    Можно. Для этого надо воспользоваться свободными полями (custom fields) и в админке задавать переменную булевского типа — показыать/не показывать миниатюру в статье. А в шаблоне single.php проверять этот параметр и, соответственно, показывать или скрывать миниатюру.

    Для работы со свободными полями удобно пользоваться плагином Advanced Custom Fields

  3. Серафим говорит:

    Добрый день. подскажите, что сделать?
    в functions.php строчка set_post_thumbnail_size( 210, 210, true); и миниатюры выводятся размером 210 на 210 на странице записей. но поменяв значения на любые другие, миниатюры так и выводятся размером 210 на 210.

    раньше, когда на локальном сервере у себя правил, то миниатюры меняли размер в зависимости от того, какие значения выставил в этой сточке. а сейчас на хостинге пытаюсь настроить также и не выходит. в чем может быть дело?

    заранее спасибо

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *