Product title in breadcrumb - Front- & Back-End Development - Front- & Back-End Development - Progress Community
 Front- & Back-End Development

Product title in breadcrumb

  • Product title in breadcrumb
  • I am trying to get product titles to show up in the feather breadcrumb widget following the information in the following two links:

    This is for Sitefinity 8.2 / Feather 1.4.450.0

    I have a custom mvc widget that displays master/details for Sitefinity e-commerce products.  These widgets are being used on hybrid pages and I have verified through debugging and successfully adding the canonical url that the page reference is not null.  What else do I need to add into this to register virtual nodes?

    The breadcrumb widget has its AllowVirtualNodes property set to true.


    Below is the code I have in my custom product controller.

    public ActionResult Index()
               ViewBag.CurrentPageUrl = this.GetCurrentPageUrl();
               return View("Default");
           public ActionResult Details(Product productItem)
               var viewModel = service.CreateProductDetailsViewModel(productItem);
               var page = this.HttpContext.CurrentHandler.GetPageHandler();
               this.ProductTitle = productItem.Title;
               this.AddCanonicalUrlTagIfEnabled(page, productItem);
               return View(viewModel);
    public IEnumerable<SiteMapNode> GetVirtualNodes(SiteMapProvider provider)
               return new List<SiteMapNode>() new SiteMapNode(provider, "customBreadcrumbKey", "~/url", this.ProductTitle) ;

  • Through some help on Google+ (thanks Vesselin) It turns out the issue is that my breadbrumb initializes before the custom controller.  What I have done is to create a new widget to be dropped above the breadcrumb.


    Here is a working example:

    [ControllerToolboxItem(Name = "ProductBreadcrumbExtender", Title = "Product Breadcrumb Extender", SectionName = "MvcWidgets")]
    public class ProductBreadcrumbController : Controller, IBreadcrumExtender
        #region Properties
        public string ProductTitle get; set;
        #region Actions
        public void Details(Product productItem)
            this.ProductTitle = productItem.Title;
            var page = this.HttpContext.CurrentHandler.GetPageHandler();
        public IEnumerable<SiteMapNode> GetVirtualNodes(SiteMapProvider provider)
            return new List<System.Web.SiteMapNode>() new System.Web.SiteMapNode(provider, "customBreadcrumbKey", "~/url", this.ProductTitle) ;