diff --git a/src/Umbraco.Core/Constants-Icons.cs b/src/Umbraco.Core/Constants-Icons.cs
index 53501a012c90..cf2c263d83c7 100644
--- a/src/Umbraco.Core/Constants-Icons.cs
+++ b/src/Umbraco.Core/Constants-Icons.cs
@@ -67,7 +67,7 @@ public static class Icons
///
/// System media audio icon.
///
- public const string MediaAudio = "icon-sound-waves";
+ public const string MediaAudio = "icon-audio-lines";
///
/// System media article icon
@@ -77,7 +77,7 @@ public static class Icons
///
/// System media vector icon.
///
- public const string MediaVectorGraphics = "icon-picture";
+ public const string MediaVectorGraphics = "icon-origami";
///
/// System media folder icon.
diff --git a/src/Umbraco.Core/EmbeddedResources/Snippets/Breadcrumb.cshtml b/src/Umbraco.Core/EmbeddedResources/Snippets/Breadcrumb.cshtml
index 612c80948779..e609ac7c684a 100644
--- a/src/Umbraco.Core/EmbeddedResources/Snippets/Breadcrumb.cshtml
+++ b/src/Umbraco.Core/EmbeddedResources/Snippets/Breadcrumb.cshtml
@@ -1,16 +1,19 @@
+@using Umbraco.Cms.Core.PublishedCache
@using Umbraco.Cms.Core.Routing
-@using Umbraco.Extensions
+@using Umbraco.Cms.Core.Services.Navigation
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage
+@inject IPublishedContentCache PublishedContentCache
+@inject IDocumentNavigationQueryService DocumentNavigationQueryService
@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet makes a breadcrumb of parents using an unordered HTML list.
How it works:
- - It uses the Ancestors() method to get all parents and then generates links so the visitor can go back
+ - It uses the Ancestors method to get all parents and then generates links so the visitor can go back
- Finally it outputs the name of the current page (without a link)
*@
-@{ var selection = Model?.Content.Ancestors().ToArray(); }
+@{ var selection = Model?.Content.Ancestors(PublishedContentCache, DocumentNavigationQueryService).ToArray(); }
@if (selection?.Length > 0)
{
diff --git a/src/Umbraco.Core/EmbeddedResources/Snippets/ListAncestorsFromCurrentPage.cshtml b/src/Umbraco.Core/EmbeddedResources/Snippets/ListAncestorsFromCurrentPage.cshtml
index a0056976666d..1ab6c7fb1d08 100644
--- a/src/Umbraco.Core/EmbeddedResources/Snippets/ListAncestorsFromCurrentPage.cshtml
+++ b/src/Umbraco.Core/EmbeddedResources/Snippets/ListAncestorsFromCurrentPage.cshtml
@@ -1,16 +1,19 @@
+@using Umbraco.Cms.Core.PublishedCache
@using Umbraco.Cms.Core.Routing
-@using Umbraco.Extensions
+@using Umbraco.Cms.Core.Services.Navigation
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage
+@inject IPublishedContentCache PublishedContentCache
+@inject IDocumentNavigationQueryService DocumentNavigationQueryService
@inject IPublishedUrlProvider PublishedUrlProvider
@*
This snippet makes a list of links to the of parents of the current page using an unordered HTML list.
How it works:
- - It uses the Ancestors() method to get all parents and then generates links so the visitor can go back
+ - It uses the Ancestors method to get all parents and then generates links so the visitor can go back
- Finally it outputs the name of the current page (without a link)
*@
-@{ var selection = Model?.Content.Ancestors().ToArray(); }
+@{ var selection = Model?.Content.Ancestors(PublishedContentCache, DocumentNavigationQueryService).ToArray(); }
@if (selection?.Length > 0)
{
diff --git a/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesFromCurrentPage.cshtml b/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesFromCurrentPage.cshtml
index 2a88e4766047..39cd12665b51 100644
--- a/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesFromCurrentPage.cshtml
+++ b/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesFromCurrentPage.cshtml
@@ -1,8 +1,11 @@
-@using Umbraco.Cms.Core
@using Umbraco.Cms.Core.Models.PublishedContent
+@using Umbraco.Cms.Core.PublishedCache
@using Umbraco.Cms.Core.Routing
-@using Umbraco.Extensions
+@using Umbraco.Cms.Core.Services.Navigation
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage
+@inject IVariationContextAccessor VariationContextAccessor
+@inject IPublishedContentCache PublishedContentCache
+@inject IDocumentNavigationQueryService DocumentNavigationQueryService
@inject IPublishedValueFallback PublishedValueFallback
@inject IPublishedUrlProvider PublishedUrlProvider
@*
@@ -13,7 +16,7 @@
- It then generates links so the visitor can go to each page
*@
-@{ var selection = Model?.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).ToArray(); }
+@{ var selection = Model?.Content.Children(VariationContextAccessor, PublishedContentCache, DocumentNavigationQueryService).Where(x => x.IsVisible(PublishedValueFallback)).ToArray(); }
@if (selection?.Length > 0)
{
diff --git a/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByDate.cshtml b/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByDate.cshtml
index 168e9b63acf0..9b6796096ca2 100644
--- a/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByDate.cshtml
+++ b/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByDate.cshtml
@@ -1,8 +1,11 @@
-@using Umbraco.Cms.Core
@using Umbraco.Cms.Core.Models.PublishedContent
+@using Umbraco.Cms.Core.PublishedCache
@using Umbraco.Cms.Core.Routing
-@using Umbraco.Extensions
+@using Umbraco.Cms.Core.Services.Navigation
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage
+@inject IVariationContextAccessor VariationContextAccessor
+@inject IPublishedContentCache PublishedContentCache
+@inject IDocumentNavigationQueryService DocumentNavigationQueryService
@inject IPublishedValueFallback PublishedValueFallback
@inject IPublishedUrlProvider PublishedUrlProvider
@*
@@ -14,7 +17,7 @@
- It then generates links so the visitor can go to each page
*@
-@{ var selection = Model?.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).OrderByDescending(x => x.CreateDate).ToArray(); }
+@{ var selection = Model?.Content.Children(VariationContextAccessor, PublishedContentCache, DocumentNavigationQueryService).Where(x => x.IsVisible(PublishedValueFallback)).OrderByDescending(x => x.CreateDate).ToArray(); }
@if (selection?.Length > 0)
{
diff --git a/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByName.cshtml b/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByName.cshtml
index aed9085a76de..575ecae74d3c 100644
--- a/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByName.cshtml
+++ b/src/Umbraco.Core/EmbeddedResources/Snippets/ListChildPagesOrderedByName.cshtml
@@ -1,8 +1,11 @@
-@using Umbraco.Cms.Core
@using Umbraco.Cms.Core.Models.PublishedContent
+@using Umbraco.Cms.Core.PublishedCache
@using Umbraco.Cms.Core.Routing
-@using Umbraco.Extensions
+@using Umbraco.Cms.Core.Services.Navigation
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage
+@inject IVariationContextAccessor VariationContextAccessor
+@inject IPublishedContentCache PublishedContentCache
+@inject IDocumentNavigationQueryService DocumentNavigationQueryService
@inject IPublishedValueFallback PublishedValueFallback
@inject IPublishedUrlProvider PublishedUrlProvider
@*
@@ -14,14 +17,14 @@
- It then generates links so the visitor can go to each page
*@
-@{ var selection = Model?.Content.Children.Where(x => x.IsVisible(PublishedValueFallback)).OrderBy(x => x.Name).ToArray(); }
+@{ var selection = Model?.Content.Children(VariationContextAccessor, PublishedContentCache, DocumentNavigationQueryService).Where(x => x.IsVisible(PublishedValueFallback)).OrderBy(x => x.Name).ToArray(); }
@if (selection?.Length > 0)
{