Форум 3DNews
Вернуться   Форум 3DNews > Программирование > Web-программирование

Ответ Создать новую тему
Опции темы Опции просмотра
Непрочитано 26.02.2018, 23:27   [включить плавающее окно]   #1
alexeikanov
Мужской Новенький
Автор темы
 
Регистрация: 24.02.2018
Получение первого изображения из записи в WordPress

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

Получение первого изображения для миниатюры



Стало давольно популярно использовать миниатюрные изображения к каждой опубликованной записи, которые отображают ее суть. Для этого в последних версиях WordPress появилась собственная функция создания миниатюр, но в этой статье я расскажу о, возможно, самом простом способе вывода первого изображения из записи.

Для начала Вам необходимо открыть файл functions.php Вашего шаблона, если его нет – то создать (не забываем, что его кодировка должна быть UTF-8) и разместить там такой код:


function take_that_image() {
global $post, $posts;
$first_image = »;
ob_start();
ob_end_clean();
$output = preg_match_all(‘/<img.+src=[\'»]([^\'»]+)[\'»].*>/i’, $post->post_content, $matches);
$first_image = $matches [1] [0];
if(empty($first_img)){
$first_image = «/images/no_thumb.jpg»;

// Если изображение отсутствует, то выводим изображение по умолчанию (указать путь к изображению)
}
return $first_img;
}
// Получение первой картинки из записи
Данная функция, как Вы заметили, получает ссылку на первое изображение из записи, а если изображения нет – выводит ссылку на изображение по умолчанию, в данном случае это noImage.jpg, которое хранится в папке /images/ Вашего WordPress шаблона.

Теперь, чтобы вывести изображение нам необходимо вызвать функцию в теле цикла (тут можете прочитать о нем подробно), но т.к. функция выводит ссылку, то надо ее правильно оформить с точки зрения HTML.

Вот код для вывода изображения, который, на мой взгляд, будет наиболее верным с точки зрения поисковых роботов

<img src=«<?php echo take_that_image() ?>« alt=«<?php the_title(); ?>«/>

— выводим его, например, в файле шаблона

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<img src=«<?php echo get_first_image() ?>« alt=«<?php the_title(); ?>« height=«100»

— Вместо 100 и 150 пикселей указываем требуемые вам значения.

С точки зрения HTML – мы делаем изображение ссылкой на саму записи и задаем атрибут title.

delete

Последний раз редактировалось Lesnik75; 27.02.2018 в 03:36.
alexeikanov вне форума  
Ответить с цитированием
Ответ Создать новую тему

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 05:58. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 2000-2017 3DNews. All Rights Reserved.
Администрация 3DNews требует соблюдения на форуме правил и законов РФ
Серверы размещены в Hostkey