Estoy al límite de mi ingenio porque desafía toda lógica. No tiene sentido por qué esto no funciona. He pasado aproximadamente una docena de horas intentando solucionar este problema. Básicamente, quiero usar el webhook de Discord y enviar una inserción en lugar de usar las etiquetas OpenGraph porque quiero que se vea mejor. Lo tengo todo funcionando completamente pero no aparece la imagen. Confesaré que utilicé un complemento para enviar a Discord porque es importante ser honesto. No escribí todo. Sin embargo, en todas mis horas y horas de prueba, estuve editando la función de imagen y viendo el resultado (o la falta del mismo) a través de mi propio código.
Sé que los datos están ahí porque puedo:
– ver la imagen destacada en el sitio web
– Puedo ver todos los datos y ejecutar la consulta dentro de phpmyadmin.
En caso de que fuera un problema con la inserción de discordia, pasé a mostrar simplemente el retorno como una cadena. Entonces, no importa lo que devolviera, mostraba, por ejemplo, que obtuve «Matriz» y luego intenté iterar y me di cuenta de que era solo una matriz en blanco, etc. Verifiqué todo dos veces. Al llamar a esta función de imagen, pasó el post_id y siempre lo envié para asegurarme de que se mostrara correctamente, y así poder rastrear que la imagen destacada estaba vinculada correctamente en la base de datos. Obviamente no puedo haber pensado en todo o habría encontrado lo que estaba mal, pero debo haber hecho casi 100 pruebas hasta ahora, probando gradualmente diferentes cosas para ver dónde se estaba rompiendo.
Inicialmente utilicé el tipo normal de funciones para recuperarlo: get_post_thumbnail_id(), wp_get_attachment_image_src() pero al igual que has_post_thumbnail no obtenía nada, matrices vacías en blanco, etc. Así que intenté de todas las formas posibles obtener los datos (no veo el sentido de enumerarlos todos, no creo que pueda recordar todo lo que hice a lo largo de las horas), pero finalmente, como último recurso, hice una consulta directa a la base de datos, todavía en blanco. ¡Así es como sé que está pasando algo realmente extraño! Dentro de phpmyadmin, la misma consulta muestra datos, pero en el código simplemente devuelve un espacio en blanco.
Entonces pensé, aunque aparecía todo lo demás (autor, título, descripción de la publicación, marca de tiempo, etc.) que tal vez había un problema con la tabla postmeta. Quizás se estaba disparando a la discordia antes de escribir los datos.
Mi siguiente intento fue usar la API. Para hacerlo más simple, agregué una acción que encontré en stackoverflow, creo, a las funciones del tema, para codificar la URL de la imagen destacada directamente en la API de publicación. Puedo abrir la página API y está todo allí. Probé la llamada a la API generando una fila diferente (enlace, por lo que incluso tenía el mismo formato de datos); apareció perfectamente, pero uso fimg_url (que puedo ver en la página de la API) y nada, solo en blanco. Así que intenté llamar a la API de wp:featuredmedia que ya existía antes de que me entrometiera, también en blanco.
Básicamente, no importa cómo intente mostrar los datos de la miniatura, simplemente regresan en blanco. Lo cual NO TIENE SENTIDO porque puedo ver la imagen en miniatura, puedo encontrar todas las filas que debería encontrar en la base de datos, puedo rastrear todo y todo es exactamente como debería ser. Entonces, ¿por qué vuelve en blanco? ¡Siento que me estoy volviendo loco!
Gracias por tu tiempo.