Saltar al contenido

Código para agregar imágenes destacadas de forma automática en WordPress

Cuando he decidido cambiar a un nuevo tema después de unos cuantos años con el mismo me he encontrado con un pequeño problema. Antiguamente los temas no solían tener imágenes destacadas y las resoluciones eran diferentes.

Me acuerdo perfectamente de el primer momento en el que empecé a escribir en el blog, lo tome con gran ilusión pero no tenía ni idea de programar (poca más tengo hoy) y me decanté por un tema que me sirvió en su momento para posicionar los artículos de buena forma. La forma de hacer SEO ha cambiado.

Ahora, con nuestro nuevo tema tenemos que asignar imágenes destacas y me he dado cuenta de que tenía más de 2000 artículos con las imágenes sin asignar y que, a partir de ahora, tengo que acordarme de asignar la imagen de forma manual.

¿Quieres librarte de problemas? Existen un pequeño fragmento de código que nos permite asignar las imágenes destacas de forma automática en WordPress in problema alguno. Ya no solo es útil para cuando nos olvidamos sino que nos permite asignar la imagen destacada de forma automática (incluso en los que ya hay publicados).

Este es el código que hay que pegar en el archivo Functions.php de WordPress.

function auto_post_thumbnail() {          global $post;          $already_has_thumb = has_post_thumbnail($post->ID);               if (!$already_has_thumb)  {               $attached_image = get_children( «post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1» );                           if ($attached_image) {                                 foreach ($attached_image as $attachment_id => $attachment) {                                 set_post_thumbnail($post->ID, $attachment_id);                                 }                            } else {                                 set_post_thumbnail($post->ID, ‘ID_imagen_por_defecto’);                            }                         }       } //Final de la función add_action(‘the_post’, ‘auto_post_thumbnail’); add_action(‘save_post’, ‘auto_post_thumbnail’); add_action(‘draft_to_publish’, ‘auto_post_thumbnail’); add_action(‘new_to_publish’, ‘auto_post_thumbnail’); add_action(‘pending_to_publish’, ‘auto_post_thumbnail’); add_action(‘future_to_publish’, ‘auto_post_thumbnail’);

Además de eso, la función también nos permite agregar una imagen predefinida para todos aquellos artículos que no tengan imagen. (En donde pone ID_imagen_por_defecto habría que insertar la URL de la imagen que qeremos asignar.

Está un poco desordenado pero ten en cuenta que va a funcionar. Solo tendrás que copiar la función entera y agregarla al archivo functions.php de tu tema WordPress y se encargará por ti de agregar todas las imágenes destacas a los artículos de WordPress.

Es una función realmente interesante y versátil, gracias a Cristalab por ofrecerla, ellos mismos la explican paso a paso en su web.