Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Активные темы » Первая картинка поста WP в YARPP миниатюре

Модерирует : Cheery

articlebot (15-03-2019 15:27): WordPress  Версия для печати • ПодписатьсяДобавить в закладки

   

GpewHuk

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток! Сложилась такая ситуация, нужно было вывести первую картинку поста, как миниатюру к записи, погуглив, я сделал это вот таким кодом в файле functions.php

Код:
//ВЫВОД ПЕРВОЙ КАРТИНКИ С ПОСТА
function first_post_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 = "/wp-content/themes/НАЗВАНИЕТЕМЫ/images/noimages.jpg";
// УКАЖИТЕ ПУТЬ К ИЗОБРАЖЕНИЮ, КОТОРОЕ БУДЕТ ВЫВОДИТСЯ ПО УМОЛЧАНИЮ.  
  }
  return $first_img;
}

 
вывод осуществляеться вставкой кода в нужную часть шаблона, вот таким образом

Код:
<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
<img src="<?php echo first_post_image() ?>" alt="<?php the_title(); ?>" />
</a>

 
Тут все прошло без проблем.
Далее появилась идея поставить YARPP и выводить первую картинку поста, как миниатюру.
 
По пути /wp-content/plugins/yet-another-related-posts-plugin/includes нарыл вот такой файл template_thumbnails.php а в нем код

Код:
if (have_posts()) {
    $output .= '<div class="yarpp-thumbnails-horizontal">' . "\n";
    while (have_posts()) {
        the_post();
 
        $output .= "<a class='yarpp-thumbnail' href='" . get_permalink() . "' title='" . the_title_attribute('echo=0') . "'>" . "\n";
 
        $post_thumbnail_html = '';
        if ( has_post_thumbnail() ) {
            if ( $this->diagnostic_generate_thumbnails() )
                $this->ensure_resized_post_thumbnail( get_the_ID(), $dimensions );
            $post_thumbnail_html = get_the_post_thumbnail( null, $dimensions['size'] );
        }
        
        if ( trim($post_thumbnail_html) != '' )
            $output .= $post_thumbnail_html;
        else
            $output .= '<span class="yarpp-thumbnail-default"><img src="' . esc_url($thumbnails_default) . '"/></span>';  
 
        $output .= '<span class="yarpp-thumbnail-title">' . get_the_title() . '</span>';
        $output .= '</a>' . "\n";
 
    }
    $output .= "</div>\n";
} else {
    $output .= $no_results;
}
 
$this->enqueue_thumbnails( $dimensions );

 
Я так понял, что вот эта часть кода

Код:
if ( trim($post_thumbnail_html) != '' )
            $output .= $post_thumbnail_html;
        else
            $output .= '<span class="yarpp-thumbnail-default"><img src="' . esc_url($thumbnails_default) . '"/></span>';  

 
отвечает за вывод альтернативной картинки, если нет миниатюры.
Но как в нее вставить код вывода

Код:
<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
<img src="<?php echo first_post_image() ?>" alt="<?php the_title(); ?>" />
</a>

я не понимаю(  
 
Если у кого то есть время и желание помочь, заранее спасибо!
 
P.S
Ясное дело я гуглил, смотрел форумы, но так и не смог найти - Как первую картинку поста, сделать миниатюрой  YARPP

Всего записей: 139 | Зарегистр. 21-11-2007 | Отправлено: 21:03 12-03-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GpewHuk
вопросы о WP задают в WordPress

Всего записей: 15095 | Зарегистр. 20-09-2014 | Отправлено: 21:08 12-03-2019
   

Компьютерный форум Ru.Board » Интернет » Web-программирование » Активные темы » Первая картинка поста WP в YARPP миниатюре
articlebot (15-03-2019 15:27): WordPress


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru