03
Янв
Создание миниатюр для блога и RSS в WP 2.9

Создание миниатюр для блога и RSS в WP 2.9

Во всех обзорах WP 2.9 говориться о том, что в новой версии появилась возможность использовать миниатюры (thumbnails). В некоторых темах для более ранних версий активно использовался данный функционал. Например, Arthemia Free. В данной статье, я попробую показать, как в Вашу тему добавить миниатюры с помощью уже имеющегося функционала. Кстати, он годится в том числе и для отображения в RSS.

Добавление поддержки миниатюр в тему

Чтобы в редактировании статьи (под выбором рубрики) появился блок «Миниатюра записи», нужно в файле function.php Вашей активной темы добавить следующий текст.

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

Для отображения миниатюры в Вашей теме нужно вставить:

the_post_thumbnail();

the_post_thumbnail()

К моему большому удивлению, я не обнаружил в кодексе описания данной функции. У нее два аргумента:

//  миниатюра, слева
the_post_thumbnail('thumbnail', array('class' => 'alignleft'));
//  средний размер, у картинки атрибуты alt и title заменятся на название поста
the_post_thumbnail('medium', array('alt' => get_the_title(),'title' => get_the_title()));
//  большой, по центру
the_post_thumbnail('large', array('class' => 'aligncenter'));
// справа и свой класс  'my_own_class'
the_post_thumbnail(array(400,345), array('class' => 'alignright my_own_class'));

Таким не хитрым образом, можно налету масштабировать изображения, причем пропорции сохраняются. Типовые размеры в пикселях задаются в «Настройки/Медиафайлы». Еще стоит отметить, что ни один из параметров не является обязательным.

Лично я сделал в своем блоге на главной странице «Миниатюра» + цитату статьи, в теле самой статьи «Средний размер».

// В index.php
    <div class="thumbnail">
        <a href="<?php the_permalink() ?>"><?php the_post_thumbnail('thumbnail'); ?></a>
    </div>
    <?php the_excerpt(); ?>
// В single.php
    <div class="thumbnail">
        <?php the_post_thumbnail('medium'); ?>
    </div>
    <?php the_content('<p>Read the rest of this entry &raquo;</p>'); ?>

Вставка миниатюры в RSS

Очевидно, что картинка в RSS ленте увеличивает шансы, что статью прочтут полностью. В файл function.php добавляем следующий код:

function insertThumbnailRSS($content) {
global $post;
if ( has_post_thumbnail( $post->ID ) ){
$add_thumbnail = "
<div style="
float: left; padding: 0 10px 5px 0;">".get_the_post_thumbnail( $post-&gt;ID, 'thumbnail' )."</div>
"
;
$content = $add_thumbnail . $content;

}
return $content;
add_filter('the_excerpt_rss', 'insertThumbnailRSS');
add_filter('the_content_feed', 'insertThumbnailRSS');
}

Ну вот теперь на написание одной статьи Вы будете тратить минут на 5 больше. А как же иначе? Картинку-то для миниатюры надо найти, подготовить, залить.

Приятного блогинга!

Вам понравился этот пост?

Почему бы не оставить комментарий ниже или не подписаться на мой feed?

Комментарии

Тёска, подскажи.

Раз ты заговорил про Arthemia Free и rss….

У меня не работает в Arthemia обрезание статей в rss ленте (summary), приходиться обрезать с помощью настроек feedburner, но он захватывает текст из excerpt без оформления и картинок.

Какой файл в этой теме отвечает за выдачу обрезанных статей в rss 2.0 ленте? И если его там нет, как это настроить?

С Уважением!

Вы, наверно, не внимательно читали статью. Нужный вам файл это function.php
Причем не зависимо от того 2.9 версия или выше.

Leave a comment

(required)

(required)


Это не спам.