如何禁用入站邮件模态框

如何使此电子邮件图标不可点击?

image

如何禁用此传入电子邮件模型?

以及如何禁用此

今天我了解到那个图标是可点击的。

1 个赞

哈哈是的,很烦人 :laughing:

顺便说一句,生日快乐 :grin: :star2:

我怀疑是只有工作人员才能点击,我在一个没有工作人员权限的论坛上试了一下,在手机上无法点击该图标。

谢谢!(不过这部分是时区的原因,我这里还没到生日呢 :upside_down_face:

1 个赞

我必须看看这个,谢谢你告诉我。 :grinning:

这里你的名字旁边显示了一个蛋糕图标,哈哈,总之,提前祝你生日快乐,我猜我是第一个说的 :joy:

1 个赞

因为它仅对管理员可见,所以没有问题。

总之,如果还有像我一样想禁用它但找不到方法的人,这是我用 GPT 做的方法,效果很好 :slight_smile:

<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。它会在每个渲染后的帖子元素上调用。

此外,这里有一个禁用邮件指示器的方法。这只是一个阻止包含 HTML 的技巧。如果你好奇,可以在这里查看原始代码。

<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;
}
6 个赞

谢谢 :grinning:

我删除了帖子元数据部分,因为我想显示这个电子邮件图标。 :slight_smile:

这是我现在用来删除内容并通过 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;
}

感谢您的代码 :rocket: :blush:

3 个赞

不客气 :slight_smile:

另外,你说得对;只有工作人员才能点击图标!我的错。:smile:

2 个赞

做得好 :slight_smile:

2 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.