Cómo deshabilitar las páginas de archivos adjuntos de imágenes en WordPress

El otro día estaba revisando y haciendo una limpieza de SEO en la página de mi sitio y noté varias “páginas de imágenes” indexadas en Google. Cada vez que agrega una imagen a su publicación, automáticamente adjunta un enlace a la imagen que va a una publicación en blanco (WordPress almacena los datos de la imagen adjunta como publicaciones en la base de datos) sin nada más que esa imagen y tal vez un título y un título (según el tema). tu usas).

El problema es que estas páginas son prácticamente inútiles ya que no tienen contenido. Es mejor vincularlo a su imagen real si desea que las personas puedan hacer clic y ver una versión grande o usar un complemento de caja de luz para sus publicaciones. Las páginas de archivos adjuntos en WordPress son lo que se considera contenido “delgado”, por lo que no tienen ningún valor y pueden dañar sus esfuerzos de SEO.

En este artículo, le mostraré diferentes formas en las que puede deshabilitar esta página principal adjunta de imagen en su sitio de WordPress y redirigir el rango de su página a su artículo principal o la página de inicio de su sitio. Y redirigir estas publicaciones adjuntas a través de redirecciones 301 es la mejor solución tanto para la usabilidad como para el SEO.

Redirigir las páginas adjuntas de imágenes con el complemento SEO de Yoast

La forma más fácil es redirigir las páginas de archivos adjuntos mediante un complemento, y además uno gratuito. Estos son los 3 sencillos pasos:

  1. Instalar y configurar Yoast SEO para WordPress
  2. Una vez configurado, haga clic en SEO> Avanzado y haga clic en la pestaña Enlaces permanentes
  3. Habilite la opción para “redirigir las URL de los archivos adjuntos a la URL de la publicación principal” y guardar

Redirigir a través de una función personalizada

También puede crear su propia función personalizada para redirigir sus páginas adjuntas a la página de inicio o al padre de la publicación. Esta función debe colocarse en su archivo functions.php (preferiblemente en un tema hijo si está utilizando un tema de otro desarrollador).

function myprefix_redirect_attachment_page() {
	if ( is_attachment() ) {
		global $post;
		if ( $post && $post->post_parent ) {
			wp_redirect( esc_url( get_permalink( $post->post_parent ) ), 301 );
			exit;
		} else {
			wp_redirect( esc_url( home_url( '/' ) ), 301 );
			exit;
		}
	}
}
add_action( 'template_redirect', 'myprefix_redirect_attachment_page' );

Si nota que el código solo redirigirá cuando is_attachment () devuelva verdadero. Esto significa que redirigirá a cualquier tipo de archivo adjunto, no solo a imágenes, que suele ser lo mejor. Sin embargo, puede apuntar solo a archivos adjuntos de imágenes agregando algunas comprobaciones adicionales para ver cuál es el tipo de archivo adjunto actual.

Redirigir a través del archivo image.php

Su segunda opción es deshabilitar completamente sus páginas de archivos adjuntos agregando una redirección de WordPress directamente agregada a la parte superior de su archivo image.php.

  1. Cree un nuevo archivo llamado image.php en su tema hijo (siempre es mejor trabajar con el tema hijo al editar un tema) o si está desarrollando su propio tema, cree un archivo image.php vacío en su tema.
  2. Inserta el siguiente código en tu archivo image.php
post_parent ) {
	wp_redirect( esc_url( get_permalink( $post->post_parent ) ), 301 );
	exit;
} else {
	wp_redirect( esc_url( home_url( '/' ) ), 301 );
	exit;
}

Ahora, cuando actualice la página de archivos adjuntos de la imagen, debería redirigir a la publicación original donde se cargó la imagen o, si se cargó directamente en la biblioteca de medios, se redirigirá a la página de inicio de su sitio.