Рекомендации по редактированию контроллера umbraco

Я хочу внести небольшое изменение в способ отображения текста на панелях в сетке Umbraco.

Я обнаружил, что могу внести изменения в nestedcontent.controllers.js всего за несколько строк, и это работает.

Однако, если/когда мы обновим Umbraco, это изменение может быть утеряно.

Каковы лучшие практики? Альтернативные способы изменения поведения Umbraco?


person Sam Jones    schedule 05.07.2017    source источник
comment
Где вы делаете, что внести изменения? В бэкенде или на фронтенде. А вы про вложенный контент или про сетку umbraco? Это разные звери.   -  person dampee    schedule 10.07.2017


Ответы (3)


Давайте попробуем ответить на это кратко... если вы говорите о бэкенде то есть.

Каковы лучшие практики? Альтернативные способы изменения поведения Umbraco?

Угловой и плагины

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

Почти все может быть расширено, настраиваемые информационные панели, настраиваемые разделы, настраиваемые деревья, ... вы называете это, и, вероятно, это можно расширить в бэкэнде.

Все питается от angular. Ничто не мешает вам делать очень прикольные вещи. Такие пакеты, как Nexu, перехватывают каждый угловой http-вызов, а затем выполняют свою собственную логику.

Из кода .net

Большая часть логики umbraco (например, полный конвейер запросов) может быть заменена вашей собственной реализацией. Ничто не мешает вам запустить свой собственный UrlProvider.

А как насчет событий (делать что-то после того, как что-то произошло). Например. после сохранения.

Лучшие практики

Я думаю, что лучше всего оставить umbraco как есть. Не меняйте его, если вам это действительно не нужно. Используйте все точки расширения, где это возможно.

И используйте стандартный материал Umbraco. Не изобретайте велосипед. Используйте то, что уже есть в Umbraco. Это даст вам возможность создавать лучшие веб-сайты для редакторов контента и быстрее для пользователей.

person dampee    schedule 10.07.2017

Похоже, это файл, специфичный для пакета (вложенный контент)? Вы можете загрузить файл пакета, разархивировать его и внести изменения перед повторным архивированием и сохранить zip-файл в безопасном месте? ;-) Или, если это изменение принесет пользу всем, сделать запрос на вытягивание на Github?

person Jannik Anker    schedule 05.07.2017

Я говорю, внесите изменения, и пока вы это делаете, отправьте запрос на слияние для автора проекта, чтобы он изменил его навсегда.

Вот почему я бы не стал беспокоиться о том, что обновления Umbraco перезапишут его:

Обновления в Umbraco не выполняются автоматически, если только вы не используете облачную версию. Таким образом, это означает, что вы делаете выбор в пользу обновления. При любой разработке всегда полезно проверять код в какой-либо системе управления версиями. Лично мне нравится SVN или GitHub.

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

Я надеюсь в этом есть смысл.

person prjseal    schedule 10.07.2017