| ... |
... |
@@ -1,38 +1,27 @@ |
| 1 |
|
-{{groovy}} |
| 2 |
|
-if(request.gen && request.gen == "1") { |
| 3 |
|
- content = "" |
| 4 |
|
- def sitePages = [ |
| 5 |
|
- // here you define the page you want in your sitemap |
| 6 |
|
- // the order is: document name, priority, change frequency |
| 7 |
|
- |
| 8 |
|
- ["Main.WebHome","1","weekly"], |
| 9 |
|
- ["About.Contact","0.8","monthly"], |
| 10 |
|
- ["About.Team","0.5", "monthly"], |
| 11 |
|
- // add more here... |
| 12 |
|
- ]; |
| 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">' |
| 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 |
|
- } |
| 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>") |
| 31 |
|
-} |
| 32 |
|
- |
| 33 |
|
-else { |
| 34 |
|
- |
| 35 |
|
- println("<a href='"+ doc.getURL('view', "gen=1") +"'>Generate Sitemap</a>") |
| 36 |
|
- |
| 37 |
|
-} |
| 38 |
|
-{{/groovy}} |
|
1 |
+{{velocity}} |
|
2 |
+#if ($xcontext.action == "get") |
|
3 |
+ $response.setContentType("text/xml") |
|
4 |
+ #set ($spaceReferenceString = 'Collabs') |
|
5 |
+ #set ($query = $services.query.xwql("where doc.space like :space")) |
|
6 |
+ #set ($query = $query.bindValue('space').literal("${spaceReferenceString}.").anyChars().query()) |
|
7 |
+ #set ($resources = $query.setLimit(10).execute()) |
|
8 |
+ <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"> |
|
9 |
+ #set($home = $xwiki.getDocument('Main.WebHome')) |
|
10 |
+ <url> |
|
11 |
+ <loc>$home.getExternalURL()</loc> |
|
12 |
+ </url> |
|
13 |
+ #foreach ($resource in $resources) |
|
14 |
+ #set($page = $xwiki.getDocument($resource)) |
|
15 |
+ <x>$resource</x> |
|
16 |
+ #if($page) |
|
17 |
+ <url> |
|
18 |
+ <loc>$page.getExternalURL()</loc> |
|
19 |
+ <lastmod>$xwiki.formatDate($page.contentUpdateDate, 'yyyy-MM-dd')</lastmod> |
|
20 |
+ </url> |
|
21 |
+ #end |
|
22 |
+ #end |
|
23 |
+ </urlset> |
|
24 |
+#else |
|
25 |
+{{html}}<a href="$doc.getURL('get','outputSyntax=plain')">Generate Sitemap</a>{{/html}} |
|
26 |
+#end |
|
27 |
+{{/velocity}} |