| ... |
... |
@@ -1,38 +1,38 @@ |
| 1 |
1 |
{{groovy}} |
| 2 |
|
-if(request.gen && request.gen == "1") { |
| 3 |
|
- content = "" |
| 4 |
|
- def sitePages = [ |
|
2 |
+if (xcontext.action == "get") { |
|
3 |
+ response.setContentType("text/xml") |
|
4 |
+ |
|
5 |
+ def sitePages = [ |
| 5 |
5 |
// here you define the page you want in your sitemap |
| 6 |
6 |
// the order is: document name, priority, change frequency |
| 7 |
|
- |
| 8 |
8 |
["Main.WebHome","1","weekly"], |
| 9 |
9 |
["About.Contact","0.8","monthly"], |
| 10 |
|
- ["About.Team","0.5", "monthly"], |
|
10 |
+ ["About.Team","0.5", "monthly"] |
| 11 |
11 |
// add more here... |
| 12 |
|
- ]; |
|
12 |
+ ] |
| 13 |
13 |
|
| 14 |
|
- content += '' |
| 15 |
|
- content += '<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">' |
|
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 |
16 |
|
| 17 |
|
- for(page in sitePages) { |
| 18 |
|
- content += "<url>" |
| 19 |
|
- content += " <loc>" + xwiki.getDocument(page[0]).getExternalURL() + "</loc>" |
| 20 |
|
- content += " <lastmod>" + xwiki.formatDate(xwiki.getDocument(page[0]).contentUpdateDate, 'yyyy-MM-dd') + "</lastmod>" |
| 21 |
|
- content += " <changefreq>" + page[2]+ "</changefreq>" |
| 22 |
|
- content += " <priority>" + page[1] + "</priority>" |
| 23 |
|
- content += "</url>" |
| 24 |
|
- } |
|
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 |
25 |
|
| 26 |
|
- content += "</urlset>" |
| 27 |
|
- new File("../webapps/xwiki/sitemap.xml").withPrintWriter { w | |
| 28 |
|
- w.println content |
| 29 |
|
- } |
| 30 |
|
- println("Done: <a href='/xwiki/sitemap.xml'>sitemap.xml</a>") |
|
26 |
+ println("</urlset>") |
|
27 |
+} else { |
|
28 |
+ println("{{html}}<a href='"+ doc.getURL('get','outputSyntax=plain') +"'>Generate Sitemap</a>{{/html}}") |
| 31 |
31 |
} |
|
30 |
+{{/groovy}} |
| 32 |
32 |
|
| 33 |
|
-else { |
| 34 |
34 |
|
| 35 |
|
- println("<a href='"+ doc.getURL('view', "gen=1") +"'>Generate Sitemap</a>") |
| 36 |
|
- |
| 37 |
|
-} |
| 38 |
|
-{{/groovy}} |
|
33 |
+{{velocity}} |
|
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() |
|
38 |
+{{/velocity}} |