Orchard运用 - 整合Disqus评论插件

评论对于博客系统那是必须具备的一个功能,Orchard本身也默认实现了评论模块,你可以集成到其他内容,比如博客随笔,不过觉得有点寒碜,样式有点呆板。幸运的是,你可以简单集成第三方评论插件,比如Disqus, 甚至国内的多说或友言等等。

今天跟大家分享如何用最简单的方式集成Disqus。

其实有一个模块貌似已经实现这一功能,叫"Disqus Comments", 不过在最新版本Ocrhard安装成功后没法设置并启用。所以我只好在主题theme的级别上做最简单的集成。

1. 首先需要修改当前主题Theme的Placement.info, 添加新的Wrapper, 代码如下:

<Match DisplayType="Detail">
    ...其他设置
    <Place Parts_ListOfComments="Content:after.2;Wrapper=CommentsWrapper" />
<Place Parts_CommentForm="-" />
  </Match>

也就是这个Wrapper将充当一个全新的封装评论,原先的核心评论列表将被替换。

2. 在当前主题目录的文件夹Views里新建一个文件"CommentsWrapper.cshtml",记事本打开并添加如下代码:

@using Orchard.ContentManagement;

@{
    ContentItem item = (ContentItem)Model.ContentPart.ContentItem;

    var permalink = (new Uri(HttpContext.Current.Request.Url, Url.ItemDisplayUrl(item))).ToString();

    var slug = "";
    var uniqueId = string.Format("{0} {1}", item.Id, slug);

    var shortName = "sunblognuke";

    //Style.Require("DisqusModule");
}
<div id="comments">
<h2>Story comments:</h2>
<div class="disqus-wrapper">
	<div id="disqus_thread"></div>
	<script type="text/javascript">
		var disqus_shortname = '@shortName'; 
		var disqus_developer = 1;

		var disqus_url = '@permalink';
		var disqus_identifier = '@uniqueId';

		(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>
</div>
</div>

注意: "你的网站名"需要你具有Disqus帐号并新建一个App所设置的选项short name。

当你完成以上两步,再次访问随笔详细页面,你即可看到Disqus已无缝集成到页面底部了。

更新

还有最新随笔Orchard运用 - 整合多说评论插件你可能比较有兴趣。

相关资源

Adding Social Meta Tags in Orchard

Orchard SEO 之利用Url候补为任何页面添加Meta及覆盖Title

posted on 2014-04-30 17:46  Baldwin  阅读(909)  评论(0编辑  收藏  举报