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

В мире WordPress так принято.

Как правило тут происходит 2 варианта сценария:

1. В 80% случаев удается найти решение, которое можно реализовать через интеграцию со сторонними компонентами. В большинстве случаев это происходит за счет подсистемы хуков.

2. В 20% случаев приходится писать дополнение или хук к чужому плагину, который затем отправляется автору с просьбой включить в новых версиях.

Пример второго сценария:

1. Есть расширение Post by Email, которое было разработано девушкой Kat Hagan в рамках мероприятия Google Summer of Code 2013.

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

Это как раз крайний случай. Мы добавили хук отключения фильтрации текста. Усложнив весь код плагина на 2 строчки 🙂

И попросили Kat включить это изменение в новые версии https://github.com/codebykat/wp-post-by-email/issues/21

На кривом английском 🙂

Наша совесть чиста. В крайнем случае, если Kat не согласует изменение, мы просто сольем ее плагин в наш. Но это крайний вариант. Он не желателен и редок.