Изменение плагинов WordPress
У меня, вероятно, очень простой вопрос о внесении изменений в плагин WordPress. Прошу прощения за простоту своего вопроса, так как я новичок в работе с кодом, который может быть открытым и новым для разработки плагинов.
Я нашел плагин, который предоставил хорошее решение для проекта, над которым я работал. Однако, чтобы он работал лучше для моих нужд, я изменил код. Плагин имеет «GPLv2 или более позднюю версию » лицензия, которая , основываясь на этом , кажется, говорит , что изменения в плагин отлично, до тех пор , как я отмечаю любые изменения , я сделал и что я публикую плагин под «GPLv2 или более поздней версией » лицензия тоже.
Из-за изменений, которые я внес в плагин, я хотел бы иметь возможность предоставлять его другим в рамках работы с клиентами. Однако я не уверен, как лучше двигаться дальше.
Было бы лучше опубликовать плагин с лицензией «GPLv2 или новее» и обновить его самостоятельно (я внес в плагин очень незначительные изменения)?
Или мне было бы лучше связаться с первоначальным владельцем плагина, чтобы сотрудничать и предлагать свои изменения? Если первоначальный владелец не принимает мои изменения, какие у меня варианты?
Чтобы ответить на вопросы @wrydere:
- Плагин бесплатный, в настоящее время не предлагает платных обновлений и не приносит никакой прибыли.
- Определенно нет времени на поддержку моей версии плагина. Было бы хорошо, если бы я мог для клиентов, но я не думаю, что это происходит на самом деле. Однако, если бы я сохранил свою собственную вилку плагина, если бы первоначальный владелец подталкивал обновления, я бы принял эти обновления (вместе с моими собственными изменениями), чтобы панель управления WordPress постоянно сообщала мне об обновлении плагина (потому что код не не "совпадать")? По сути, я хотел бы иметь возможность принимать обновления от владельца каждый раз, когда обновления отправляются, и при этом сохранять свои изменения без уведомления WordPress о том, что мне нужно «обновить» плагин.
- На данный момент нет, я не думаю, что поведение должно быть реализовано во вторичном плагине. Может быть? Наверное. Но большая часть тяжелой работы уже была сделана с помощью этого плагина, поэтому создание нового было бы воссозданием колеса.
Ответы
В духе программного обеспечения с открытым исходным кодом я бы определенно начал с обращения к первоначальному разработчику. Если ваши изменения являются улучшением кодовой базы и не развивают функциональность плагина в новом направлении, сотрудничество может приветствоваться.
Если ваши изменения отклонены первоначальным разработчиком, есть еще несколько вещей, которые следует учитывать, прежде чем двигаться дальше:
Плагин, который вы изначально создали, бесплатный или платный? Или это бесплатно, но с платными обновлениями (freemium)? Если он каким-либо образом приносит доход, его форк и повторный выпуск с незначительными изменениями морально сомнительны.
У вас есть время, пропускная способность и желание поддерживать новую, разветвленную версию исходного плагина? В противном случае вы, вероятно, не захотите публиковать его публично только для того, чтобы передать свои очень незначительные изменения в руки других людей. Возможно, вам будет лучше просто сохранить свою собственную вилку плагина для своих собственных проектов.
Можно ли изменить поведение во вторичном плагине? Существует довольно много примеров плагинов, которые требуют / изменяют / создают другие плагины. Этот маршрут требует быть в курсе обновлений как ядра WP, так и исходного плагина, что может быть головной болью, но если есть возможность внести изменения с помощью хуков, действий и (безопасного и разумного) переопределения функций из исходного плагина, это может быть путь для изучения.
Извините за то, что не дал окончательного ответа, но ситуация может указать на множество возможных результатов.