Archivo mensualoctubre 2013

Wordpress

JSON API falla con los thumbnails

WordpressEstamos haciendo pruebas con JSON API en WordPress y nos dimos cuenta que la propiedad del post thumbnail (imagen destacada) falla (siempre da null).

Investigando un poco se ve que la imagen destacada depende de la propiedad postmeta _thumbnail_id. Por lo que habrá que enlazar el post actual con el post de tipo attachment con ID _thumbnail_id y obtener el guid que contiene la ruta a la imagen thumbnail (imagen destacada).

No sé si es una ñapa, pero para arreglarlo me metí en el código y lo modifiqué de la siquiente manera en el fichero www.example.com/wp-content/plugins/json-api/models/post.php:

  function set_thumbnail_value() {
    global $json_api;
    if (!$json_api->include_value(‘thumbnail’) ||
        !function_exists(‘get_post_thumbnail_id’)) {
      unset($this->thumbnail);
      return;
    }
    $attachment_id = get_post_thumbnail_id($this->id);
    if (!$attachment_id) {
      unset($this->thumbnail);
      return;
    }
    $thumbnail_size = $this->get_thumbnail_size();
    $this->thumbnail_size = $thumbnail_size;
    $attachment = $json_api->introspector->get_attachment($attachment_id);
    $image = $attachment->images[$thumbnail_size];
    $this->thumbnail = $image->url;
    //BEGIN
    if(!$this->thumbnail) $this->thumbnail = $this->get_other_thumbnail_value($this->id);
    //END
    $this->thumbnail_images = $attachment->images;
  }

### BEGIN ###
  function get_other_thumbnail_value($thumbnail_id) {
      $attachment_id = get_post_meta($thumbnail_id, “_thumbnail_id”, true);
      return get_post($attachment_id)->guid;

}
### END ###
 

Tortuga en un poste

La tortuga en el poste

Tortuga en un posteUn joven está paseando por la plaza de un pueblo y decide tomar un descanso.

Se sienta en un banco… al lado hay un señor de más edad y, naturalmente, comienzan a conversar sobre el país, el gobierno y finalmente sobre los Legisladores y similares.

El señor le dice al joven:

¿Sabe? – LOS POLÍTICOS Y DEMÁS, SON COMO UNA TORTUGA EN UN POSTE

Después de un breve lapso, el joven responde:

No comprendo bien la analogía… ¿Qué significa éso?, señor

Entonces, el señor le explica:

Si vas caminando por el campo y ves una tortuga encima de un poste de una alambrada haciendo equilibrio ¿Qué se te ocurre?

Viendo la cara de incomprensión del joven, continúa con su explicación:

Primero: No entenderás cómo llegó ahí.

Segundo: No podrás creer que esté ahí.

Tercero: Sabrás que no pudo haber subido solita ahí .

Cuarto: Estarás seguro que no debería estar ahí.

Quinto: Serás consciente que no va a hacer nada útil mientras esté ahí.

Entonces lo único sensato sería ayudarla a bajar.