Thread Starter
Max
(@makspostal)
Я всегда так делаю, когда работаю над одним сайтом из нескольких локаций 🙂
И проблема возникает только с вашим плагином.
Посмотрите примечания к этой статье: https://developer.wordpress.org/plugins/wordpress-org/how-to-use-subversion/
Don’t put anything in SVN that you’re not willing and prepared to have deployed to everyone who uses your plugin. This includes vendor files, .gitignore and everything else.
В репозитории GitHub лежит “полуфабрикат” плагина, предназначенный для разработчиков. Там нет папок vendor и dist, и это правильно. Зато в файле README.md есть раздел Installation. Прочитайте его, пожалуйста. Без описанных там шагов плагин работать не будет.
В официальном репозитории WordPress находится дистрибутив плагина, “готовый к употреблению”. Там есть папки vendor и dist, и это снова правильно, потому что без них плагин работать не будет.
Ваша проблема в том, что вы берёте плагин с GitHub (как вы написали несколькими комментариями выше), и пытаетесь его использовать без установки. Вам следует брать готовый плагин из официального репозитория WordPress (через git-svn). Можно брать и из GitHub, но затем в обязательном порядке проводить его установку.
Мы следуем современным паттернам проектирования плагинов, с использованием composer, webpack, ES6. Попробуйте скачать напрямую из репозитория на GitHub любой современный плагин, такой как Jetpack, Yoast, Gutenberg и вы потерпите аналогичное фиаско. Без своей процедуры установки эти плагины, взытые с GitHub, не работают.
Thread Starter
Max
(@makspostal)
Ваша проблема в том, что вы берёте плагин с GitHub (как вы написали несколькими комментариями выше), и пытаетесь его использовать без установки.
Я этого не говорил 🙂
Я устанавливаю все плагины (в том числе Yoast, Jetpack и многие другие) из админки WP.
Проблема в том, что в вашем плагине присутствует файл .gitignore если его устанавливать штатными средствами WP через админку.
Я привел ссылку, в которой сказано, что в репозиторий плагинов WP не нужно загружать подобные файлы.
Если установить плагин через админку и затем поместить весь сайт целиком в репозиторий GIT (мне например так удобнее разрабатывать некоторые сайты локально и передавать заказчику или загружать на сервер двумя командами в консоли), а затем развернуть сайт из репозитория GIT, то часть файлов плагина отсутствует из-за .gitignore и возникает ошибка.
Я не говорю, что это косяк или недоработка плагина, но с другими плагинами я подобного не наблюдал, скорее всего потому что они загружены в svn согласно требованиям WP 😉
Файл .gitignore не может создавать проблем. Ну ок, удалите его вручную.
В той ссылке, что вы дали, много чего написано, например, что не надо включать папку vendor. Это некоторая общая рекомендация, которая для нашего случая (да и многих других) – неправильная.
Пришлите, пожалуйста, в следующем сообщении zip-файл с папкой нашего плагина в том виде, как он создаёт проблему у вас на сайте.