Не удается загрузить комментарии Disqus на localhost? - PullRequest
27 голосов
/ 28 февраля 2012

Я хотел бы использовать универсальный код и столкнулся с трудностями при выполнении основных функций.

Я хотел бы создать краткое имя для test и одно для моего развертывание , которое я сделал из панели администратора Disqus.

Вот код disqus в моем действии show:

# 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

Я могу подтвердить, что загрузочный счетчик работает, но это так.Я что-то упускаю из виду?Когда я пытаюсь включить only_path: false в качестве второй опции в свой вызов url_for, я получаю исключение, сообщающее, что я передал много аргументов методу.Иначе мой дискус просто зависнет.

Ответы [ 5 ]

15 голосов
/ 28 февраля 2012

Вы должны установить это, чтобы оно работало:

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/

13 голосов
/ 24 сентября 2013

По состоянию на сентябрь 2013 года у меня не работало ни одно из указанных выше решений.

Чтобы заставить его работать, мне пришлось добавить localhost в список «Доверенные домены» на этой странице:

http://[disqus_shortname].disqus.com/admin/settings/advanced/

, а также используйте найденный ниже «Универсальный код», чтобы вставить его в мои сообщения в блоге:

http://[disqus_shortname].disqus.com/admin/settings/universalcode/

И это работает! :)

10 голосов
/ 15 июля 2013

Попробуйте установить disqus_url в соответствии с URL зарегистрированного сайта.

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

1 голос
/ 12 декабря 2015

Рекомендованным решением является регистрация нескольких коротких имен или сайтов.Это сработало для меня.Например, balloons и balloons-dev.

Обязательно измените Javascript, который они дают вам, чтобы заменить короткое имя в строке, которая находится ниже комментария о «не изменять», если хотите динамически установить, какойсайт, который вы используете в зависимости от вашей среды (например, "balloons" if not settings.DEBUG else "balloons-dev").

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

0 голосов
/ 28 февраля 2012

Насколько я знаю, Disqus не работает на localhost. Он всегда работал только на производственной площадке для меня. Я считаю, что он проверяет имя хоста против зарегистрированного имени хоста.

...