• Resuelto WhaS

    (@whas)


    Buenas!

    hace días que tengo un problema y es que cuando comparto en redes sociales, por ejemplo facebook, no pone la vista previa de los enlaces de mi sitio.

    Ejemplo:

    <img src=»https://www.noticiasbierzo.es/varios/error_redes.jpg» alt=»Error» />

    Cuando antes aparecía así:

    <img src=»https://www.noticiasbierzo.es/varios/redes_bueno.jpg» alt=»Redes Bueno» />

    Tengo instalado el plugin yoast seo desde siempre, lo digo por que llevo dias buscando por google y no hay manera.

    En la página de developers de facebook, que también aluden en google, sale como he dicho:

    Ya no se que más hacer, hasta he reinstalado wordpress por si acaso, he desactivado todos los plugins por si alguno estaba incordiando y nada de nada.
    Se agradece una ayudita.

    Por cierto, aunque lo comparte automáticamente con el plugin FS Poster, no es por eso porque aún desactivado y poniendo el enlace a mano tampoco sale la vista previa… 🙁

    Saludos y gracias de antemano!

    • Este debate fue modificado hace 4 meses, 4 semanas por WhaS.

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 11 respuestas - de la 1 a la 11 (de un total de 11)
  • Moderador almendron

    (@almendron)

    En el depurador de Facebook aparece un 403 y lo siguiente: «This response code could be due to a robots.txt block. Please allowlist facebookexternalhit on your sites robots.txt config to utilize Facebook scraping»

    Prueba a añadir al robots.txt

    User-agent: facebookexternalhit
    Allow: /
    Iniciador del debate WhaS

    (@whas)

    mil gracias por tu respuesta!

    resulta que por algún motivo no existía ese archivo… :O he buscado y he visto que con el yoast lo puede hacer… y lo he dejado así… ¿Está correcto?
    saludos y gracias de nuevo!

    START YOAST BLOCK ---------------------------

    User-agent: facebookexternalhit
    Allow: /

    Sitemap: https://www.noticiasbierzo.es/sitemap_index.xml

    --------------------------- END YOAST BLOCK
    • Esta respuesta fue modificada hace 4 meses, 2 semanas por Sergio.
    Iniciador del debate WhaS

    (@whas)

    vale, me contesto a mi mismo….. siiiiiiiiii, ya estáaaaaa!!! era porque faltaba ese santo archivo!!! mil gracias!!!!!!!!!!

    Moderador almendron

    (@almendron)

    Por lo que veo, ha funcionado lo que te comenté.

    Ahora bien, te has «cargado» las dos líneas del robots.txt que también deberían aparecer

    User-Agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php
    Moderador almendron

    (@almendron)

    En realidad sí que existía. WordPress crea uno «al vuelo»: https://www.noticiasbierzo.es/robots.txt (ahora te sale el que crea Yoast).

    Ahora bien, como te decía, debes poner lo siguiente:

    User-Agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php

    User-agent: facebookexternalhit
    Allow: /

    Sitemap: https://www.noticiasbierzo.es/sitemap_index.xml

    https://yoast.com/help/how-to-edit-robots-txt-through-yoast-seo/

    Hola,

    Por lo que describes, parece que el problema está relacionado con las etiquetas Open Graph que utiliza Facebook para generar la vista previa de los enlaces.

    Aunque tengas Yoast SEO instalado, te recomiendo revisar algunos puntos:

    1. Comprueba si Yoast tiene activadas las funciones sociales:
      • Ve a SEO > Ajustes > Social y verifica que la opción de datos de Facebook/Open Graph esté habilitada.
    2. Limpia la caché:
      • Borra la caché de cualquier plugin de caché o del servidor.
      • Después prueba nuevamente con el Facebook Sharing Debugger y pulsa en “Scrape Again” para que Facebook vuelva a leer los datos actualizados.
    3. Revisa si otro plugin o el tema está generando etiquetas Open Graph duplicadas. Puedes inspeccionar el código fuente de la página y buscar:og:title og:description og:image Si aparecen varias veces, puede haber un conflicto entre Yoast, el tema u otro plugin.
    4. Comprueba la imagen configurada:
      • La imagen para compartir debe tener un tamaño recomendado por Facebook (por ejemplo 1200×630 px).
      • Asegúrate de que la URL de la imagen sea accesible públicamente y no esté bloqueada por permisos, firewall o reglas del servidor.

    Como mencionas que reinstalaste WordPress y desactivaste plugins, también revisaría si el hosting tiene algún sistema de caché o seguridad (por ejemplo, bloqueo de bots de Facebook), ya que Facebook necesita acceder a la página para leer las etiquetas.

    Si puedes compartir el resultado del Facebook Sharing Debugger o el código de las etiquetas Open Graph de una entrada concreta, sería más fácil encontrar el problema.

    Saludos.

    Hola.

    El error 403 que aparece en el depurador indica que Facebook no puede acceder al sitio para leer la imagen, el título y la descripción del enlace. En este caso, el bloqueo parece venir del archivo robots.txt.

    Accede al archivo robots.txt ubicado en la carpeta principal de tu web y añade estas líneas:

    User-agent: facebookexternalhit
    Allow: /

    Guarda el archivo, limpia la caché del sitio y vuelve a introducir la dirección de la publicación en el depurador de Facebook. Después utiliza la opción para solicitar una nueva extracción de la información.

    Si continúa mostrando el error 403, revisa también los plugins de seguridad o consulta con tu hosting, ya que el firewall del servidor podría estar bloqueando al rastreador de Facebook.

    No es necesario reinstalar WordPress para solucionar este problema.

    Saludos.

    ¡Hola!

    Me alegra saber que pudiste encontrar la causa del problema.

    Solo quisiera añadir una recomendación para futuras pruebas. Cuando se modifica el archivo robots.txt o las etiquetas Open Graph, es recomendable utilizar nuevamente el Facebook Sharing Debugger y seleccionar la opción «Scrape Again». De esta forma, Facebook vuelve a rastrear la página y actualiza la información almacenada en su caché, evitando que continúe mostrando una vista previa antigua.

    Además, si en algún momento el problema vuelve a presentarse, conviene revisar que el archivo robots.txt siga permitiendo el acceso al rastreador facebookexternalhit y que ningún plugin de seguridad, firewall o CDN esté bloqueando las solicitudes de Facebook.

    Gracias por compartir la solución en el hilo. Seguro será de ayuda para otros usuarios que se encuentren con el mismo inconveniente.

    ¡Un saludo!

    Moderador almendron

    (@almendron)

    Sigues teniendo mal el robots.txt. Como ya te he dicho , debe aparecer lo siguiente:

    User-Agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php

    User-agent: facebookexternalhit
    Allow: /

    Sitemap: https://www.noticiasbierzo.es/sitemap_index.xml

    https://yoast.com/help/how-to-edit-robots-txt-through-yoast-seo/

    Me da lo mismo que nos hagas caso, pero al menos ten la educación de responder.

    GMC FUERTE

    (@gmcfuerte)

    Hola, WhaS:

    Después de varios días peleándote con la vista previa, es normal que al ver que por fin funcionaba dieras el tema por cerrado. Aun así, almendron tiene toda la razón con lo del robots.txt, y merece la pena dedicarle dos minutos más.

    Al guardar el bloque de Yoast tal cual, se perdieron las reglas que WordPress incluye por defecto. Ahora mismo tu robots.txt no tiene ninguna regla para «User-agent: *», así que la indicación sobre /wp-admin/ ya no llega a ningún buscador. Tal como te dijo almendron, el archivo completo debería quedar así:

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php
    
    User-agent: facebookexternalhit
    Allow: /
    
    Sitemap: https://www.noticiasbierzo.es/sitemap_index.xml

    Y un detalle que te puede ahorrar muchos días si el problema vuelve: una regla de robots.txt no genera un 403. El robots.txt solo le pide al rastreador que no entre; el 403 lo devuelve siempre el servidor, o un cortafuegos delante de él. El depurador de Facebook a veces muestra los dos casos con el mismo mensaje, y ahí es donde se pierde el tiempo.

    Para saber en treinta segundos cuál de los dos es, lanza estas dos líneas desde cualquier terminal:

    curl -s -o /dev/null -w "%{http_code}" -A "facebookexternalhit/1.1" https://www.noticiasbierzo.es/
    curl -s -o /dev/null -w "%{http_code}" -A "Mozilla/5.0" https://www.noticiasbierzo.es/

    Si la primera devuelve 403 y la segunda 200, el bloqueo no está en WordPress: está en el cortafuegos del hosting o en un plugin de seguridad que filtra por user-agent. En ese caso basta con pedir al hosting que ponga en lista blanca facebookexternalhit (y, ya puestos, Twitterbot y LinkedInBot).

    Con eso quedas cubierto por los dos lados: los buscadores reciben las reglas correctas y, si Facebook vuelve a fallar, sabrás en un minuto dónde mirar.

    Un saludo.

    Hola,

    almendron tiene razón: el robots.txt sigue incompleto aunque la vista previa ya funcione.

    Al meter solo el bloque de Yoast para facebookexternalhit, se perdieron las reglas por defecto de WordPress. Debería quedar así:

    User-agent: *
    Disallow: /wp-admin/
    Allow: /wp-admin/admin-ajax.php

    User-agent: facebookexternalhit
    Allow: /

    Sitemap: https://www.noticiasbierzo.es/sitemap_index.xml

    Un detalle útil: robots.txt no provoca un 403. Solo dice al bot que no pida la página; el 403 lo pone el servidor o un firewall. Si con el robots bien vuelve el 403, mira hosting/seguridad (whitelist de facebookexternalhit, y de paso Twitterbot/LinkedInBot).

    Y si un día falla la imagen: WebP a veces no lo traga Facebook (mejor JPG/PNG en og:image), y og: duplicadas (Yoast + tema) confunden. Después de cada cambio: Sharing Debugger → Scrape Again.

    Un saludo.

Viendo 11 respuestas - de la 1 a la 11 (de un total de 11)

Debes estar registrado para responder a este debate.