London Dev Meetup Rescheduled! Due to unavoidable reasons, the event has been moved to 21st May. Speakers remain the same—any changes will be communicated. Seats are limited—register here to secure your spot!

Issue with Geta Optimizely Sitemaps After Upgrading to CMS 12

Vote:
 

I have over 50 sites set up in Optimizely, and we are in the process of upgrading to CMS 12. After upgrading to Optimizely 12, one of the packages I upgraded was Geta SEO. Since the upgrade, all existing sitemap entries are empty. Is this a configuration error or an issue related to the upgrade?

Here is my SEO configuration in CMS 12:

public void ConfigureServices(IServiceCollection services)
{
services.AddSitemaps(siteMapOption =>
{
siteMapOption.EnableLanguageDropDownInAdmin = true;
}, policy =>
{
policy.RequireRole(Roles.CmsAdmins);
});
}

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
endpoints.MapRazorPages();
endpoints.MapContent();
});
}

When I run the "Generate Search Engine Sitemaps" scheduled job, it only generates the sitemap for the current site I'm working on. Do i have to manually add them again in CMS 12?

 

#337833
Edited, Apr 15, 2025 19:19
Vote:
 

Hello Farhin,

I have Geta.Optimizely.Sitemaps running on multiple clients using CMS 12 including some with multiple websites and I can see that sitemaps are generated for all websites when the job runs on a scheduled basis or when it is run manually.  As this is a new DLL with a different namespace, have you tried removing your sitemap configurations and readding them within the Geta Sitemaps interface?

This is an example of the configuration we are using:

services.AddSitemaps(x =>
{
    x.EnableLanguageDropDownInAdmin = true;
    x.EnableRealtimeCaching = true;
    x.EnableRealtimeSitemap = false;
}, p => p.RequireRole(OptimizelyIdentityDefaults.Roles.ContentAdmins, Roles.Administrators));


#337843
Edited, Apr 16, 2025 7:54
Farhin - Apr 16, 2025 13:12
Thank you Mark for responding.
Regarding the change in the namespace—since this differs from version 11, I understand the difference . When I checked the database, the assembly version for 11 starts with Geta.Seo..., whereas CMS 12 uses Geta.Optimizely.
I tried running the scheduled job, and it does generate the sitemap, but only for the currently active site. So, I’m assuming I’ll need to manually switch to each of the 50 sites we have and generate it, or alternatively, create a one-time scheduled job that handles all sites.
Would you recommend removing the old assembly entries from the database, given that they won't be used anymore and new entries will be generated under the new namespace?
Also, regarding the settings you provided—I have them configured in my code, except for EnableRealtimeCaching and EnableRealtimeSitemap. Should I add those as well? Will they have any noticeable impact?
I’d really appreciate your advice on this.
Mark Stott - Apr 17, 2025 12:01
Hello Farhin,

I'm observing other issues where a CMS 11 to CMS 12 upgrade has happened and the old entries for Geta.SEO.Sitemaps namespace has been preserved in the database. Some clean up in the DB and a restart may be in order here. I'm trying to validate this on a support ticket of my own at the moment. We have the issue in prep, but not local development.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.