Posso aggiornare le miniature di programmazione?
-
16-10-2019 - |
Domanda
Mi piacerebbe essere in grado di aggiornare la miniatura della cache a livello di codice, non è sicuro dove agganciarlo, ma al momento tutto il disegno implica carichi ri-caricamento di immagini!
Soluzione
Si consiglia di guardare il plugin Rigenera Anteprime dal Viper007Bond .
In sostanza, questo è come farlo:
function regenerateThumbnails() {
$images = $wpdb->get_results( "SELECT ID FROM $wpdb->posts WHERE post_type = 'attachment' AND post_mime_type LIKE 'image/%'" );
foreach ( $images as $image ) {
$id = $image->ID;
$fullsizepath = get_attached_file( $id );
if ( false === $fullsizepath || !file_exists($fullsizepath) )
return;
if ( wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $fullsizepath ) ) )
return true;
else
return false;
}
}
Nota: Questa funzione non è molto scalabile. Sarà ciclo attraverso tutte le immagini e le miniature rigenerati uno per uno, che può consumare una grande quantità di memoria. Quindi, si consiglia di valorizzarlo.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange