0
我正在使用sitecore 7單個站點實例。 內容編輯器生成鏈接到其他網頁Sitecore的這種格式Sitecore 7,鏈接管理器,alwaysIncludeServerUrl不工作
<a href="~/link.aspx?_id=C136420D804946BA83DEF823817F5944&_z=z">Agriculture</a>
後發佈鏈接不會轉化爲實際的服務器相關的URL。 我已經chnaged鏈接管理器設置「alwaysIncludeServerUrl」爲true,但仍然沒有得到正確的URL。
我已發佈該頁面,但仍未顯示實際的網址。
更新:我不能在這裏使用字段控制,因爲有一些額外的邏輯控制着什麼文本需要被渲染。例如,如果定義了頁面數據源,則使用該數據源,否則使用當前項目的「ContentBlock」字段。
public string ContentBlockContent = "";
Sitecore.Data.Items.Item currentItem;
if (Parent is Sublayout && !string.IsNullOrEmpty(((Sublayout) Parent).DataSource))
{
currentItem = Sitecore.Context.Database.GetItem(((Sublayout) Parent).DataSource);
}
else
{
currentItem = Sitecore.Context.Item;
}
if (currentItem.Fields["ContentBlock"] != null)
{
ContentBlockContent = currentItem.Fields["ContentBlock"].ToString();
}
if (currentItem.Fields["PageContentSource"] != null)
{
var contentPageSource = currentItem.Fields["PageContentSource"];
var sourceItem = Sitecore.Context.Database.GetItem(contentPageSource.ToString());
if (sourceItem != null && sourceItem.Fields["ContentBlock"] != null)
{
ContentBlockContent = sourceItem.Fields["ContentBlock"].ToString();
}
}
這就是「ContentBlockContnet」屬性如何呈現在頁面上。
<%= ContentBlockContent %>
我已經添加了一點點細節。 – Ali
終於奏效了。我使用了FieldRenderer.Render(sourceItem,「ContentBlock」) – Ali