我正在尝试将Disqus整合到我的测试Magento网站上。我正在使用NeoTheme Blog Extension但是我禁用了内置的评论部分并将其更改为disqus。
问题是规范网址。我有一个主要类别http://?????.com/news-and-media/,其中包含子类别/博客和/新闻等。博客页面可以http://????/.com/news-and-media/blog-content和http://????/.com/news-and-media/blog/blog-content访问,两者都显示相同的内容。我尝试对每个网址发表评论,但是其他网页上的评论缺失,反之亦然。
这是我目前的进展。
我的phtml
<div id="disqus_thread"></div>
<script>
var disqus_config = function () {
this.page.url = 'http://?????.com/news-and-media/';
this.page.identifier = 'blog';
};
(function() { // DON'T EDIT BELOW THIS LINE
var d = document, s = d.createElement('script');
s.src = 'https://????-com.disqus.com/embed.js';
s.setAttribute('data-timestamp', +new Date());
(d.head || d.body).appendChild(s);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
我的local.xml
<neotheme_blog_post_index>
<reference name="disquscomment">
<block type="core/template" name="dcomment" template="disqus-comments.phtml" />
</reference>
</neotheme_blog_post_index>
你有这个规范的解决方案吗?我似乎无法忘记文档和示例。
https://help.disqus.com/customer/portal/articles/472098-javascript-configuration-variables
答案 0 :(得分:1)
您必须使用javascript获取rel规范值并将其用作页面标识符。我不确定这是否有效。
var canonical = "";
var links = document.getElementsByTagName("link");
for (var i = 0; i < links.length; i ++) {
if (links[i].getAttribute("rel") === "canonical") {
canonical = links[i].getAttribute("href")
}
}
var disqus_config = function () {
this.page.url = '';
this.page.identifier = canonical;
};
(function() { // DON'T EDIT BELOW THIS LINE
检查此链接以供参考。 http://javascript.qahowto.com/Obtaining-canonical-url-using-JavaScript-javascript-url-5b420a