2016-12-05 28 views
0

フィールド(HistoryBodyとTestFieldLong)の長いテキストで、必須のカスタムコンテンツモジュールがあります。私のコンテンツウィジェットでは、このフィールドにリッチテキストエディタがあります。このタイプの各コンテンツには、画像がフィールドに埋め込まれています。Sitefinityカスタムリストテンプレート埋め込みイメージが表示されません

これが使用されるカスタムリストテンプレートです:私は、ページ上のウィジェットを配置...

@model Telerik.Sitefinity.Frontend.DynamicContent.Mvc.Models.DynamicContentListViewModel 

@using Telerik.Sitefinity.Frontend.DynamicContent.WidgetTemplates.Fields.Helpers; 
@using Telerik.Sitefinity; 
@using Telerik.Sitefinity.Data.ContentLinks; 
@using Telerik.Sitefinity.Frontend.Mvc.Helpers; 
@using Telerik.Sitefinity.Frontend.Mvc.Models; 
@using Telerik.Sitefinity.Web.DataResolving; 
@using Telerik.Sitefinity.Model.ContentLinks; 
@using Telerik.Sitefinity.Modules.Pages; 

@Html.Script(ScriptRef.JQuery, "top", false) 

<h3>Company History</h3> 

<div class="@Model.CssClass"> 
    @foreach (var item in Model.Items) 
    { 
     <div class="" @Html.InlineEditingAttributes(Model.ProviderName, Model.ContentType.FullName, (Guid) item.Fields.Id)> 
      <h3 class="sf-event-title">@item.Fields.Title</h3> 
      &nbsp;@item.Fields.TimelineLabel<br /> 
      <p @Html.InlineEditingFieldAttributes("HistoryBody", "LongText")>@Html.Raw(item.Fields.HistoryBody)</p> 
      <p @Html.InlineEditingFieldAttributes("TestFieldLong", "LongText")>@Html.Raw(item.Fields.TestFieldLong)</p> 
     </div> 
    } 


@if (Model.ShowPager) 
{ 
    @Html.Action("Index", "ContentPager", new 
    { 
     currentPage = Model.CurrentPage, 
     totalPagesCount = Model.TotalPagesCount.Value, 
     redirectUrlTemplate = ViewBag.RedirectPageUrlTemplate 
    }) 
} 
</div> 

どちらも長いテキストフィールドがリッチテキスト編集を使用するように設定されており、使用するように設定上記のカスタムリストテンプレートを使用して、一度に1つのウィジェットのみを表示するようにページネーションを設定します。だから、要約を見るのではなく、ユーザーは画像で完全な情報を見ることができます。そして、より多くの情報を見るために別のページに移動することができます...計画はうまくいきます...しかし、画像は表示されません。画像が見つからないかのようにプレースホルダーが表示されます。

私はコンテンツにカスタム画像フィールドを追加しようとしましたが、カスタムリストテンプレートのいずれかを表示することができませんでした。

これを修正する方法に関するご意見やご指摘をいただければ幸いです。

この

は、あなたがリンクを解決したい場合は、それがあるべき

答えて

1

は、あなたのテンプレートでは、あなたがあなたのケースではLinkParser.ResolveLinks()メソッド

を使用する必要があります... Sitefinityのv9.xです:

<p @Html.InlineEditingFieldAttributes("HistoryBody", "LongText")>@Html.Raw(LinkParser.ResolveLinks((string)item.Fields.HistoryBody,DynamicLinksParser.GetContentUrl,null,SystemManager.IsInlineEditingMode))</p> 
<p @Html.InlineEditingFieldAttributes("TestFieldLong", "LongText")>@Html.Raw(LinkParser.ResolveLinks((string)item.Fields.TestFieldLong,DynamicLinksParser.GetContentUrl,null,SystemManager.IsInlineEditingMode))</p> 

そしてこのusings:

using Telerik.Sitefinity.Modules.GenericContent; 
using Telerik.Sitefinity.Services; 
using Telerik.Sitefinity.Web.Utilities; 
+0

私はusingsを追加し、あなたが変更に言及し、次のエラーを取得しようとしました: "メソッドグループであるため、動的にディスパッチされた操作の引数として 'GetContentUrl'を使用できません。メソッドを呼び出すつもりでしたか? "GetContentUrlを使用して.... – Kixoka

+0

申し訳ありませんが、文字列へのキャストを忘れました。更新された私の答え –

+0

は動作します:)ありがとう! – Kixoka

関連する問題