sitemap
End user
Legacy
Jahia 7.3
Generate a sitemap
Question
My website does not have a sitemap and I need to generate it: how can it be done?
Answer
To generate a sitemapn the module Jahia sitemap is the one to use. Unfortunately as it was not added when the website was created, you have to follow these following steps:
- Install the module sitemap and associate it to your website
- Go the JCR Console (DX_URL/modules/tools/jcrConsole.jsp) and execute the following script
def siteName = "SITE_NAME"; def ni = session.getWorkspace().getQueryManager().createQuery("select * from [jnt:page] where ['jcr:mixinTypes'] <> 'jmix:sitemap' and ISDESCENDANTNODE('/sites/" + siteName + "')", Query.JCR_SQL2).execute().getNodes(); while (ni.hasNext()) { def n = ni.nextNode(); n.addMixin("jmix:sitemap"); log.info("Added mixin for : " + n.getPath()); } session.save();
- This script will add the mixin jmix:sitemap which is being used to generate the sitemap
- From the edit mode, publish all of your website in order to apply the previous modifications to the live workspace
- Open the URL WEBSITE_URL/sitemap.xml