Failed to execute template. Cause: [Access denied when checking [script] access to [xwiki:Collaboratory.UX.HbpSkin.WebHome] for user [xwiki:XWiki.Admin]]. Click on this message for details.

sitemap - HBP Wiki

IAM21 instance, do not create collab nor modify a team, your changes will be lost


Changes for page sitemap

Last modified by bougault on 2023/09/15 15:50

From version 7.2
edited by bougault
on 2023/09/15 09:15
Change comment: There is no comment for this version
To version 18.1
edited by bougault
on 2023/09/15 09:26
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,8 +1,38 @@
1 +{{groovy}}
2 +if (xcontext.action == "get") {
3 + response.setContentType("text/xml")
4 +
5 + def sitePages = [
6 + // here you define the page you want in your sitemap
7 + // the order is: document name, priority, change frequency
8 + ["Main.WebHome","1","weekly"],
9 + ["About.Contact","0.8","monthly"],
10 + ["About.Team","0.5", "monthly"]
11 + // add more here...
12 + ]
13 +
14 + println('')
15 + println('<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">')
16 +
17 + for (page in sitePages) {
18 + println("<url>")
19 + println(" <loc>" + xwiki.getDocument(page[0]).getExternalURL() + "</loc>")
20 + println(" <lastmod>" + xwiki.formatDate(xwiki.getDocument(page[0]).contentUpdateDate, 'yyyy-MM-dd') + "</lastmod>")
21 + println(" <changefreq>" + page[2]+ "</changefreq>")
22 + println(" <priority>" + page[1] + "</priority>")
23 + println("</url>")
24 + }
25 +
26 + println("</urlset>")
27 +} else {
28 + println("{{html}}<a href='"+ doc.getURL('get','outputSyntax=plain') +"'>Generate Sitemap</a>{{/html}}")
29 +}
30 +{{/groovy}}
31 +
32 +
1 1  {{velocity}}
2 -#set($hql = "")
3 -#set($results = $xwiki.searchDocuments($hql, 0, 0))
4 -$results
5 -#foreach ($item in $results)
6 - * $item
7 -#end
34 +#set ($spaceReferenceString = 'Collabs')
35 +#set ($query = $services.query.xwql("where doc.space like :space"))
36 +#set ($query = $query.bindValue('space').literal("${spaceReferenceString}.").anyChars().query())
37 +$query.execute()
8 8  {{/velocity}}