Ограничений очень мало. Единственное существенное ограничение заключается в том, что шаблоны нельзя переопределять, и вам нужно добавлять новые элементы в существующие представления с помощью Plugin Outlets. Тем не менее, использование этого подхода в сочетании с CSS обычно позволяет добиться нужного результата.
Вы можете создавать новые маршруты и полностью контролировать их структуру.
Бэкенд более гибок.
Поэтому используйте официальные API по возможности, и необходимость переделки будет меньше, но вы никогда не сможете полностью исключить работу по поддержке.
Не разумно ожидать полного отсутствия необходимости в поддержке… просто посмотрите на мой аккаунт на GitHub и некоторые из моих популярных расширений, и вы увидите множество коммитов с пометкой «COMPATIBILITY:» ![]()
Хорошей практикой является поддержание тестового сервера, где вы можете тестировать обновления и проверять, не сломались ли ваши кастомизации — чем более кастомизирован ваш сайт, тем больше будет потребность в каком-либо тестовом экземпляре — хотя использование экземпляра для разработки также может помочь.