Я делаю это для моего сайта жены http://www.beccablake.com. Она также фотограф. Я создал собственный модуль (она использует drupal в качестве CMS) для загрузки zip-файла, содержащего все картинки. После загрузки я извлекаю zip и перебираю все файлы и создаю новые узлы для каждого. Вот фрагмент кода из этого модуля, который может помочь вам сделать то, что вы хотите.
<?php
$file = 'path/to/zip/pictures.zip';
$dest = 'path/to/pictures/directory';
exec('unzip "'. $file .'" -d '. $dest);
// If you need to do something with each file (like I do)
$files = scandir($dest);
?>
Это предполагает, что вы можете выполнить exec на вашем сервере, чтобы распаковать его. Мой код сильно отличается, так как я делаю больше с фотографиями, так как он в Drupal, я создаю галерею пробных проверок, и каждая картинка - это свой собственный узел, чтобы пользователи могли комментировать / оценивать / добавлять фотографии в избранное ... и т.д.
Удачи!