如何在我的网站上禁用或隐藏不需要的Disqus广告?

Eri*_*pak 3 javascript comments ads disqus

想象一下,突然有一天,随机广告开始出现在您的网站上...

最近,Disqus开始在Disqus注释中强行插入不需要的广告,从而在您不知情的情况下在您的网站上显示了这些讨厌的广告。看来它们只针对每日流量“足够大”的网站或使用其他一些任意条件,因此广告不会出现在所有网站上,而只会出现在相对繁忙的网站上。

这样,Disqus会“强迫”您升级到付费订阅计划-对于付费用户,这些广告变为可选(即,您可以在Disqus管理员面板中将其禁用)。

如果您不想付款怎么办?如何禁用这些广告?有一个简单,快速解决方案吗?

至少在我们有时间切换到另一个评论系统之前。

Dea*_*ali 11

您可以使用 CSS 隐藏广告 iframe(请注意,@DanielGale 所说的是正确的 - 这将是一个猫捉老鼠的游戏,您的 CSS 选择器必须适应):

iframe[src*="ads-iframe"] { display: none; }
Run Code Online (Sandbox Code Playgroud)


Bru*_*ian 6

我可以使用这个简单的 CSS 条目删除添加:

div#disqus_thread iframe[sandbox] {
        max-height: 0px !important;
}
Run Code Online (Sandbox Code Playgroud)

这是有效的,因为广告是在具有“沙盒”属性的 iframe 中投放的。


Eri*_*pak 5

在撰写本文时,流行的AdBlock浏览器扩展似乎已成功屏蔽了广告。但是,并非您的所有网站访问者都使用adblock。

这是一个基于jQuery的快速解决方案,用于隐藏广告:

(function($){
    setInterval(() => {
        $.each($('iframe'), (arr,x) => {
            let src = $(x).attr('src');
            if (src && src.match(/(ads-iframe)|(disqusads)/gi)) {
                $(x).remove();
            }
        });
    }, 300);
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

只需在jQuery加载后将其插入到您网站上的Disqus评论出现的每个页面上即可。该代码会定期检查您的网站上是否存在Disqus广告,并删除其容器内容。您知道,以防万一他们尝试重新出现。

  • 这将是猫和老鼠的游戏。创建此函数可在参数更改广告ID /名称时采用参数。 (2认同)