5

私たちが持っている URL から Sitecore メディア アイテムを取得する方法は?

URL は動的 URL/~/media/14BDED00E4D64DFD8F74019AED4D74EB.ashxです。

これは、リッチ テキスト フィールドにアイテムを追加したときに生成されます。

4

2 に答える 2

10

以下のコードを使用できます。

DynamicLink dynamicLink;
if (!DynamicLink.TryParse("/~/media/14BDED00E4D64DFD8F74019AED4D74EB.ashx", out dynamicLink))
    return;
MediaItem mediaItem = Sitecore.Context.Database.GetItem(dynamicLink.ItemId, dynamicLink.Language ?? Sitecore.Context.Language);
于 2013-06-26T08:09:50.070 に答える
3

リッチ テキスト フィールドにアイテムを追加する場合、FieldRenderer を使用して出力をレンダリングできます。その後、Sitecore は正しい URL を自動的に作成します。そうすれば、URL を気にする必要さえありません。

FieldRenderer コントロールは次のように使用できます。

<sc:FieldRenderer ID="renderer" runat="server" FieldName="fieldname" />

または、XSLT を使用している場合:

<sc:text field="fieldname" />

コードビハインドでは、次のようなことができます

FieldRenderer.Render(Sitecore.Context.Item, fieldname);
于 2013-06-26T08:12:14.907 に答える