共享Orchard CMS博客文章 - 覆盖模板

时间:2012-11-29 13:46:20

标签: asp.net-mvc razor orchardcms

我正在使用Orchard CMS,并且希望能够在网站上显示博客帖子的分享链接(想想AddThis.comShareaholic.com)。

在我开始之前,我意识到Orchard画廊中已经有类似的模块,但是,我无法让模块工作,b,我想进一步了解Orchard。

我的想法最初只是添加一个新的博客小部件图层,并添加一个包含上述共享代码的新HTML小部件。这种方法的麻烦是;

  1. 图层规则会强制我的所有博客页面必须位于某个公共网址下,即使用类似以下内容的图层规则。不一定是坏事,但是当客户发布新帖子时可能会遗漏这些内容。

    URL( “〜/博客*”)

  2. 共享代码包含空的html锚元素,当我保存在Orchard编辑器中时,这些元素会从html中删除。

  3. 我认为#2取决于我主题中使用的模板。我阅读了Bertrand Le Roy博客中关于覆盖模板的帖子,这些模板让我思考。我可以直接覆盖Orchard博客模板并将共享代码放在那里吗?很明显,这在未来不太可定制,但我很满意。在考虑Orchard性能和加载时间时,我也在考虑减少层,模块,小部件或其他任何不好的事情。我现在每个博客文章上都有我的共享图标,无论它在网站上的哪个位置。

    问题是在这种情况下我应该覆盖的观点是什么?我尝试在Modules \ Orchard.Blogs \ Views中编辑博客视图,期望看到一些变化,但我什么都没有。

    人们会建议什么是最好的前进方式?

1 个答案:

答案 0 :(得分:2)

最好的方法是恕我直言,将代码添加到两个(或两个)模板之一中:

    当博客帖子显示在列表中时,您可以
  1. Content-BlogPost.Summary.cshtml(您可以从/Core/Contents/Views/Content.Summary.cshtml复制代码)和
  2. 当博客文章显示在单独的页面中时,您可以
  3. Content-BlogPost.Detail.cshtml(您可以从/Core/Contents/Views/Content.cshtml复制代码)