jekyll - Disqus 不会在我的 Jekyll 网站上的任何浏览器中加载

标签 jekyll disqus

我正在使用 Jekyll 开发 GitHub Pages。 Disqus 代码位于 _includes/disqus.html 并具有以下代码:

<div class="comment">
<button class="show-comments"><i class="fa fa-comments" aria-hidden="true"> Load/Add comments</i></button>
<div id="disqus_thread"></div>
</div>
<script src={{ "/js/jquery.min.js" | prepend: site.baseurl }}></script>
<script>
$(document).ready(function() {
    $('.show-comments').on('click', function(){
          var disqus_shortname = '{{site.disqus-shortname}}'; 
          $.ajax({
                  type: "GET",
                  url: "http://" + disqus_shortname + ".disqus.com/embed.js",
                  dataType: "script",
                  cache: true
          });
          $(this).fadeOut();
    });
});
</script>

在布局文件夹中,我有一个 blue.html 文件,其中包含以下用于 Disqus 的代码:

   {% include disqus.html %}
        {% else %}
        {% endif %}

config.yml 中,我记下了我的 Disqus 简称:

#comments disqus-shortname: eudemonis

但是当点击加载评论部分时没有加载任何 Disqus,see test post.

无论是否将 YAML front matter 设置为 comments: true,它在 Safari 和 Chrome 中都不起作用。我真的很茫然。

我已经尝试使用通用代码在 Disqus 文档之后创建一个完整的新文件,但它不起作用。使用我的 Disqus 短名称手动更改 Liquid 标签也不起作用。

最佳答案

我认为问题在于您的网站是使用 HTTPS 托管的,但您在 _includes/disqus.html 中使用 HTTP 协议(protocol)链接到 Disqus:

$.ajax({
  type: "GET",
  url: "http://" + disqus_shortname + ".disqus.com/embed.js",
  dataType: "script",
  cache: true
}); 

来自 Chrome 控制台的错误(按 F12 并查看):

Mixed Content: The page at 'https://eudemonis.github.io/blog/test//' was loaded over HTTPS, but requested an insecure script 'http://eudemonis.disqus.com/embed.js'. This request has been blocked; the content must be served over HTTPS.

要解决此问题,请将协议(protocol)更改为 HTTPS:

url: "https://" + disqus_shortname + ".disqus.com/embed.js",

或者将协议(protocol)留在外面,让浏览器决定:

url: "//" + disqus_shortname + ".disqus.com/embed.js",

关于jekyll - Disqus 不会在我的 Jekyll 网站上的任何浏览器中加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51336538/

相关文章:

jekyll - 如何在本地主机和远程服务器上轻松管理 Jekyll 网页的不同基本 URL?

ajax - Disqus + ajax + 死了...

Disqus 为所有页面加载相同的线程

javascript - Disqus sso wordpress 登录后弹出窗口未关闭

css - 我的页眉处于固定位置并且我遇到了 Disqus 问题。

git - 使用静态站点生成器创建网站时如何将博客文章分离到另一个 git 存储库中?

Jekyll/液体模板 : How to group blog posts by year?

Jekyll - 在索引中显示随机选择的帖子

string - 我如何使用 Jekyll 比较两个字符串变量

disqus - 在 DIV 或 SPAN 中显示 Disqus 评论数 - 而不是 <a href>