Как предотвратить двойной вывод миниатюр в записях WordPress

Дата публикации:Февраль 23, 2014

Создание записей в WordPress – довольно простой процесс для пользователей. Однако те, кто только начинает работать с данной системой, могут столкнуться с некоторыми непонятными вещами. Обычно проблемы появляются с функциональностью миниатюр. Недавно один из наших читателей обратился к нам с вопросом, как избежать двойного вывода миниатюр в записях. Это достаточно общая проблема с изображениями, которая может быть легко решена. В этой статье мы покажем вам, как избежать двойного отображения миниатюр в записях WordPress.

duplicated-featured-image

Почему миниатюры выводятся дважды?

Самая распространенная причина, по которой миниатюры могут выводиться два раза в записях WordPress, заключается в том, что иногда новички задают миниатюру и вставляют ее в контент записи.

Это действие кажется осмысленным для новичков, поскольку, когда они устанавливают миниатюру, они ждут, что она отобразится в визуальном редакторе WordPress. Когда ее там нет, они думают, что, возможно, что-то пропустили, поэтому вставляют то же самое изображение в редактор записей. На сей раз они видят изображение в визуальном редакторе и понимают, что вроде как все сделали правильно. Однако при публикации они замечают, что изображение выводится два раза в записях.

Как исправить это?

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

setting-featured-image

Миниатюры – возможность тем WordPress. Это означает, что поддержка данной возможности обрабатывается вашей темой WordPress, поэтому вы не видите, как выглядит изображение в вашем редакторе записей.

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

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

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

Источник: wpbeginner.com

Поделиться

23 комментария

  1. Да, поначалу и я сломал голову над этим вопросом.В итоге вообще удалял вывод миниатюры в index.php, оставляя только картинку в контенте.

    • Дмитрий Алёшин says:

      Так тоже можно поступить, но лучше не ломать ядро WordPress. Такая практика не является самой подходящей и оптимальной.

  2. Я понимаю, но тогда я других способов не знал.

  3. Варвара says:

    А скажите, пожалуйста, не совсем по адресу может, но может Вы знаете, почему выводится двойное имя автора (ИванПетровИванПетров), если я использую the_author()?

  4. Павел says:

    Третий день уже негодую по поводу этих миниатюр и их вывода в пост. Из статьи я так и не понял, как сделать так, чтобы миниатюра в статье вообще не выводилась? Если вместо того, чтобы вставлять изображение в пост, я сделаю его миниатюрой, то в сам пост оно добавляется один раз, только совсем не в то место, в которое мне нужно…

    • Дмитрий Алёшин says:

      Это уже прописано в вашей теме. Нужно менять код темы, чтобы миниатюра выводилась в нужном вам месте. Здесь же описано исправление ошибки с двойным выводом миниатюр.

  5. Аня says:

    Умоляю ! помогите убрать миниатюру записи, она у меня отображается под заголовком страницы!Что мне надо сделать? Вот ссылка на запись http://soffitto-volg.ru/941/. Я установила новую тему, а тут такая хрень вылезла!В настройках темы про миниатюры ни слова. Помогите!!!

    • Дмитрий Алёшин says:

      Возможно, она у вас в визуальном редакторе просто стоит. Оттуда ее удалить — и все.

  6. Павел says:

    У меня было такое, оказалось, что в настройках темы надо было отключить Показывать Featured image

  7. Я думаю вопрос у читателей стоял совсем в другом, потому как сам сейчас задался данным вопросом. И в общей ленте и в отдельной странице записи отображается миниатюрка. А нужно предотвратить вывод при открытии записи и оставить только в общей ленте. Сейчас работаю над этим, скорее всего и напишу по этому поводу пост, так как ответов в интернете на этот вопрос так и не нашел, или возможно не правильно подбираю запрос для ПС.

  8. Khudobin says:

    Подскажите, как удалить миниатюры в самой статье, оставив ее только на главной странице?

    • Я думаю, нужно удалить соответствующий код в файле single.php

      • Дмитрий Алёшин says:

        Многое зависит от используемой темы. Ведь миниатюры в статье могут по-разному выводиться. Могут как огромная шапка на всю страницу, а могут как просто маленькая картинка вверху.

  9. Евгений says:

    Приветствую! Можно задать вопрос по миниатюрам, но немного в другом ракурсе?

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

    У меня же возникла более специфичная задача: сделать возможность вкл./откл. миниатюры в админке, чтобы она не выводилась во фронтенде сайта для определенной (одиночной) записи/страницы. При этом для этой записи/страницы она загружена и установлена (чтобы использовать в других целях).

    Возможно должен быть php сниппет для решения такой задачи, вставляемый в functions.php текущей темы, но найти его пока не удалось ) Также, насколько я понимаю, этот вопрос можно решить и другим способом, используя произвольные поля, но сообразить как это сделать пока не получается.

    Кто-нибудь может помочь справиться с этой задачей? Заранее благодарю!

  10. Дмитрий Алёшин says:

    Можно задать произвольное поле для записи, у которой вы хотите скрыть миниатюру.

    К примеру, key = «hide_featured_image», value = «yes»

    А вот и сама функция для проверки:

    $shouldHideFeaturedImage = get_post_meta($post->ID, 'hide_featured_image', true);
    
    if ( $shouldHideFeaturedImage != 'yes' ) {
     if ( has_post_thumbnail() ) {
        the_post_thumbnail('medium'); 
        } 
    }
  11. Здравствуйте, создаю сайт каталог, пока на локальном сервере. Шаблон E-Commerce. Столкнулся с такой проблемой, создаю миниатюру к записи, на превью все отлично, и размер и положение. Но при заходе в статью там висит еще одна миниатюра которая сильно мешает. И она к сожалению не кликабельна. Как её можно удалить, вторую в статье.

    • Дмитрий Алёшин says:

      Нужно смотреть, какая именно тема (желательно со ссылкой, откуда вы ее взяли).

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

      • Ссылку уже не пришлю, не помню. От миниатюр нельзя отказаться, они устанавливаются без изображения в статье и корректировки они не поддаются. Даже не знаю, что делать.

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

    • Дмитрий Алёшин says:

      Я встречал такой код для functions.php:

      add_filter( 'post_thumbnail_html', 'my_post_image_html', 10, 3 );
      
      function my_post_image_html( $html, $post_id, $post_image_id ) {
      
      	$html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_post_field( 'post_title', $post_id ) ) . '">' . $html . '</a>';
      
      	return $html;
      }

      Это для того, чтобы сделать миниатюры кликабельными.

  13. Александр says:

    Извините, что не по теме. Есть ли у вордпресс такой плагин, который автоматически добавляет наверху страницы ссылки типа: главная / газонокосилки / газонокосилки бензиновые и т.д.

Оставить комментарий

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

Получать новые комментарии по электронной почте. Вы можете подписаться без комментирования.