Автоматическое внедрение в дизайн блога первой картинки из поста

Очень часто бывает лень добавлять миниатюры к каждому посту и мы суём их прям в пост или бывает другая ситуация — вы меняете дизайн и не хочется редактировать все посты добавляя миниатюры.

Есть очень простой способ получить первую картинку из поста и вывести её в любом месте блога (не совсем в любом).

Итак берём наш файл 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)){ //Defines a default image
    $first_img = "/images/default.jpg";
  }
  return $first_img;
}

А в нужное место шаблона вставляем:

<img src="<?php echo catch_that_image() ?>" alt="<?php the_title(); ?>" width="200" />

Естествено этот код должен находиться между:

<?php if (have_posts()) : ?>
//и
<?php endwhile; ?>

Есть плагины, но лучше вставить один раз и навсегда. Есть ещё несколько способов вставить первую картинку в любое место блога, но нам хватит и этого.

Кстати качественная раскрутка сайта — это целый комплекс работ над сайтом, которые лучше доверить специалистам.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *