Medios en WordPress: imágenes, metadatos, rendimiento y SEO

Medios en WordPress: imágenes, metadatos, rendimiento y SEO

Última verificación: 22 de septiembre de 2026
8 min de lectura
Guía
Desarrollador full-stack
Core Web Vitals

Las imágenes son el asesino #1 del rendimiento en sitios WordPress. En 2026, con Core Web Vitals como factor de ranking, un sitio lento significa pérdida de ingresos. Sin embargo, la mayoría de los sitios WordPress aun sirven JPEGs inflados y crean páginas de “adjuntos” inútiles para cada imagen subida.

Conozca más sobre la optimización de velocidad WordPress en WPPoland. Esta guía de ingeniería cubre la pila completa de optimización de medios para WordPress moderno.

#Cómo desactivar las páginas de adjuntos en WordPress

Por defecto, WordPress crea una página dedicada para cada imagen que sube. Ejemplo: susitio.com/nombre-imagen/

Por qué esto es malo:

  1. Confusion SEO: Google indexa estas páginas vacías en lugar de su contenido real
  2. Presupuesto de rastreo desperdiciado: Googlebot pierde tiempo en páginas inútiles
  3. Experiencia de usuario: Los usuarios que hacen clic en imágenes llegan a páginas sin salida

#Redirigir o devolver 404 en las páginas de adjuntos

Método 1: Redirigir al post padre

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

Método 2: Devolver 404

add_action( 'template_redirect', function() {
    if ( is_attachment() ) {
        global $wp_query;
        $wp_query->set_404();
        status_header( 404 );
    }
} );

#AVIF o WebP en WordPress

JPEG es de 1992. Es hora de avanzar.

#¿Cuánto pesan menos WebP y AVIF que JPEG?

  • JPEG: 100KB línea base
  • WebP: 60KB (40% más pequeño, buen soporte de navegadores)
  • AVIF: 40KB (60% más pequeño, excelente calidad)

#Habilitando AVIF en WordPress

WordPress 6.5+ soporta la subida de AVIF nativamente, pero necesita habilitarlo:

add_filter( 'wp_image_editors', function( $editors ) {
    array_unshift( $editors, 'WP_Image_Editor_Imagick' );
    return $editors;
} );

add_filter( 'image_editor_output_format', function( $formats ) {
    $formats['image/jpeg'] = 'image/avif';
    $formats['image/png'] = 'image/avif';
    return $formats;
} );

Advertencia: Esto convierte TODAS las subidas. Pruebe exhaustivamente.

#Ventajas de AVIF sobre WebP

AVIF no es solo un formato más pequeño: ofrece ventajas técnicas significativas:

  • Mejor compresión de gradientes: Los degradados suaves se mantienen limpios sin artefactos de banda
  • Soporte de HDR: Soporta contenido High Dynamic Range de forma nativa
  • Mejor rendimiento en imágenes con texto: El texto superpuesto en imágenes se mantiene nítido
  • Transparencia: Soporta canal alfa como PNG pero con compresión superior

#Lazy loading en WordPress sin Layout Shift

WordPress 5.5+ agrega loading="lazy" automáticamente. Pero puede optimizar aun más.

#¿Por qué el lazy loading nativo causa layout shift?

Carga imágenes cuando están en el viewport + un margen. Para imágenes hero, esto causa Layout Shift (mala puntuación CLS).

#Cómo excluir la primera imagen del lazy loading

add_filter( 'wp_lazy_loading_enabled', function( $default, $tag_name, $context ) {
    if ( 'img' === $tag_name && 'the_content' === $context ) {
        // No hacer lazy load de la primera imagen
        static $first_image = true;
        if ( $first_image ) {
            $first_image = false;
            return false;
        }
    }
    return $default;
}, 10, 3 );

#Cómo añadir fetchpriority high a la imagen destacada

En 2026, el atributo fetchpriority es esencial para indicar al navegador que imágenes cargar primero:

// Agregar fetchpriority="high" a la imagen hero
add_filter( 'wp_get_attachment_image_attributes', function( $attr, $attachment, $size ) {
    if ( is_singular() && has_post_thumbnail() ) {
        $thumbnail_id = get_post_thumbnail_id();
        if ( $attachment->ID === $thumbnail_id ) {
            $attr['fetchpriority'] = 'high';
            unset( $attr['loading'] ); // Eliminar lazy para imagen hero
        }
    }
    return $attr;
}, 10, 3 );

#Cómo usar srcset y sizes en WordPress

WordPress genera múltiples tamaños de imagen automáticamente. Asegúrese de usarlos:

// En su tema
the_post_thumbnail( 'large', [
    'sizes' => '(max-width: 600px) 100vw, 50vw'
] );

Esto le dice al navegador:

  • En móvil: usar ancho completo
  • En escritorio: usar 50% del ancho

El navegador descarga el tamaño óptimo.

#CDN de imágenes para WordPress

Para sitios de alto tráfico, descargue el procesamiento de imágenes a un CDN.

#Cloudflare Images vs Cloudinary vs imgix

  1. Cloudflare Images: $5/mes por 100K imágenes
  2. Cloudinary: Nivel gratuito disponible
  3. imgix: Manipulación de imágenes en tiempo real vía parámetros URL

#Cómo servir imágenes de WordPress desde Cloudinary

add_filter( 'wp_get_attachment_url', function( $url, $post_id ) {
    $cloudinary_base = 'https://res.cloudinary.com/sunube/image/upload/';
    $path = wp_get_attachment_metadata( $post_id )['file'];
    return $cloudinary_base . 'f_auto,q_auto/' . $path;
}, 10, 2 );

#Cómo eliminar medios no utilizados en WordPress

Con el tiempo, su biblioteca de medios se llena de imágenes no utilizadas.

#Encontrar medios huerfaños

SELECT * FROM wp_posts
WHERE post_type = 'attachment'
AND ID NOT IN (
    SELECT meta_value FROM wp_postmeta
    WHERE meta_key = '_thumbnail_id'
);

Recomendación de plugin: Media Cleaner de Jordy Meow

#Cómo comprimir imágenes en WordPress

La compresión no se trata solo del tamaño de archivo: se trata de encontrar el equilibrio entre calidad y rendimiento.

#¿Qué calidad JPEG usar en WordPress?

Configuraciónes de calidad JPEG:

  • 90-100: Casí sin compresión, archivos grandes (no recomendado)
  • 80-89: Alta calidad, compresión moderada (bueno para fotos)
  • 70-79: Equilibrio calidad/tamaño (recomendado para la mayoría de imágenes)
  • 60-69: Perdida de calidad notable, archivos pequeños (usar con moderación)
  • Debajo de 60: Artefactos significativos (evitar)

Para WordPress, apunte a calidad 75-85 dependiendo del tipo de imagen.

#Cómo comprimir imágenes automáticamente al subirlas

/**
 * Comprimir automáticamente imagenes subidas
 */
add_filter('wp_handle_upload_prefilter', function($file) {
    if ($file['type'] === 'image/jpeg' || $file['type'] === 'image/png') {
        $image = wp_get_image_editor($file['file']);
        if (!is_wp_error($image)) {
            $image->set_quality(82);
            $image->save($file['file']);
        }
    }
    return $file;
});

#Herramientas de compresión por lotes

Línea de comandos (ImageMagick):

## Comprimir todos los JPEG en un directorio
find . -name "*.jpg" -exec magick {} -quality 82 {} \;

## Convertir a AVIF
magick input.jpg -quality 80 output.avif

Plugins de WordPress:

  • ShortPixel - Optimización automática, soporta AVIF
  • EWWW Image Optimizer - Gratuito, código abierto
  • Imagify - Basado en la nube, nivel gratuito disponible

#Cómo organizar la biblioteca de medios de WordPress

Una biblioteca de medios desordenada ralentiza su sitio y dificulta la gestión de contenido.

#Cómo nombrar los archivos de imagen

Malo:

  • IMG_1234.jpg
  • screenshot-2026-01-15.png
  • foto(1).jpg

Bueno:

  • hero-página-inicio-2026.avif
  • producto-laptop-dell-xps-15.jpg
  • equipo-miembro-juan-perez-retrato.jpg

#Cómo renombrar archivos automáticamente al subirlos

/**
 * Renombrar archivos subidos basándose en el título del post
 */
add_filter('wp_handle_upload_prefilter', function($file) {
    $pathinfo = pathinfo($file['name']);
    $extensión = $pathinfo['extensión'];

    // Obtener título del post si se sube a un post
    if (isset($_POST['post_id']) && $_POST['post_id']) {
        $post_title = get_the_title($_POST['post_id']);
        $sanitized = sanitize_file_name($post_title);
        $file['name'] = $sanitized . '-' . time() . '.' . $extensión;
    }

    return $file;
});

#Cómo medir el rendimiento de las imágenes en WordPress

No puede optimizar lo que no mide.

#Qué métricas de imágenes medir

  1. Tamaño total de la biblioteca de medios
  2. Tamaño promedio de imagen
  3. Conteo de medios no utilizados

#Herramientas para medir el rendimiento de las imágenes

Google PageSpeed Insights:

  • Mide Core Web Vitals
  • Muestra oportunidades de optimización de imágenes
  • Proporciona recomendaciones específicas

GTmetrix:

  • Gráficos detallados de cascada
  • Muestra tiempos de carga de imágenes
  • Identifica oportunidades de optimización

#Fallback WebP y dirección de arte en WordPress

#Fallback WebP para navegadores antiguos

/**
 * Servir WebP con fallback JPEG
 */
function serve_webp_with_fallback($html, $post_id) {
    $webp_url = wp_get_attachment_image_url($post_id, 'full', false, ['format' => 'webp']);
    $jpeg_url = wp_get_attachment_image_url($post_id, 'full');

    if ($webp_url) {
        $html = '<picture>
            <source srcset="' . esc_url($webp_url) . '" type="image/webp">
            <img src="' . esc_url($jpeg_url) . '" alt="' . esc_attr(get_post_meta($post_id, '_wp_attachment_image_alt', true)) . '">
        </picture>';
    }

    return $html;
}
add_filter('wp_get_attachment_image', 'serve_webp_with_fallback', 10, 2);

#Imágenes responsivas con dirección de arte

A veces necesita diferentes recortes para diferentes tamaños de pantalla:

// Agregar tamaños de imagen personalizados
add_image_size('hero-mobile', 800, 600, true);
add_image_size('hero-tablet', 1200, 800, true);
add_image_size('hero-desktop', 1920, 1080, true);

#Errores comunes con imágenes en WordPress

#Subir imágenes a resolución completa

Problema: Subir imágenes de 4000x3000px cuando solo necesita 1200x900px.

Solución: Redimensione antes de subir o use los tamaños de imagen de WordPress.

#No usar imágenes destacadas para redes sociales

Problema: Usar imágenes de the_content() en lugar de imágenes destacadas para compartir en redes sociales.

Solución: Siempre establezca imágenes destacadas y use Open Graph:

// En header.php o vía plugin
$og_image = get_the_post_thumbnail_url(get_the_ID(), 'large');
echo '<meta property="og:image" content="' . esc_url($og_image) . '">';

#Texto alternativo ausente o genérico

Problema: Texto alt faltante o genérico dañina el SEO y la accesibilidad.

Solución: Siempre agregue texto alt descriptivo.

#Lista de verificación para optimizar medios en WordPress

  1. Desactivar páginas de adjuntos (redirección 301 o 404)
  2. Usar AVIF/WebP para archivos bastante más pequeños, en torno a un 50% con AVIF y un 25-34% con WebP
  3. Carga diferida inteligente (excluir imágenes hero)
  4. Aprovechar srcset para imágenes responsivas
  5. Usar un CDN para optimización automática
  6. Comprimir imágenes (calidad 75-85)
  7. Organizar la biblioteca de medios (convenciones de nombres, estructura de carpetas)
  8. Monitorizar rendimiento (PageSpeed Insights, GTmetrix)
  9. Agregar texto alt apropiado (SEO y accesibilidad)
  10. Limpiar medios huerfaños (mantenimiento regular)

#Objetivos de Core Web Vitals para imágenes

  • Largest Contentful Paint (LCP): < 2.5s
  • Cumulative Layout Shift (CLS): < 0.1
  • First Input Delay (FID): < 100ms
  • Tiempo de carga de imagen: < 1s en conexión 3G
  • Peso total de página: < 2MB (incluyendo imágenes)

Las imágenes deben cargar rápido, no primero. En 2026, con Core Web Vitals como factores de ranking, la optimización de imágenes no es opcional: es esencial para el SEO y la experiencia del usuario.

Siguiente paso

Transforma el artículo en una implementación real

Este bloque refuerza el enlazado interno y lleva al lector al siguiente paso más útil dentro de la arquitectura del sitio.

¿Quieres implementar esto en tu sitio?

Si el problema está en los Core Web Vitals, en el rendering lento o en el peso de WordPress, puedo mapear e implementar la optimización.

Cluster relacionado

Explora otros servicios WordPress y base de conocimiento

Refuerza tu negocio con soporte técnico profesional en áreas clave del ecosistema WordPress.

FAQ del artículo

Preguntas frecuentes

Respuestas prácticas para aplicar el tema en la ejecución real.

SEO-readyGEO-readyAEO-ready4 Q&A
¿Por qué son importantes las páginas de adjuntos en WordPress?#
Las páginas de adjuntos son un problema de SEO. WordPress crea una página dedicada para cada imagen subida, desperdiciando presupuesto de rastreo de Google e indexando páginas vacías en lugar de su contenido real.
¿Cuál es el mejor formato de imagen para WordPress en 2026?#
AVIF es el mejor formato en 2026, ofreciendo archivos alrededor de un 50% más pequeños que JPEG en la comparación de Netflix con excelente calidad. WebP es la segunda opción con 40% de reducción y mejor soporte de navegadores.
¿Cómo optimizar imágenes para Core Web Vitals?#
Implemente carga diferida, use formatos modernos como AVIF/WebP, especifique dimensiones de ancho y alto, y excluya imágenes above-the-fold del lazy loading para mejorar LCP y CLS.
¿Qué herramientas ayudan con la optimización de medios en WordPress?#
Herramientas como Google PageSpeed Insights, GTmetrix y WebPageTest ayudan a analizar y mejorar la optimización de medios en WordPress.

¿Necesitas un FAQ adaptado a tu sector y mercado? Preparamos una versión alineada con tus objetivos de negocio.

Hablemos

Artículos Relacionados