На днях неожиданно для себя узнал, что WordPress по умолчанию каждый медиафайл, добавленный в запись или страницу, отображает как отдельную страницу. Чем это плохо для сайта? Поисковики считают такие страницы дублями родительской страницы, куда вложены данные медифайлы, что очень плохо влияет на выдачу в поисковиках.
Столкнулся с темой «отключения страницы вложений attachment wordpress» совсем случайно.
Решил зайти в Яндекс.Вебмастер — Дианостика сайта и увидел предупреждение «Возможные проблемы 1«. Содержание проблемы было таким: «Значительная часть страниц сайта не содержит мета-тег <description>, или он некорректно заполнен. Это может негативно повлиять на представление сайта в результатах поиска.
Ознакомьтесь с примерами и исправьте ошибки.»
Провалившись в примеры увидел более 200 страниц, которые указывали на страницы с изображениями, то есть на каждое изображение была страница. Например, страница https://adminwin.ru/nastroyka-routera-na-primere-d-link-dir-615/ имела 7 дочерних страниц-вложенных файлов в виде «https://adminwin.ru/nastroyka-routera-na-primere-d-link-dir-615/router_2_pppoe/«, где router_2_pppoe — изображение.
Конечно же уважаемый поисковик считает, что это наглость и способствует тому, что сайт понижается в выдаче поисковиков.
Давайте исправим эту ситуацию, есть несколько вариантов решения вопроса без плагинов.
1. Первый способ. Как убрать страницы вложений из индекса поисковиков.
Добавить в файл robots.txt строки на запрет индексации медиафайлов из библиотеки после строчки User-agent: *:
Disallow: */?attachment_id=*
2. Второй способ. Как убрать страницы вложений-attachment на WordPress.
Переходим к файлу function.php и в конец кода перед ?> добавляем:
add_action('template_redirect', 'template_redirect_attachment'); function template_redirect_attachment() { global $post; // Перенаправление на основную запись: if (is_attachment()) { wp_redirect(get_permalink($post->post_parent)); } }
Данный код будет перенаправлять страничку всех вложенных файлов на их родительскую, простыми словами — страничку с изображением перенаправит на статью, где вставлено данная картинка.
3. Третий способ. Настроить 301 редирект страниц вложений на родительскую страницу через attachment.php.
В папке с темой или в редакторе WordPress открываем файл attachment.php, удаляем или комментим весь код что есть и вставляем в файл одну строчку. Если файла attachment.php нет, можете создать его в папке с темой:
<?php wp_redirect(get_permalink($post->post_parent), 301); ?>
Лично я пользуюсь вторым способом, который также редиректит страницу вложений на родительскую через файл function.php. Пишите в комментариях каким способом воспользовались вы, также можете задавать интересующие вас вопросы.
Галина, я раньше добавляла картинку к статье, и ставила Ссылки нет , и получила много доп. страниц. Теперь все картинки обязательно добавляю, как Медиафайл и дублей нет. Попробуйте поставить временно плагин и сделайте все изображения, как Медиафайл. Я так поступила.