Disqus注释无法加载localhost?

时间:2012-02-28 03:00:45

标签: javascript ruby-on-rails disqus

我想使用通用代码,并且在完成最基本功能方面遇到了困难。

我想为测试创建一个短名称,为我的部署创建一个短名称,我是从Disqus管理面板创建的。

以下是我的show动作中的disqus代码:

# inside show.html.erb
<%= render raw 'comments' %>

# partial "comments"

  <div id="disqus_thread"></div>
    <script type="text/javascript">
      var disqus_shortname = '<%= Post::DISQUS_SHORTNAME %>';
      var disqus_identifier = '<%= @post.id %>';
      var disqus_url = '<%= url_for([:blog, @topic, @post])%>';
        (function() {
            var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
            dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
            (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
        })();
    </script>
    <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
    <a href="http://disqus.com" class="dsq-brlink">blog comments powered by <span class="logo-disqus">Disqus</span></a>

在我的模型中,我定义了Post,我定义了我的短名称:

  DISQUS_SHORTNAME = if Rails.env.development? 
                        "dev-shortname".freeze
                     else
                        "shortname".freeze
                     end

我可以确认加载微调器正在运行,但就是这样。我错过了一些明显的东西吗当我尝试在我的url_for调用中包含only_path: false作为第二个选项时,我得到一个异常,说明我已经提供了该方法的许多参数。否则我的disqus就会挂起。

6 个答案:

答案 0 :(得分:15)

你应该设置它以使它工作:

var disqus_developer = 1; // this would set it to developer mode

参考: http://ray247.wordpress.com/2009/09/02/how-to-develop-with-disqus-on-localhost/

答案 1 :(得分:13)

截至2013年9月,上述所有解决方案均无效。

要使其正常运行,我必须将 localhost 添加到此页面上的“受信任域”列表中:

的http:// <强> [disqus_shortname] .disqus.com /管理/设定/先进/

并使用下面的“通用代码”将其嵌入我的博文:

的http:// <强> [disqus_shortname] .disqus.com /管理/设定/ universalcode /

它有效! :)

答案 2 :(得分:10)

尝试设置disqus_url以匹配您注册的网站网址。

http://kenhirakawa.com/load-disqus-on-localhost/

答案 3 :(得分:1)

推荐的解决方案似乎是注册多个短名称,即网站。这对我有用。例如,balloonsballoons-dev

请务必修改他们为您提供的Javascript,以替换关于&#34的评论下方的行中的短名称;不要修改&#34;,如果想要动态设置您基于哪个网站使用的在您的环境中(例如,"balloons" if not settings.DEBUG else "balloons-dev")。

https://help.disqus.com/customer/portal/articles/1053796-best-practices-for-staging-development-and-preview-sites

答案 4 :(得分:0)

现在可能已经很旧了,但是我通过在脚本和Disqus设置中都将URL保留为空来解决了该问题

答案 5 :(得分:-3)

据我所知,

Disqus对localhost不起作用。它一直只为我在生产现场工作。我相信它会根据注册的主机名检查主机名。