More in this section
Forums / General Discussions / Programatically add URL to pages.

Programatically add URL to pages.

The forums are in read-only mode. In case that you want to directly contact the Progress Sitefinity team use the support center. In our Google Plus group you can find more than one thousand Sitefinity developers discussing different topics. For the Stack Overflow threads don’t forget to use the “Sitefinity” tag.
2 posts, 0 answered
  1. Michael Cherry
    Michael Cherry avatar
    1 posts
    Registered:
    25 Feb 2010
    11 May 2011
    Link to this post
    We're attempting to add an alternate URL to pages imported from Sitefinity 3.x so the that migrated site will accept URLs such as http://www.siteurl.com/contactus.aspx as well as http://www.siteurl.com/contactus but are having difficulty getting the additional URLs associated with the pages.  The entries are showing up in the database, but they do not work on the site front end and do not appear in the Additional URLs text box when editing page properties.  Any help that could be provided in this matter would be appreciated.

    if (urlName.ToLower().IndexOf(".aspx") == -1)
    {
        pageUrlData = new PageUrlData();
        pageUrlData.Id = Guid.NewGuid();
        pageUrlData.Url = "~/" + urlName + ".aspx";
        pageUrlData.IsDefault = false;
        pageUrlData.ApplicationName = pageData.ApplicationName;
        pageUrlData.Disabled = false;
        pageUrlData.LastModified = DateTime.Now;
     
        pageNode.Urls.Add(pageUrlData);
    }
  2. Victor Velev
    Victor Velev avatar
    1345 posts
    Registered:
    06 Jul 2015
    12 May 2011
    Link to this post
    Hello Michael,

    Please refer to the code sample attached bellow which demonstrates the fluent api behavior when creating pages with additional urls.  You can customize it anyway you want in order to fit it to your needs.

    var pageFacade = App.WorkWith().Page().CreateNewStandardPage(PageLocation.Frontend); 
        
                var additionalUrl = "~/mypageredirect1"; 
                pageFacade 
                    .Do(p => 
                    
                        p.Name = "mytest3"; 
                        p.Title = "mytitle3"; 
                        p.UrlName = "myurl"; 
                        p.ShowInNavigation = true; 
                        p.LastModified = DateTime.UtcNow; 
                        p.DateCreated = DateTime.UtcNow; 
                        p.Page.Title = "myname3"; 
                        //set title which appears in page header 
                        p.Page.HtmlTitle = "mytitle3"; 
                        p.Description = "mydesc3r"; 
                        p.AllowMultipleUrls = true; 
                        pageFacade.PageManager.AddPageNodeAdditionalUrl(p, CultureInfo.InvariantCulture, additionalUrl, false); 
        
                    }); 
                pageFacade.SaveChanges(); 
        
                SiteMapBase.Cache.Flush();

    Greetings,
    Victor Velev
    the Telerik team
    Do you want to have your say in the Sitefinity development roadmap? Do you want to know when a feature you requested is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
2 posts, 0 answered