smidl
@smidl
WordPress-разработчик

Разработка сайта на WordPress и git (github)?

Делаю сайты на WordPress, необходимо держать готовые проекты на гитхабе... Но возникли вопросы:

1) В репозиторий выливать что? Основная масса правок и файлов - папка темы, но добавляются же и картинки и плагины...
2) Как быть с базой данных? Как ее свежую хранить всегда?
3) Как вообще правильно работать в данном случае?

Обычно у меня процесс разработки происходит так: локальный сервер -> тестовый сервер -> сервер заказчика

з.ы. Я читал похожие вопросы, ответов на мои вопросы либо не было, либо они были неполные
  • Вопрос задан
  • 12713 просмотров
Решения вопроса 3
zorca
@zorca Куратор тега WordPress
Посмотрите на структуру Bedrock для профессиональной разработки: Bedrock .
Ядро лежит отдельно и в гит само собой не попадает, плагины подтягиваются не через админку, а через Composer, и не требуют сохранения в гит. Что еще стоит включать в гит, зависит от проекта. Возможно папку аплоада, за исключением откровенно мусорных кешей и прочего. Базу можно дампами выкладывать в корень проекта, через тот же wp db export. Миграции до Wordpress еще не доползли, я пока не знаю как решать этот вопрос.
Ответ написан
Комментировать
Evanre
@Evanre
Front-end developer
Если чисто по коду, сам гит у меня лежит в корневой папке WordPress. `.gitignore` файл выглядит примерно вот так:
# PHPStorm
.idea

# WordPress
*.log
/wp-*.php
/index.php
/xmlrpc.php
/license.txt
/readme.html
/sitemap.xml
/sitemap.xml.gz

/backup*

wp-admin/
wp-includes/

wp-content/*
!wp-content/themes/
wp-content/themes/*

!wp-content/plugins/
wp-content/plugins/*

!wp-content/themes/ei/
!wp-content/themes/ei-child/

!wp-content/plugins/realty-export

# Frontend tools
wp-content/themes/ei-child/node_modules/

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

По бэкапам.
Бекап делаю через плагин BackUpWordPress (очень удобная вещь, можно делать бекапы всего сайта и базы по расписанию, Вам на почту приходит письмо с ссылкой на скачивание бекапа), экспорт базы на другой сервер делаю с помощью WP Migrate DB (он не просто заменяет пути в базе но и правит под них сериаллизованые массивы, таким образом некоторые настройки не слетают). Знаю что можно все делать через wp-cli, но он далеко не на каждом сервере стоит, и так уже привычнее. Мне обычно чтобы слить клиентский сайт для работы на локалке даже фтп не нужен, только доступ в админку.

При работе с сервером заливаю файлы прогой WinSCP, она может как FTP так и SFTP, так же умеет синхронизировать папки (заливать только то, что изменилось), на крупных проектах настраиваю синхронизацию в PHPStorm.
Ответ написан
Комментировать
berezuev
@berezuev
#define TRUE FALSE
Вообще, не очень понятна цель мероприятия...
Базу в Git не хранят вообще (только миграции).
Если для бекапов и быстрого переноса, то тут скорее Docker нужен...

Либо, пишите скрипты под wp-cli и их в Git. Хотя, тут тоже удобнее с Docker'ом, чтобы разворачивать все одной командой...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@mihanentalpo
У меня есть мануал и набор самодельных инструментов для работы с WordPress посредством git-репозитория.
https://mihanentalpo.me/2017/03/wordpress-по-челов...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы