November Happy Hour will be moved to Thursday December 5th.
November Happy Hour will be moved to Thursday December 5th.
Hi Paul! Can you provide a little bit more information on what you are trying to accomplish? Maybe provide some sample URLs that are hoping to acheive...
Chris
Thanks for replying. Sorry it took me so long to respond. i was gathering the resources for this post and there are a bunch of them:) Watch out!
Currently we installed this blog template on episerver 9
http://world.episerver.com/blogs/Jacob-Khan/Dates/2014/9/Blog-Template-for-EPiServer-CMS-75/
it wrks just fine. The urls out of the box are
domain/startpage/year/month/blogtitle
They want domain/startpage/blogtitle
I found this
http://joelabrahamsson.com/custom-routing-for-episerver-content/
and parts of it works and other parts do not work for me
I am able to modify the simple address according to the url name and buld the url the way i want and set the external url the way they want. unfortunatly the uls do not go anywhere. the only url that works is the
domain/startpage/year/month/blogtitle
one. i tried to add a new route
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); RegisterRoutes(RouteTable.Routes); } protected new void RegisterRoutes(RouteCollection routes) { routes.MapRoute( "BlogItem", // Route name "{action}/{id}", // URL with parameters new { controller = "BlogItemController", action = "blog" } // Parameter defaults ); routes.MapRoute( "BlogItem", // Route name "blog/{id}", // URL with parameters new { controller = "BlogItemController", action = "blog" } // Parameter defaults ); }
but after seeting the url manually and saving the externalurl the routs are not being hit for some reason.
I looked into how the blog item is rendered and it is a partial.
Here is the part that i have working
public class BlogPartialRouterBlogItems : IPartialRouter<BlogStartPage, BlogItemPage> { public static PageData CurrentPage { get { if (HttpContext.Current == null) return null; //throw new NotSupportedException("Cannot get current page without HttpContext"); var pageBase = HttpContext.Current.Handler as PageBase; if (pageBase == null) return null; //throw new NotSupportedException("Cannot get current PageBase object"); var currentPage = pageBase.CurrentPage; if (currentPage == null) return null; //throw new NotSupportedException("Current page is not set."); return currentPage; } } public PartialRouteData GetPartialVirtualPath(BlogItemPage BlogPage, string language, RouteValueDictionary routeValues, RequestContext requestContext) { var contentLink = ContentRoute.GetValue("node", requestContext, routeValues) as ContentReference; if (PageEditing.PageIsInEditMode) { return null; } string UrlToBeDisplayed = GetBlogPrefix(BlogPage.URLSegment); PageData currentPage = CurrentPage; //if (currentPage != null && !String.IsNullOrEmpty(currentPage.ExternalURL)) // UrlToBeDisplayed = currentPage.ExternalURL; var routData = new PartialRouteData { BasePathRoot = ContentReference.StartPage, PartialVirtualPath = UrlToBeDisplayed //BasePathRoot = _blogStart, //PartialVirtualPath = String.Format("{0}/{1}/", BlogPage.Name, BlogPage.Name) }; return routData; } /* more code down here that is not relevant */ }
Also we talked to one of the episerver reps and he sent these links but most of them are out dated ( mostly for epi 7 ) and some of the major parts are not compatable. at least i haven't found a way to get them to work.
Any sugestions would be greatly appreciated!
Thank you!
Hello everyone i need to change the url based on he page type and i haven;t found a good way to do this.
i have found this post
http://joelabrahamsson.com/custom-routing-for-episerver-content/
https://tedgustaf.com/blog/2008/create-a-custom-url-rewrite-provider-for-episerver/
and this one but they don't seem to work in 9 ?
Any help would be appreciated.
Thanks
PK