function tm_zip_all_barcode(){
    $upload_dir   = wp_upload_dir();   
    // Get real path for our folder
    $rootPath = $upload_dir['basedir'].'/barcode';

    // Initialize archive object
    $zip = new ZipArchive();
    $zip->open($upload_dir['basedir'].'/barcode.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE);

    // Create recursive directory iterator
    /** @var SplFileInfo[] $files */
    $files = new RecursiveIteratorIterator(
        new RecursiveDirectoryIterator($rootPath),
        RecursiveIteratorIterator::LEAVES_ONLY
    );

    foreach ($files as $name => $file)
    {
        // Skip directories (they would be added automatically)
        if (!$file->isDir())
        {
            // Get real and relative path for current file
            $filePath = $file->getRealPath();
            $relativePath = substr($filePath, strlen($rootPath) + 1);

            // Add current file to archive
            $zip->addFile($filePath, $relativePath);
        }
    }

    // Zip archive will be created only after closing object
    $zip->close();    
}

 

Bài viết liên quan

post-no-image

Tuỳ biến phần search WordPress chính xác hơn, tìm kiếm theo tiêu đề

post-no-image

Cách quét và tìm virus trong Database WordPress để loại bỏ mã độc Malware

post-no-image

Hướng dẫn custom Multiselect box

post-no-image

Tránh gửi mail nhiều lần khi nhấn gửi form trong contact form 7

post-no-image

Hướng dẫn tạo email template để gửi mail qua: Outlook App, Outlook website, Gmail, Apple Mail…

post-no-image

Hướng dẫn tắt tính năng mua hàng nhưng vẫn hiển thị giá trong Woocomerce