首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >果园CMS问题与备用形状总结-剃须刀

果园CMS问题与备用形状总结-剃须刀
EN

Stack Overflow用户
提问于 2012-12-04 08:04:32
回答 1查看 771关注 0票数 2

我已经创建了一个替代的形状通过形状跟踪模块使用引导主题。我为这种类型创建了许多字段。我创建的自定义类型称为"BooksForSale“。我可以使用以下代码显示作者:

代码语言:javascript
复制
<p>@Model.ContentItem.BooksForSale.Author.Value</p>

没问题。

但是,我想显示这种类型的主体(添加了这个部分),并且只显示前150个字符。我使用了以下方法:

代码语言:javascript
复制
@{ 
    Orchard.ContentManagement.ContentItem contentItem = Model.ContentPart.ContentItem;
    string bodyHtml = Model.Html.ToString();
    var body = new HtmlString(Html.Excerpt(bodyHtml, 500).ToString().Replace(Environment.NewLine, "</p>" + Environment.NewLine + "<p>")); 
}
<div class="post-description">
    <p>@body</p>
</div>
@Html.ItemDisplayLink(T("Read More...").ToString(), contentItem)

这是由于读取更多的行而崩溃,而作者则显示得很好。

我把这个从"Parts.Common.Summary.cshtml“里拿出来的--它在那里很管用。

我想要的是显示身体的前150个字符,并有一个链接“阅读更多.”显示并链接到实际内容项。

不确定有人能帮上忙但我想我可能会问..。

西蒙

EN

回答 1

Stack Overflow用户

发布于 2012-12-04 17:54:06

如果您指定它是如何崩溃的,它将非常非常有帮助。看到您的第一个代码示例是如何工作的,我怀疑您需要只使用Model.ContentPart.ContentItem替换Model.ContentItem。第二行在Parts.Common.Body.Summary.cshtml中工作得很好,因为Model是主体部分。在您复制它的地方,它可能是另一个部分(但您没有给出足够的细节让我知道:您甚至没有给出您创建的模板替换的名称)。所以你需要做的是把它投到身体的部位,就像这样:

代码语言:javascript
复制
string bodyHtml = contentItem.As<BodyPart>().Html.ToString();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13698453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档