manager - Facebook Open Graph no borra el caché
open graph facebook (19)
Estoy teniendo problemas con mis etiquetas meta con Open Graph. Parece que Facebook está almacenando en el caché valores antiguos de mis metaetiquetas. Los valores antiguos para los atributos og:title
y og:url
se siguen utilizando, aunque ya los cambié.
Ejecuté Lint en una página de mi sitio , y esto apareció:
Observe que hay dos valores para og:title
y og:url
, y el último prevaleció. Sin embargo, las dos últimas entradas son las entradas ANTIGUAS que utilicé para este sitio. Actualmente estoy usando estas metaetiquetas (puedes verificar si ves el código fuente del HTML):
<meta property="og:title" content="Smart og rummelig pusletaske fra Petit Amour med god plads til alt – værdi 1.099 kr – køb nu kun 599 kr "/>
<meta property="og:description" content="Pinq.dk - Det gode liv for det halve"/>
<meta property="og:type" content="product"/>
<meta property="og:url" content="http://pinq.dk/tilbud/landsdaekkende/lissy/"/>
<meta property="og:image" content="http://pinq.dk/wp-content/themes/pinq/images/logo-top.png"/>
<meta property="og:site_name" content="Pinq" />
<meta property="fb:app_id" content="161840830532004" />
¿Por qué Facebook caching og:title
y og:url
? ¿Alguien está experimentando el mismo problema?
- Vaya a http://developers.facebook.com/tools/debug
- Ingrese la siguiente URL
fbrefresh=CAN_BE_ANYTHING
Ejemplos:
-
http://www.example.com?fbrefresh=CAN_BE_ANYTHING
-
http://www.example.com?postid=1234&fbrefresh=CAN_BE_ANYTHING
- O visita:
http://developers.facebook.com/tools/debug/og/object?q=http://www.example.com/?p=3568&fbrefresh=89127348912
Estaba teniendo el mismo problema anoche, y obtuve esta solución de algún sitio web.
Facebook guarda su miniatura de caché. No se actualizará aunque elimine la imagen / imágenes en miniatura de su servidor. Pero Facebook te permite actualizar usando fbrefresh
Espero que esto ayude.
- Visite la página FB https://developers.facebook.com/tools/debug/og/object/
- Ingrese su dominio
- Haga clic en el botón "Obtener nueva información de raspado"
- Hecho
Pegue en la URL de la página y haga clic en depurar. Si su sitio usa alias de URL, asegúrese de estar utilizando la misma URL que Facebook utiliza para la página que está compartiendo (ejemplo: en Drupal utilice la ruta de nodo / * en lugar del alias si la página se comparte a través de esa url).
- Haga clic en la parte "Compartir vista previa" en el vínculo "Ver esto en el cuadro de diálogo compartido"
Acabamos de encontrarnos con esto, ya que resulta que no estábamos lanzando la url correcta, ya que la url real tenía una cadena de consulta (duh, página diferente en lo que se refiere a un bot).
http://example.com/
! ==
http://example.com/?utm_campaign=foo
El linter recapitulará tu página, no tienes que esperar.
Básicamente, la respuesta es paciencia;)
Revisé el Linter esta mañana, y og: title y og: url se muestra correctamente, sin los valores redundantes. Supongo que FaceBook borra automáticamente su caché en un intervalo específico. Solo tengo que esperar.
Descubrí que si tu imagen es de 72 ppp, te dará el error de tamaño de la imagen. Use 96dpi en su lugar. Espero que esto ayude.
Es un caché, de lo contrario se actualiza, eso es lo que el caché debe hacer de vez en cuando. Entonces, la espera finalmente funcionará, pero a veces es necesario hacerlo más rápido. Cambiar el nombre de archivo funciona.
La miniatura OG no parece actualizarse incluso si pasa la variable fbrefresh. Para actualizar esto sin esperar a que se elimine automáticamente, deberá cambiar el nombre del archivo del valor de la metaetiqueta asociada y actualizar.
La pregunta más votada es bastante obsoleta:
Estas son las únicas 2 opciones que se deben usar a partir de noviembre de 2014 :
Para no desarrolladores
- Use el FB Debugger: https://developers.facebook.com/tools/debug/og/object
- Pega la url que quieres recache. (Asegúrese de utilizar la misma URL incluida en su etiqueta og: url)
- Haga clic en el botón Obtener información de raspado de nuevo
Para desarrolladores
- Realice una llamada GET programáticamente a esta URL: https://graph.facebook.com/?id=[YOUR_URL_HERE]&scrape=true (consulte: https://developers.facebook.com/docs/games_payments/takingpayments#scraping )
- Asegúrese de que la etiqueta og: url incluida en la cabecera de esa página coincida con la que está pasando.
- incluso puede analizar la respuesta json para obtener el número de acciones de esa URL.
Información adicional sobre la actualización de imágenes
- Si la URL de la imagen og: sigue siendo la misma, pero la imagen realmente ha cambiado, los raspadores de Facebook no la actualizarán ni recapitutarán, incluso haciendo lo anterior. (incluso al pasar a? last_update = [TIMESTAMP] al final de la url de la imagen no funcionó para mí).
- La única solución eficaz para mí ha sido asignar un nuevo nombre a la imagen.
Nota sobre actualizaciones de imágenes o videos en publicaciones publicadas anteriormente:
- Cuando llame al depurador para eliminar los cambios en sus og: etiquetas de su página, todas las acciones anteriores de Facebook de esa URL seguirán mostrando la imagen / video anterior. No hay forma de actualizar todas las publicaciones anteriores y es así por diseño por razones de seguridad. De lo contrario, alguien podría pretender que un usuario compartió algo que él / ella realmente no tenía.
Lo siento amigos pero la respuesta correcta es:
No hay una forma infalible de actualizar el gráfico abierto og: imagen url con resultado inmediato. Se almacena en caché hasta que fb se actualice (según informes cada 24 horas)
Aquí hay cosas que han sido reportadas para que funcionen por otros, pero he tenido éxito CERO con cualquiera de ellas.
- Elegir "Obtener nueva información de raspado"
- Cambiar el nombre de archivo de la imagen real y / o eliminar el original
- Agregar una cadena de consulta a la url de la imagen añadiendo un PHP TIMESTAMP o? Cualquier cosa
- Agregar la cadena de consulta "... yoursite.com/?fbrefresh=anything" a la URL de recuperación del depurador
- Elegir el enlace API de gráfico en la parte inferior de la página de desarrollo de og
- Elegir ver exactamente lo que ve el raspador no parece solicitar datos de raspado no almacenados en caché en tiempo real, aún muestra la url de la imagen en caché, incluso si el archivo ya no existe.
La inspección de su código siempre es un punto en camino para confirmar que no es un problema con el caché del navegador o con algún servicio de caché. Si la metainformación está actualizada en su código y ha intentado todo lo anterior (a menos que se haga realidad otra sugerencia), la respuesta correcta es que no puede hacer nada más que esperar .
Los documentos para desarrolladores de Facebook dicen que la propiedad del título tiene una excepción:
Una vez que se hayan asociado 50 acciones (Me gusta, acciones y comentarios) con un objeto, no podrá actualizar su título
Ooook, finalmente me ayudó (yo uso IP.Board). Lo que tenía que hacer era:
- Cambiar la URL de og: image en mi sitio web (configuración general).
- Pruebe este método con? Fbrefresh = 1154464gd56
¡Gracias al autor por este hilo!
EDITAR: Lo que necesita recordar sobre los requisitos de imagen. Por ahora (enero de 2013) es: - al menos 200 px en ambas direcciones - relación máxima 3: 1
Para mí, todas las soluciones no funcionaron. Descubrí que si estás usando Wordpress con Yoast SEO, entonces debes actualizar estas dos etiquetas:
<meta property="article:modified_time" content="2017-09-29T00:37:33+02:00" />
<meta property="og:updated_time" content="2017-09-29T00:37:33+02:00" />
Para actualizar los valores, debe enviar cualquier cambio al artículo. Si no cambia esta fecha, la memoria caché de Facebook no se actualizará.
También puede desactivar estas etiquetas adicionales agregando filtros en functions.php
:
add_filter( ''wpseo_og_article_published_time'', ''__return_false'' );
add_filter( ''wpseo_og_article_modified_time'', ''__return_false'' );
add_filter( ''wpseo_og_og_updated_time'', ''__return_false'' );
Sí, Facebook borra automáticamente el caché cada 24 horas: en realidad, Facebook raspa las páginas y actualiza el caché cada 24 horas https://developers.facebook.com/docs/reference/plugins/like/#scraperinfo .
Si tiene muchas páginas y no desea actualizarlas manualmente, puede hacerlo automáticamente.
Digamos que tienes página de perfil de usuario con foto:
$url = ''http://''.$_SERVER[''HTTP_HOST''].''/''.$user_profile;
$user_photo = ''http://''.$_SERVER[''HTTP_HOST''].''/''.$user_photo;
<meta property="og:url" content="<?php echo $url; ?>"/>
<meta property="og:image" content="<?php echo $user_photo; ?>"
Solo agrega esto a tu página:
// with jQuery
$.post(
''https://graph.facebook.com'',
{
id: ''<?php echo $url; ?>'',
scrape: true
},
function(response){
console.log(response);
}
);
// with "vanilla" javascript
var fbxhr = new XMLHttpRequest();
fbxhr.open("POST", "https://graph.facebook.com", true);
fbxhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
fbxhr.send("id=<?php echo $url; ?>&scrape=true");
Esto actualizará la memoria caché de Facebook. Si usa la solución jQuery, eche un vistazo a "response" en console.log - encontrará el campo "updated_time" y otra información útil.
Tuve los mismos problemas al usar og:image
, varios intentos para cambiar el nombre del archivo o borrar la caché de FB no funcionó ni a través del depurador de Facebook ni a través de una cuenta real.
Las nuevas pautas de Facebook indican que el tamaño de la imagen debe ser de 1200 x 630 o que tiene esa relación de aspecto, esto parece estar mal, lo único que funcionó para mí fue el uso de una imagen con dimensiones cuadradas .
Editar * Unas pocas horas volví a usar 1200 x 630 y mágicamente funcionó, fue mágico.
También cambié el nombre de los archivos a f * ^ * kfacebook.jpg, pero no estoy seguro de si me ayudó, pero me sentí bien.
Tuve una experiencia similar. El enlace del sitio web mostraba un 404 en la vista previa que Facebook generó. Resulta que los metadatos de og: url estaban equivocados. Ya lo habíamos solucionado hace unos días, pero seguíamos viendo un 404 en la vista previa. Usamos la herramienta en https://developers.facebook.com/tools/debug/ y eso forzó la actualización (no fue necesario agregar ningún parámetro). En nuestro caso, Facebook no actualizó el caché después de 24 horas. horas pero la herramienta ayudó a forzarlo.
Una cosa para agregar, la url es sensible a mayúsculas y minúsculas . Tenga en cuenta que:
apps.facebook.com/ HOLA
es diferente en los ojos del linter
apps.facebook.com/ hola
Asegúrese de usar la url exacta del sitio que se ingresó en la configuración del desarrollador para la aplicación. El linter devolverá las propiedades de lo contrario, pero no actualizará la caché.
Yo estaba teniendo este problema también. El raspador muestra la información correcta, pero la url compartida todavía estaba poblada con datos antiguos.
La forma en que resolví esto fue usar el método de alimentación, en lugar de compartir, y luego llenar los datos manualmente (lo cual no está expuesto con el método de compartir)
Algo como esto:
shareToFB = () => {
window.FB.ui({
method: ''feed'',
link: `signup.yourdomain.com/?referrer=${this.props.subscriber.sid}`,
name: ''THIS WILL OVERRIDE OG:TITLE TAG'',
description: ''THIS WILL OVERRIDE OG:DESCRIPTION TAG'',
caption: ''THIS WILL OVERRIDE THE OG:URL TAG''
});
};