Имам свойство, което е Rich Text Editor в Umbraco 7.
Искам да получа част от съдържанието на това свойство, по-точно първия p таг.
Как мога да постигна това в Umbraco? Дали това е помощен клас, който мога да използвам?
Имам свойство, което е Rich Text Editor в Umbraco 7.
Искам да получа част от съдържанието на това свойство, по-точно първия p таг.
Как мога да постигна това в Umbraco? Дали това е помощен клас, който мога да използвам?
Няма помощен метод, който можете да използвате веднага, но не би трябвало да е твърде трудно да напишете свой собствен.
Ако използвате MVC, можете да напишете разширение към MVC HtmlHelper, както следва:
public static string GetFirstParagraph(this HtmlHelper helper, IHtmlString input)
{
if (input != null && input.ToString() != string.Empty)
{
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(input.ToString());
var p = htmlDoc.DocumentNode.SelectSingleNode("//p");
if (p != null)
{
return p.InnerText;
}
}
return null;
}
За да извикате този метод във вашия изглед, просто въведете:
@Html.GetFirstParagraph(Umbraco.Field("yourPropertyAlias"))
ако използвате метода Umbraco Field, или:
@Html.GetFirstParagraph(Model.YourProperty)
ако вашият изглед е силно въведен.
Ако всъщност използвате уеб формуляри, можете да създадете макрос за бръснач и да използвате кода по-горе, за да изпълните същата задача.