Supponiamo che tu voglia utilizzare la funzione di anteprima dei post di WordPress, ma disponi di un intero archivio di post che richiederebbe troppo tempo per essere esaminati. Per i nuovi post, puoi essere specifico e utilizzare la funzione come previsto. Per i vecchi post, vuoi solo usare la prima immagine che trova nel contenuto per la miniatura o un'impostazione predefinita se non è presente.
Aggiungilo a functions.php o crea un plugin di funzionalità:
function catch_that_image() ( global $post, $posts; $first_img = ''; ob_start(); ob_end_clean(); $output = preg_match_all('//i', $post->post_content, $matches); $first_img = $matches(1)(0); if(empty($first_img)) ( $first_img = "/path/to/default.png.webp"; ) return $first_img; )
Per usarlo, usa questo codice nel ciclo:
if ( get_the_post_thumbnail($post_id) != '' ) ( echo ''; the_post_thumbnail(); echo ''; ) else ( echo ''; echo '
'; echo ''; )
Ho scoperto che has_post_thumbnail non era affidabile come la logica sopra.