Nello starter kit utilizzando il builder xpath, come ottengo tutti gli elementi che ereditano dal modello "Sezione sito" sotto l'elemento Home?Recupera elementi utilizzando la query sitecore
Quando eseguo il seguente:
/sitecore/content/home/*[@@templatekey='product section']
un articolo è restituito /sitecore/content/Home/Products
che ha un senso, tuttavia, il seguente non restituisce nulla:
/sitecore/content/home/*[@@templatekey='site section']
Quello che sto cercando di fare è crea un menu dagli elementi che ereditano il modello 'Site Section' usando il controllo web asp.net invece di xslt.
Qualche idea?
Grazie, Tarek
** AGGIORNAMENTO
fornire ulteriori informazioni sulla questione:
Articolo /sitecore/content/Home/Products
ha template /sitecore/templates/Starter Kit/Site Sections/Product Section
che ha un modello di base di /sitecore/templates/Starter Kit/Item Types/Site Section
Se io voglio gli articoli Prodotti e referenze (simili ai prodotti) in Home Vorrei eseguire la seguente query :
/sitecore/content/home/*[@@templatekey='product section' or @@templatekey='references section']
C'è un modo per ottenere l'elemento sotto Home che ha Sezione sito come modello di base. In xslt esiste un metodo sc:GetItemsOfType('site section',$home/item)
che lo fa.
** risposta
var homeItem = Sitecore.Context.Database.GetItem(Sitecore.Context.Site.StartPath);
var siteSectionItems = new List<Item>();
foreach (Item item in homeItem.Children)
{
var itemTemplate = TemplateManager.GetTemplate(item);
if (itemTemplate.InheritsFrom("Site Section"))
siteSectionItems.Add(item);
}
Grazie, apprezzare i dettagli, ma il codice è la stessa cosa che lanciare query:/Sitecore/content/home/* [@@ templatekey = 'sezione prodotti'] Non è prendere in mano il modello di base della sezione prodotto che dovrebbe essere la sezione del sito. –