Получение папки, включающей все подкаталоги и файлы, так как они используют GULP

Я пытаюсь заархивировать папку и все ее подкаталоги и файлы, включенные с помощью gulp-zip. Я пробовал эти коды:

gulp.src('wp_plugins/zion_slider/')
    .pipe(zip('zion_slider.zip'))
    .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));

Этот просто берет папку, а не подкаталоги или файлы

gulp.src('wp_plugins/zion_slider/**/*.*')
    .pipe(zip('zion_slider.zip'))
    .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));

Этот принимает только файлы и подкаталоги, а не родительский.

Поскольку я хочу сжать родительскую папку, подкаталоги и файлы, ни одно из вышеперечисленного не работает для меня.

Кто-нибудь может предложить что-нибудь, пожалуйста?

Заранее спасибо.

1 ответ

Решение

Установите базовый каталог в gulp-src

gulp.src('wp_plugins/zion_slider/*', {base: './'})
    .pipe(zip('zion_slider.zip'))
    .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));

РЕДАКТИРОВАТЬ

Правильно, я неправильно понял и ошибся. Вот попробуй это. Результатом является почтовый файл с именем zion_slider.zip который содержит zion_slider/ папка со всеми файлами и подкаталогами. Вы можете поиграть с путями, чтобы получить то, что вы хотите. Например, если вы хотите, чтобы файл.zip не содержал папку zion_slider, которую вы можете использовать {base: wp_plugins/zion_slider }

gulp.task('default', () => {
    gulp.src('wp_plugins/**/*', {base: './wp_plugins'})
        .pipe(zip('zion_slider.zip'))
        .pipe(gulp.dest('dist'));
});

РЕДАКТИРОВАТЬ

    gulp.src('wp_plugins/zion_slider/**')
    .pipe(zip('zion_slider.zip'))
    .pipe(gulp.dest('wp_boilerplate/inc/plugins/'));

Это тоже работает.

Другие вопросы по тегам