WordPress: gestire le immagini caricate da una webcam

WordPress: gestire le immagini caricate da una webcam

Se avete collegato una webcam al vostro sito in WordPress, potreste dover rimuovere le vecchie immagini generate dalla webcam.

Il problema si presenta quando la webcam carica tramite FTP le immagini quotidianamente ad intervalli regolari. Dobbiamo quindi mantenere la directory giornaliera ed eliminare le altre.

Possiamo creare un cronjob in functions.php:


function my_clean_webcam_images() {

  $base = ABSPATH . '/webcam';
  
  $it = new RecursiveDirectoryIterator( $base, RecursiveDirectoryIterator::SKIP_DOTS );
  $files = new RecursiveIteratorIterator( $it, RecursiveIteratorIterator::CHILD_FIRST );
  
  $current_images_dir = date( 'Y' ) . date( 'm' ) . date( 'd' ); // Nome della directory giornaliera
  
  foreach( $files as $file ) {
    if ( $file->isDir() && $file->getFilename() !== $current_images_dir ) {
      rmdir( $file->getRealPath()  );
    } else {
      unlink( $file->getRealPath() );
    }
  }
}

if ( !wp_next_scheduled( 'my_remove_webcam_images' ) ) {
    wp_schedule_event( time(), 'daily', 'my_task_remove_images' );
}

add_action( 'my_task_remove_images', 'my_clean_webcam_images' );

Torna su