Есть ли способ разрешить плагину писать по предыдущей версии?

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

Есть ли способ принудительно перезаписать каталог или отключить плагин и удалить каталог при установке?

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

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

Если ваш плагин размещен в репозитории WordPress.org, он предложит пользователям установить обновления для вас. Вероятно, вы уже видели это с Akismet и другими плагинами.

Если ваш плагин не размещен в репозитории WordPress.org, есть еще несколько вещей, которые вы можете сделать. Многие премиальные тематические / плагиновые магазины включают в себя свои собственные скрипты обновлений. Это позволяет им выпускать обновления своим клиентам, которые используют стандартные механизмы обновления WordPress для загрузки нового пакета, установки его и удаления старых файлов.

Вот несколько примеров:

  • Класс обновления WordPress для коммерческих или клиентских плагинов
  • WordPress GitHub Plugin Updater – полезно, если вы размещаете свой плагин на GitHub, а не в репозитории WP.org
  • «Создание собственного репозитория плагинов» в главе 9 « Разработка плагинов WordPress» Примечание. Это партнерская ссылка