我是 Orchard 的新手,看过 Pluralsight“Orchard Fundamentals”和“Advanced Orchard”教程。它是一个很棒的平台,但我很难理解一些事情。
我想在主页上创建一个博客展示横幅,仅用于轮换网站上的博客文章。我将 HTML 切片并在 HTML 模板上运行。横幅如下所示:
http://arerra.com/news-slideshow.jpg
到目前为止,我已经完成了以下工作:
我创建了一个名为“文章”的博客,并在其中放置了一个帖子进行测试。
添加了一个名为“ArticleList”的图层,其中我为“最近的博客文章”放置了一个小部件
我在我的主题中为主页创建了一个名为“Layout-Url-HomePage.cshtml”的自定义布局。
在我的主题“视图”文件夹中,我创建了一个名为“Widget.Wrapper.cshtml”的文件,其中仅
@Display(Model.Child)
用于删除<article><header/><footer /><article>
标签。在“Views > Parts > Blogs.RecentBlogPosts.cshtml”中添加了一个文件来控制我的形状的布局。代码如下:
@using Orchard.ContentManagement; @{ IEnumerable<object> blogPosts = Model.ContentItems.ContentItems; } @if (blogPosts != null) { <div class="container news-slider"> <ul class="slide-images"> @foreach (dynamic post in blogPosts) { string title = post.Title; ContentItem item = post.ContentItem; <img src="/Themes/MountainWestHoops/Content/img/placeholder-700x380.jpg" alt="@title" class="active" /> } </ul> @foreach (dynamic post in blogPosts) { string title = post.Title; string body = post.Body; ContentItem item = post.ContentItem; <div class="featured-story threeD active"> <h1>@title</h1> <p>@body @Html.ItemDisplayLink("READ MORE", item)</p> </div> } <aside> <ul class="tabs"> @foreach (dynamic post in blogPosts) { string title = post.Title; string url = post.Url; ContentItem item = post.ContentItem; <li><a href="@url"><h3>@title</h3></a></li> } </ul> <div class="ad-three-day-trial"> <a href=""><img src="/Themes/Content/img/placeholder-260x190.gif" /></a> </div> </aside> </div> }
我的 HTML 正在正确呈现,但我指定的值都没有显示出来。
我正在使用“Shape Tracer”模块来查看正在使用的模板。有趣的是,@Html.ItemDisplayLink("READ MORE", item) 正在呈现文章的 URL,如果我将“READ MORE”替换为字符串标题,标题会正确呈现。
我在这里做错了什么导致字符串不显示?我是否遗漏了一个更大的观点并误解了基本面?教程似乎说你可以简单地移动部件,但在这种情况下,我需要有非常具体的标记才能让这个滑块工作。