私はsitecoreのURLのパスを取得し、実際のURLと一致させるメニューを持っています。 IE:私が何をしようとしています何URLの代わりにタイトルフィールドを取得する方法
ホーム/メイン/フォルダ/この-ある-タイトル= www.website.com/this-is-the-title
は、「タイトル」フィールドを使用していますSitecoreでpathプロパティの代わりにページにタイトルを表示することができます。
HTML
<ItemTemplate>
<div class="leftNavImage">
<li>
<asp:HyperLink ID="innerHyperLink" runat="server" ></asp:HyperLink>
</li>
</div>
</ItemTemplate>
C#
if (innerItem != null)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
// this creates a link to the page in sitecore once clicked
HyperLink topNavigation = (HyperLink)e.Item.FindControl("innerHyperLink");
topNavigation.NavigateUrl = LinkManager.GetItemUrl(innerItem);
topNavigation.Text = innerItem.Name;
}
}
私はハイパーリンクその間のフロントエンドに追加しようとしたが、それがなかった全てのタイトルを取り、代わりにページリンクのすべてのリンクで複製しました。また、タイトルを表すためにバックエンドに変数を設定しようとしましたが、協力していませんでした。var title = Sitecore.Context.Item ["Title"]。ToString; 。私はそれが簡単な答えだと確信していますが、私はそれを見逃しているようです。
<ItemTemplate>
<div class="leftNavImage">
<li>
<asp:HyperLink ID="innerHyperLink" runat="server" >
<sc:Text Field="Title" Item="<%# Container.DataItem %>" runat="server" />
</asp:HyperLink>
</li>
</div>
</ItemTemplate>
あなたは完全にコードの背後にあるコードを取り除きたい場合は、あなたとasp:HyperLink
を置き換えることができます:あなたはまた、単にsc:Text
やsc:FieldRenderer
コントロールを使用して、リピーターに項目を設定することができ
shazam ...ありがとう!それは簡単だとわかった – Keith