public void Process(SitemapGetItemsArgs args)
        {
            Assert.ArgumentNotNull(args, nameof(args));

            var homeItemPath = args.SitemapSiteArgs.SiteContext.StartPath;

            var homeItem = args.SitemapSiteArgs.SiteContext.Database.GetItem(homeItemPath);

            Recurse(homeItem, args);
        }
        private static void Recurse(Item item, SitemapGetItemsArgs args)
        {
            var sitemapGetItemArgs = new SitemapGetItemArgs(item, args.SitemapSiteArgs);

            CorePipeline.Run("sitemap.ProcessItem", sitemapGetItemArgs);

            args.SitemapItems.AddRange(sitemapGetItemArgs.SitemapItems);

            foreach (var child in item.GetChildren().Select(i => i))
            {
                Recurse(child, args);
            }
        }
Ejemplo n.º 3
0
        public void Process(SitemapGenerateArgs args)
        {
            Assert.ArgumentNotNull(args, nameof(args));

            foreach (var sitemapSite in args.SitemapSites)
            {
                var sitemapGetItemsArgs = new SitemapGetItemsArgs(sitemapSite);

                CorePipeline.Run("sitemap.GetItems", sitemapGetItemsArgs);

                args.SitemapItems.AddRange(sitemapGetItemsArgs.SitemapItems);
            }
        }