На днях неожиданно для себя узнал, что 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. Пишите в комментариях каким способом воспользовались вы, также можете задавать интересующие вас вопросы.

One thought on “Как удалить страницы вложений медиафайлов WordPress.

  1. Галина, я раньше добавляла картинку к статье, и ставила Ссылки нет , и получила много доп. страниц. Теперь все картинки обязательно добавляю, как Медиафайл и дублей нет. Попробуйте поставить временно плагин и сделайте все изображения, как Медиафайл. Я так поступила.

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

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.