«button» HTML5 태그가 에디터 미리보기에는 표시되지만 게시글에는 표시되지 않음

이것이 정확히 버그인지 확신할 수 없습니다. 혼란스러우신 점을 이해합니다.

HTML 태그와 속성/클래스 이름이 필터링되지 않도록 하려면, Discourse 코어 또는 플러그인에서 이를 명시적으로 허용해야 합니다.

예를 들어, 기본 허용 목록은 다음 위치에서 확인할 수 있습니다:
https://github.com/discourse/discourse/blob/main/app/assets/javascripts/pretty-text/addon/allow-lister.js#L115

또한 미리보기에만 특정 태그를 허용하는 것도 가능합니다. 예를 들어, 이미지 컨트롤에는 여러 태그/클래스 이름/속성 조합이 있습니다.

https://github.com/discourse/discourse/discourse-markdown-it/src/features/image-controls.js#L198

여기서 허용된 태그의 부수적 효과(side effect)로 인해 미리보기에서 버튼이 표시되는 것을 볼 수 있습니다.
그러나 disabled 속성은 정의되어 있지 않으므로 무시됩니다.

https://github.com/discourse/discourse/discourse-markdown-it/src/features/image-controls.js#L223

허용 목록이 어떻게 파싱되는지는 확인해 보지 않았습니다. 이것이 의도된 동작인지 궁금합니다. :thinking:. 현재로서는 속성과 관계없이 태그가 허용되는 것처럼 보입니다. 만약 예를 들어 <button class="alt-text-edit-ok btn btn-primary">를 정확히 사용하지 않는 경우 버튼이 렌더링되지 않기를 기대했을 것입니다.

게시물 렌더링 시 <button>을 허용하는 플러그인을 만들 수 있습니다. 도움이 필요하시면 말씀해 주세요.

2개의 좋아요