Подтвердить что ты не робот

Комментарии Disqus не загружаются на localhost?

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

Я хотел бы создать короткое имя для 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="#" onclick="location.href='http://disqus.com/?ref_noscript'; return false;">comments powered by Disqus.</a></noscript>
    <a href="#" onclick="location.href='http://disqus.com'; return false;" 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, я получаю сообщение об исключении, которое я передал многим аргументам методу. В противном случае мой disqus просто зависает.

4b9b3361

Ответ 2

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

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

Http:// [disqus_shortname].disqus.com/админ/Настройки/Дополнительно/

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

Http:// [disqus_shortname].disqus.com/админ/Настройки/universalcode/

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

Ответ 4

Рекомендуемым решением является регистрация нескольких коротких букв aka сайтов. Это сработало для меня. Например, 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

Ответ 5

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