이 이메일 아이콘을 클릭할 수 없게 하려면 어떻게 해야 하나요?

이 수신 이메일 모델을 비활성화하려면 어떻게 해야 하나요?
그리고 이 기능을 비활성화하려면 어떻게 해야 하나요?
오늘 알게 된 사실은, 그 아이콘이 클릭 가능하다는 것입니다.
하하, 진짜 짜증나네 ![]()
그리고 생일 축하해!
![]()
스태프 전용인 것 같아. 스태프 권한이 없는 다른 포럼에서 확인해 봤는데, 그 아이콘을 클릭할 수 없었거든. (적어도 내 폰에서는)
고마워! (다만 시차 때문에 아직 여기서는 생일이 아닌데
)
꼭 봐야겠네요. 알려주셔서 감사합니다. ![]()
여기서는 님 이름 옆에 케이크 아이콘이 떠 있네요 하하. 아무튼 미리 생일 축하드립니다. 이 말을 처음 한 사람인 것 같네요 ![]()
아, 이건 관리자만 볼 수 있는 것이니 문제가 없어요.
어쨌든, 저처럼 이것을 비활성화하고 싶지만 방법을 찾지 못하는 사람이 있다면, GPT를 이용해 이렇게 해봤는데 아주 잘 작동했습니다 ![]()
<script type="text/discourse-plugin" version="0.8">
api.onPageChange((url, title) => {
// 페이지가 완전히 로드될 때까지 대기
Ember.run.scheduleOnce('afterRender', function() {
// 클래스가 "elided"인 모든 details 요소 찾기 및 제거
var elidedDetailsList = document.querySelectorAll('details.elided');
elidedDetailsList.forEach(function(elidedDetails) {
elidedDetails.remove();
});
});
});
</script>
kynic님, 안녕하세요.
onPageChange는 사용 범위가 너무 넓을 수 있으며(게시물을 로드하거나 업데이트할 경우 신뢰할 수 없을 수 있음), 대신 decorateCookedElement를 사용할 수 있습니다. 이 함수는 모든 게시물의 cooked 요소에 대해 호출됩니다.
추가적으로, 이메일 표시기를 비활성화하는 방법도 소개합니다. 이는 단순히 HTML을 포함하지 않도록 하는 해킹(hack) 방식입니다. 궁금하시다면 원본 코드를 여기에서 확인하실 수 있습니다.
<script type="text/discourse-plugin" version="0.8">
api.reopenWidget("post-meta-data", {
html(attrs) {
if (!attrs.via_email) {
return this._super(attrs);
}
// "post-email-indicator" 위젯을 생성하지 않습니다.
attrs.via_email = false;
const html = this._super(attrs);
attrs.via_email = true;
return html;
}
})
api.decorateCookedElement((element, helper) => {
if (helper?.getModel().via_email) {
element.querySelector('details.elided').remove();
}
}, { onlyStream: true });
</script>
CSS만 사용하여 이를 숨기는 방법도 있습니다.
.post-info.via-email,
.cooked details.elided {
display: none;
}
감사합니다 ![]()
이메일 아이콘이 표시되기를 원하므로 게시물 메타데이터 부분을 제거했습니다. ![]()
현재 콘텐츠 제거와 혹시 모를 상황에 대비하여 CSS로 숨기기 위해 다음 코드를 사용하고 있습니다.
<script type="text/discourse-plugin" version="0.8">
api.decorateCookedElement((element, helper) => {
if (helper?.getModel().via_email) {
element.querySelector('details.elided').remove();
}
}, { onlyStream: true });
</script>
.cooked details.elided {
display: none;
}
이 코드 감사합니다
![]()
천만에요 ![]()
그리고 맞아요. 스태프만 아이콘을 클릭할 수 있네요! 제 실수였어요. ![]()
잘했어요 ![]()