Wordpress плагин для создания превью картинок из статьи

Тема в разделе "Импорт CSV", создана пользователем kagorec, 14 май 2017.

Метки:
  1. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    2.894
    В Wordpress автоматического создания превью картинок нет, известные плагины с задачей не справляются полностью (которые в библиотеке бесплатных плагинов).

    Нам надо чтобы спарсив сайт, потом импортнув (через доступные плагины или через php скрипт, неважно) огромное количество статей в свой Wordpress, чтобы у каждой записи была картинка превью (thumbnail).

    [​IMG]

    Решение довольно простое:
    используйте плагин Ссылки недоступны для гостей, зарегистрируйтесь или авторизуйтесь на форуме!
    Цитата из описания плагина
    п.с. вопросы по установке если возникают, пишите тут, попробуем решить.
     
  2. sarmak

    sarmak New Member Пользователи

    Регистрация:
    24 июл 2014
    Сообщения:
    2
    спасибо, получилось. взял для теста несложную тему . после импорта было так:
    [​IMG]

    установил плагин и в нужном месте код <?php echo kama_thumb_img('w=200 &h=150 &class=alignleft myimg'); ?> появились картинки размером 200*150. буду пробовать на более сложных темах

    [​IMG]
     
    kagorec нравится это.
  3. donseo

    donseo New Member Пользователи

    Регистрация:
    20 ноя 2017
    Сообщения:
    1
    Всё работает огонь!
     
    kagorec и Root нравится это.
  4. actoriy

    actoriy New Member Пользователи

    Регистрация:
    15 апр 2017
    Сообщения:
    22
     
  5. actoriy

    actoriy New Member Пользователи

    Регистрация:
    15 апр 2017
    Сообщения:
    22
    1. Функция установки первой картинки в качестве миниатюры
    //Вывод первой картинки с поста
    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;
    }
    Скрипт вытягивает первое изображение из записи, но если его нет, то он ставит картинку по умолчанию. Чтобы вывести изображение по умолчанию вы должны создать его, назвав noimages.jpg и поместить в папку images. В 11 строке укажите путь к изображению.

    1. Подключаем функцию вывода первой картинки в теме
    Миниатюра подключается во всех файлах где в цикле выводятся записи - это index.php, content.php, archive.php, category.php, single.php и тд,
    Для подключения нужно вставить следующий код после определения цикла, который выглядит примерно так:

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

    Сам код вывода нашей функции:
    <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">
    <img src="<?php echo first_post_image() ?>" alt="<?php the_title(); ?>" />
    </a>
    так картинка будет кликабельна и по ссылке вы перейдете в саму запись.

    А вот в записи нужно вывести некликабельную картинку. Для этого нужно в single.php добавить код без ссылки


    <img src="<?php echo first_post_image() ?>" alt="<?php the_title(); ?>" />

    Теперь в Вашей теме не будет записей без миниатюр.

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

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


    <?php if ( has_post_thumbnail() ) { the_post_thumbnail('thumbnail'); }
    else { ?>
    <img src="<?php echo first_post_image() ?>" alt="<?php the_title(); ?>" />
    <?php } ?>

    Конечно же добавляете свои классы стилей и оформителе их в CSS. Тогда ваши миниатюры будут выглядеть так, как Вам нужно.
     
    kagorec нравится это.

Поделиться этой страницей