Change a Page to Split Mode
Hi,
I am trying to move a page under a parent page but I am getting the following error message:
A synchronized page can only be moved under another synchronized page. Please, change the page to split mode and try again.
We do have a second language available as a translation option, but it currently is not being used. Neither of the pages have a translation assigned to them and are not synced. None of my templates have a translation assigned.
I've read the following help documentation about page synchronization but there is no mention of Split Mode : http://www.sitefinity.com/documentation/documentationarticles/user-guide/pages/translating-a-page/translating-an-existing-page/,
Any suggestions on how I can change a page to Split Mode?
Thanks,
Randy
Hello,
What is the page type of the parent page you are trying to move under: norma, group or redirect? Also, when were the parent and child pages, created - before or after adding the second language to Sitefinity. Since they do not have translations, it is odd for this error to appear. A screenshot of your pages tree will be helpful as well. Currently I am not able to reproduce this on the latest version.
Greetings,How was this fixed? I am having a similar issue.
I'm having the same issue. Please advice!
Hi Menno,
This problem can occur if the pages have their localization strategy to NotSelected. You can use the following code to check if the problematic page's localization strategy is NotSelected and set it to Split. Keep in mind that the check if the page is a frontend page is required because NotSelected is the default setting for backend pages.:
var pageManager = PageManager.GetManager();
pageManager.Provider.SuppressSecurityChecks =
true
;
var getPage = pageManager.GetPageNodes().Where(p => p.Page.LocalizationStrategy == Telerik.Sitefinity.Localization.LocalizationStrategy.NotSelected && p.RootNodeId == SiteInitializer.FrontendRootNodeId && p.Parent.Title==
"Solutions"
);
foreach
(var item
in
getPage)
item.Page.PageLanguageLink =
new
PageLanguageLink();
foreach
(var page
in
getPage)
pageManager.SplitSynchronizedPageNode(page,
true
);
pageManager.SaveChanges();