Диклеймер — вносить изменения в ядро надо только когда по другому решить задачу невозможно. Это не приветствуется и считается плохим тоном. Любое обновление друпала может поломать ваши правки.
1. Создаём в папке core
git репозиторий:
cd /path/to/drupal/core
git init
git add .
git commit -am 'Initial commit'
2. Вносим правки в файлы ядра.
3. Создаём патч в папке patches
:
mkdir /path/to/drupal/patches
cd /path/to/drupal/core
git diff > /path/to/drupal/patches/my-drupal-core-hacks.path
Важно, чтобы папка patches
находилась рядом с основным composer.json
4. Устанавливаем пакет cweagans/composer-patches
:
cd /path/to/drupal
composer require cweagans/composer-patches
5. Добавляем информацию о патче в основной composer.json
:
{
...
"extra": {
"patches": {
"drupal/core": {
"My drupal core hacks": "patches/my-drupal-core-hacks.patch"
}
}
}
}
6. Удаляем git репозиторий из core
:
rm -rf /path/to/drupal/core/.git
Теперь при обновлении ядра композером будет автоматически накатываться патч. Аналогично можно вносить правки и в сторонние модули.
Написанное актуально для
Drupal 8+
Добавить комментарий