如何解决如何将django-disqus应用集成到博客中
|| 嗨,我的客户迫切希望将Django Disqus集成到我们为他们创建的博客中。我偶然发现了https://github.com/arthurk/django-disqus django disqus应用程序,简直不敢相信我的运气。可以正确识别为一篇博客文章的object.id所发表的评论,并且贯穿整个博客。 在列出我所有博客文章的索引模板中{% for entry in entries %}
{% set_disqus_identifier entry.id %}
{% set_disqus_url entry.get_absolute_url %}
{% set_disqus_developer 1 %}
{% blog stuff goes here %}
{%endfor%}
在文章模板中
{% set_disqus_identifier entry.id %}
{% set_disqus_url entry.get_absolute_url %}
{% set_disqus_developer 1 %}
<section id=\"comments\">
<a href=\"{{ entry.get_absolute_url }}#disqus_thread\" data-disqus-identifier=\"{{ entry.id }}\">View Comments</a>
<h1>{% disqus_num_replies %}</h1>
<article class=\"comment\">
{% disqus_dev %}
{% disqus_show_comments entry.get_absolute_url %}
我之前提到的问题是,如果我发表评论,disqus会将其应用于所有博客文章。我猜我在标识符上做错了什么,但是当我查看源代码时,javascript正在为每个博客帖子获取正确的ID。
我真的需要这个来工作,所以将永远感激能够成功的任何帮助或建议
解决方法
在索引模板中,您不需要做所有这些set_ *的工作。因此,只需加载dev标签以启用本地开发即可:
{% disqus_dev %}
{% for entry in entries %}
{% blog stuff goes here %}
{% endfor %}
在您的文章模板中,只需执行此操作即可显示评论。 disqus javascript将使用当前URL作为标识符,因此不需要手动设置它:
{% disqus_show_comments %}
不要忘记按照文档中的描述将设置设置为正确的值:http://django-disqus.readthedocs.org/en/latest/installation.html#configuring-your-django-installation并更改您的Site对象的URL到您的实际域。
,我认为您不应该在索引模板中设置标识符和其他值。由于for循环,它会覆盖先前的值。相反,您应该在与特定帖子相关的模板中设置值。这样,您将为该特定帖子设置disqus参数。
注意:django-disqus现在具有较新的版本,支持django 1.7。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。