Пользовательские CSS/HTML

Меня расстроило, что (кажется, это было в прошлом году) поля Custom CSS/HTML были удалены из всех тем, кроме темы по умолчанию.

Один из найденных мной обходных путей — внести изменения в тему по умолчанию, а затем использовать кнопку Export

Затем распакуйте файл и измените настройки в файле about.json

  • задайте ему новое имя и
  • измените параметр theme component на true

Сохраните этот файл и создайте новый .zip-архив, который, например, будет включать…

Затем, если вы загрузите этот .zip-файл как тему или компонент темы, у вас появятся поля Custom CSS/HTML, которые были удалены из всех тем, кроме темы по умолчанию.

Разработка тем — это не моя сильная сторона, но не могли бы вы просто создать новую тему на вашем сайте, чтобы добиться похожего результата? Кнопка редактирования CSS/HTML отсутствует только у удалённых тем.

@JammyDodger Надеюсь (и похоже, что так оно и есть), что вы правы в этом!

Да, этот параметр не отображается, если тема удалённая, так как предполагается, что вы будете обновлять удалённый репозиторий.

В данном случае тема по умолчанию не клонируется из репозитория, поэтому этот параметр отображается. Он будет доступен для любой локальной темы.

При работе с удалёнными темами одним из вариантов является форк темы и внесение изменений в свой форк.

В любом случае лучшей практикой является использование системы контроля версий для управления вашей темой.

Что это означает?

Для управления развитием вашей темы, как и любого кода, рекомендуется использовать систему контроля версий, например Git (GitHub), для отслеживания изменений.

Это позволит вам отслеживать эволюцию темы, легко откатывать изменения, которые не работают или вызывают непредвиденные проблемы, а также минимизировать потерю кода (например, из-за повреждения локальных файлов или утери резервных копий). На более продвинутом уровне вы также сможете опубликовать свою тему для третьих лиц и управлять вкладом через pull requests (PR).

Спасибо большое, @merefield, за разъяснение!

В данном случае я просто хочу внести совсем небольшие правки в CSS, а не создавать или распространять новую тему.

По какой-то неизвестной причине вся эта история с Git превратилась для меня в кашу в голове, создав очень неприятный барьер (но я активно работаю над тем, чтобы его преодолеть!)

Возможно, здесь, в этом сообществе, есть и другие, подобные мне, которые (находясь в процессе обучения) могут редактировать лишь определённый объём CSS, доступный только через настройки «Пользовательский CSS/HTML» в теме по умолчанию.

Поможет ли создание компонента темы и его подключение к нужной теме (или темам) для решения вашей задачи?

@JammyDodger определенно. Создание в виде компонента темы кажется лучшим решением, так как тогда я смогу применить его к любой теме(ам)!

Эта информация может оказаться вам полезной:

Так что ваш подход верен: компонент темы всегда должен иметь возможность переопределять то, что задано в теме.

Извините, просто добавлю: вы могли бы рассмотреть следующее дополнительное уточнение:

  • оставить основную тему без изменений
  • сохранить в компоненте темы только изменения и удалить весь остальной код, который уже существует в основной теме.

Да, это имеет полный смысл, спасибо!

Также ознакомьтесь с установкой консольного приложения CLI темы Discourse, которое поможет вам создавать темы