2013-03-05 2 views
6

블로그 요약 페이지 - 블로그 게시물을 나열하는 페이지 - 각 블로그 게시물에서 볼 수있는 텍스트가 조금 더 많습니다.과수원 블로그 요약 텍스트

이것이 가능합니까? 설정에서 아무 곳이나 볼 수 없으며 모양 추적을 통해 템플릿이 무엇인지 확인할 수 없습니다.

답변

4

다른 게시물을 읽음으로써 책임있는보기가 Parts_Common_Body_Summary이라는 것을 알았습니다. 그래서 나는 과수원의 핵심/일반 폴더에서이 복사하고 난 다음 설정이에 대한 규칙을 에 Placement.info을 다음과 같이 Parts_Blog_Summary

로 이름을 바꾸기 전에, 폴더를 내 주제에 걸쳐 그것을 복사보기 :

var body = new HtmlString(Html.Excerpt(bodyHtml, 350).ToString().Replace(Environment.NewLine, "</p>" + Environment.NewLine + "<p>")); 
5

내가 Orchar에 최근에 같은 일을 할 필요가 :

<Match ContentType="BlogPost"> 
<Match DisplayType="Summary"> 
     <Place Parts_Common_Body_Summary="Content:after;Alternate=Parts_Blog_Summary"/> 
</Match>  
</Match> 

이것은 단지 나에게 새로운 대체보기에서 문자열 길이를 변경하는 작업을 왼쪽 d v1.6. 모양 추적을 사용하여 올바른 방향으로 가고 있습니다. orchard documentation for alternatesplacement이 이에 해당합니다. Tony Johnson's Argument Exception Blog에는 이러한 종류의 수정에 대한 좋은 예가 있습니다.

Phil의 답변에 따라 현재 테마의 placement.info를 수정해야합니다.

<Match ContentType="BlogPost"> 
<Match DisplayType="Summary"> 
    <Place Parts_Common_Body_Summary="Content:5;Alternate=Parts_BlogPostSummaryBody"/> 
</Match> 
</Match> 

그리고 테마의보기 폴더에 "콘텐츠 - BlogPost.Summary.cshtml"라는 이름의 다른 파트를 추가;

@using Orchard.ContentManagement.ViewModels 
@using Orchard.ContentManagement 
@using Orchard.Core.Common.Models 

@{  
ContentItem item = Model.ContentItem; 
string title = Model.Title.ToString(); 
BodyPart bpItem = item.As<BodyPart>(); 
string linkUrl = Url.ItemDisplayUrl(item); 
} 

<h4>@Html.ItemDisplayLink(title, item)</h4> 
<div class="publishinfo">@Model.ContentItem.CommonPart.PublishedUtc by @Model.ContentItem.CommonPart.Owner.UserName</div> 
     <div> 
    <p>@Html.Raw(@bpItem.Text)</p> 
</div> 
관련 문제