Получить первое изображение из поста
Имеется очень интересная возможность – с помощью PHP получить код первого изображения из поста и затем отобразить его в нужном месте цикла. Это может быть полезно, например, когда текст поста отображается в виде анонса.
В файл functions.php необходимо вставить следующую функцию:
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)) {
$first_img = "/images/default.jpg"; // Ссылка на изображение-заглушку, если в посте оно не найдено
}
return $first_img;
}
После этого в цикл там, где нужно отобразить первое изображение из поста, вставляем следующий код:
<img src="<?php echo catch_that_image(); ?>" alt="" />
Тегу img можно указать ширину прямо в нем, или через CSS. Высоту при этом указывать не стоит, чтобы уменьшенное изображение сохраняло пропорции.
—–
В портале Trucklist.ru, предлагающем информацию о коммерческом транспорте, представлена вся спецтехника и грузовики, продажа которых осуществляется как частными лицами, так и производителями и официальными дилерами. Данный сайт является приложением к журналу “Коммерческие Авто”.
В версии 2.9 появилась отличная возможность добавления изображения к посту или странице (thumbnails).
Для этого в файле functions.php необходимо добавить 2 строки:
add_theme_support( ‘post-thumbnails’ );
set_post_thumbnail_size( 150, 150 );
где set_post_thumbnail_size задает размер изображения.
Если надо подключить вывод изображений только в постах или только на страницах, вместо первой строки нужно использовать одну из следующих записей:
add_theme_support( ‘post-thumbnails’, array( ‘post’ ) ); // Для постов
add_theme_support( ‘post-thumbnails’, array( ‘page’ ) ); // Для страниц
В самой теме, где нужно вывести изображение, нужно просто добавить