Время для прочтения: 1 мин. 5 сек.

Отключение страницы вложения в WordPress

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

Как отключить

Создайте в активной теме вашего сайта шаблон, например, для вывода вложения-изображения image.php и внутри поместите редирект на пост, к которому это вложение прикрепелено:

wp_redirect( get_permalink( $post->post_parent ), 301 );
exit;

Можно пойти дальше и повесить этот же редирект на хук template_redirect, чтобы не создавать лишних шаблонов внутри темы. Для чего в functions.php напишите:

/**
 * Редирект со страницы вложения на
 * родительский пост
 */
function mihdan_attachment_redirect() {
    global $post;
    
	if ( is_attachment() && 0 !== $post->post_parent ) {
        wp_redirect( get_permalink( $post->post_parent ), 301 );
        exit();
    }
}
add_action( 'template_redirect', 'mihdan_attachment_redirect' );
Пошерить
Плюсануть
Отправить
Вотсап

WordPress Digest Мой канал в Телеграм, посвящённый WordPress

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

Такой e-mail уже зарегистрирован. Воспользуйтесь формой входа или введите другой.

Вы ввели некорректные логин или пароль

Извините, для комментирования необходимо войти.

1. Нажимая на кнопку "Отправить", я даю согласие на обработку персональных данных.

2. Для вставки кода используйте специальные теги [code lang="php"]ваш код[/code]