왜 Discourse 커스터마이징이 이렇게 어려운가요?

다른 곳에서 정의된 규칙보다 우선순위를 갖도록 CSS에 !important를 추가해야 할 수도 있습니다. 여러 컴포넌트가 특정 순서로 로드되는 경우 이러한 상황이 발생하면 자연스러운 일입니다. 이는 일반적인 문제이며, 반드시 Discourse에만 국한된 문제는 아닙니다. "해당 컴포넌트가 마지막에 로드되어야 한다"는 식의 가중치 시스템을 도입할 수 있을지 확신은 없지만, 그렇게 하면 관리하기가 매우 어려울 것입니다.

따라서 테마 및 테마 컴포넌트에서는 절대적으로 필요한 경우가 아니라면 CSS에 !important를 사용하지 않는 것이 중요합니다.

원격 테마 컴포넌트를 편집하려면 GitHub에서 포크를 생성하고 나만의 버전을 만들어 보는 것이 가장 쉬운 방법입니다. 단, 원래 버전의 업데이트를 받을 수 없습니다. 원격 컴포넌트를 직접 편집할 수 없는 이유는 사용자 정의가 업데이트와 충돌할 수 있기 때문이며(이를 관리하는 것은 악몽과도 같습니다).

Discourse를 사용자 정의하는 것은 비교적 접근성이 좋습니다. 다만, 어떤 수준의 사용자 정의를 기대하느냐에 따라 달라집니다. 여기서 무엇을 이루고자 하시는 건가요? 도움이 될 수 있을지도 모릅니다. Discourse 팀은 특정 영역에 사용자 정의 기능이 도입될 수 있다면 일반적으로 개방적인 태도를 가지고 있습니다.