Support » Plugin: Cyr-To-Lat » На сайте возникли технические проблемы – Class ‘WP_Background_Process’ not found

  • Resolved Max1mCom

    (@makspostal)


    Приветствую.

    После переноса сайта на локальный сервер, он не захотел работать.
    На почту админа пришло письмо, что:

    “В этот раз WordPress нашел ошибку с одним из плагинов – Cyr-To-Lat.”

    Подробности ошибки
    ===================================
    Ошибка с типом E_ERROR возникла на строке 11 файла \wp-content\plugins\cyr2lat\includes\background-processes\class-cyr-to-lat-conversion-process.php. Сообщение об ошибке: Class ‘WP_Background_Process’ not found

    После переактивации плагина сайт больше не ложится. Поэтому о помощи не прошу, а просто передаю информацию 🙂

Viewing 4 replies - 16 through 19 (of 19 total)
  • Max1mCom

    (@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.

    Plugin Author kaggdesign

    (@kaggdesign)

    В репозитории GitHub лежит “полуфабрикат” плагина, предназначенный для разработчиков. Там нет папок vendor и dist, и это правильно. Зато в файле README.md есть раздел Installation. Прочитайте его, пожалуйста. Без описанных там шагов плагин работать не будет.

    В официальном репозитории WordPress находится дистрибутив плагина, “готовый к употреблению”. Там есть папки vendor и dist, и это снова правильно, потому что без них плагин работать не будет.

    Ваша проблема в том, что вы берёте плагин с GitHub (как вы написали несколькими комментариями выше), и пытаетесь его использовать без установки. Вам следует брать готовый плагин из официального репозитория WordPress (через git-svn). Можно брать и из GitHub, но затем в обязательном порядке проводить его установку.

    Мы следуем современным паттернам проектирования плагинов, с использованием composer, webpack, ES6. Попробуйте скачать напрямую из репозитория на GitHub любой современный плагин, такой как Jetpack, Yoast, Gutenberg и вы потерпите аналогичное фиаско. Без своей процедуры установки эти плагины, взытые с GitHub, не работают.

    Max1mCom

    (@makspostal)

    Ваша проблема в том, что вы берёте плагин с GitHub (как вы написали несколькими комментариями выше), и пытаетесь его использовать без установки.

    Я этого не говорил 🙂
    Я устанавливаю все плагины (в том числе Yoast, Jetpack и многие другие) из админки WP.

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

    Если установить плагин через админку и затем поместить весь сайт целиком в репозиторий GIT (мне например так удобнее разрабатывать некоторые сайты локально и передавать заказчику или загружать на сервер двумя командами в консоли), а затем развернуть сайт из репозитория GIT, то часть файлов плагина отсутствует из-за .gitignore и возникает ошибка.

    Я не говорю, что это косяк или недоработка плагина, но с другими плагинами я подобного не наблюдал, скорее всего потому что они загружены в svn согласно требованиям WP 😉

    Plugin Author kaggdesign

    (@kaggdesign)

    Файл .gitignore не может создавать проблем. Ну ок, удалите его вручную.

    В той ссылке, что вы дали, много чего написано, например, что не надо включать папку vendor. Это некоторая общая рекомендация, которая для нашего случая (да и многих других) – неправильная.

    Пришлите, пожалуйста, в следующем сообщении zip-файл с папкой нашего плагина в том виде, как он создаёт проблему у вас на сайте.

Viewing 4 replies - 16 through 19 (of 19 total)
  • You must be logged in to reply to this topic.