이 주제와 디스코드 역할의 커스텀 색상에서 영감을 받아, 그룹과 사용자의 멘션에 data-mention을 추가하는 아주 간단한 코드를 작성했습니다. 이를 통해 CSS를 사용하여 "일반 색상"이 아닌 다른 색상을 지정할 수 있습니다 ![]()
현재 코드는 jQuery로 작성되어 있지만, 추후 바닐라 JavaScript로 변경할 예정입니다 ![]()
적용하려면 다음 코드를 테마 또는 컴포넌트의 head 부분에 붙여넣기만 하면 됩니다:
<script type="text/discourse-plugin" version="0.9">
$(document).ajaxSuccess(() =>{
$('a.mention').each(function() {
$(this).attr('data-mention', $(this).text().replace('@', ''));
});
$('a.mention-group').each(function() {
$(this).attr('data-mention', $(this).text().replace('@', ''));
});
});
</script>
이후 CSS를 통해 원하는 스타일을 적용할 수 있습니다 ![]()
예를 들어:
a.mention[data-mention="Alexander"] {
color: #4527a0 !important;
}
![]()
이 경우 특정 사용자 이름을 대상으로 했지만, a.mention-group[data-mention="group-name"]를 사용하여 그룹에도 적용할 수 있습니다.
CSS를 수정하지 않고 "설정"에서 커스터마이즈할 수 있는 테마 컴포넌트로 만드는 방법을 조사해 보겠습니다 ![]()