Синхронизировать локальную установку WordPress с живым сайтом, используя gulp watch и синхронизацию браузера? - PullRequest
0 голосов
/ 08 мая 2018

Я создаю веб-сайт WordPress в своей локальной среде, используя gulp watch и browser-sync. Как бы я мог иметь возможность синхронизировать эту настройку локальной среды с живым веб-сайтом, чтобы изменения файлов и sass-компиляции, которые делаются в процессе разработки, автоматически развертывались на живом сайте? Также мне понадобится какой-нибудь метод синхронизации таблиц базы данных.

Приветствия

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

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

Если вы хотите выполнить развертывание с помощью задачи gulp, попробуйте vinyl-ftp . Из их документации:

var gulp = require( 'gulp' );
var gutil = require( 'gulp-util' );
var ftp = require( 'vinyl-ftp' );

gulp.task( 'deploy', function () {

    var conn = ftp.create( {
        host:     'mywebsite.tld',
        user:     'me',
        password: 'mypass',
        parallel: 10,
        log:      gutil.log
    } );

    var globs = [
        'src/**',
        'css/**',
        'js/**',
        'fonts/**',
        'index.html'
    ];

    // using base = '.' will transfer everything to /public_html correctly
    // turn off buffering in gulp.src for best performance

    return gulp.src( globs, { base: '.', buffer: false } )
        .pipe( conn.newer( '/public_html' ) ) // only upload newer files
        .pipe( conn.dest( '/public_html' ) );

} );

И обязательно посмотрите , чтобы безопасно настроить учетные данные ftp в gulp , прежде чем что-либо делать. Это очень хорошая статья. И .gitignore любой файл учетных данных!

0 голосов
/ 08 мая 2018

Я рекомендую против автоматической синхронизации вашей среды. Когда вы ломаете что-то локально, вы немедленно ломаете это и на производственном сервере.

Теперь, чтобы ответить на ваш вопрос, воспользуйтесь программой типа FTPBox Загрузите с их сайта

Для синхронизации базы данных вам необходимо написать скрипт импорта / экспорта на сервере и в вашей локальной среде и использовать что-то вроде mysqldump , чтобы поместить вашу базу данных в файл .sql. (при условии, что вы используете MySQL или MariaDB)

Опять же, я настоятельно рекомендую не делать этого и просто развертывать, когда у вас все стабильно.

...