Grails中的XML站点地图

我试图找出为Grails应用程序生成 XML站点地图的最佳方法(如此处所述: http://www.sitemaps.org/).我不知道有任何现有的插件,所以我可能会建立一个.但是,我想先得到社区的意见.除了支持标准控制器/操作之外,我认为支持内容驱动的应用程序也很好,例如,可以基于title属性生成URL.

你们怎么会这样做?您会考虑什么以及如何实施它?

谢谢!

站点地图非常特定于每个应用程序,因此我不确定是否有足够的公共代码可以提取插件.

以下是我们为http://www.shareyourlove.com生成站点地图的方法.正如您所看到的,由于Groovy / Grails的优秀XML语法,它非常简单和干燥

class SitemapController{

        def sitemap = {
            render(contentType: 'text/xml',encoding: 'UTF-8') {
                mkp.yieldUnescaped '<?xml version="1.0" encoding="UTF-8"?>'
                urlset(xmlns: "http://www.sitemaps.org/schemas/sitemap/0.9",'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") {
                    url {
                        loc(g.createLink(absolute: true,controller: 'home',action: 'view'))
                        changefreq('hourly')
                        priority(1.0)
                    }
                    //more static pages here
                    ...
                    //add some dynamic entries
                    SomeDomain.list().each {domain->
                    url {
                        loc(g.createLink(absolute: true,controller: 'some',action: 'view',id: domain.id))
                        changefreq('hourly')
                        priority(0.8)
                    }
                }
           }
    }

URL映射

class UrlMappings {
    static mappings = {

        "/sitemap"{
            controller = 'sitemap'
            action = 'sitemap'
        }
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类
XML入门的常见问题(二)
Java对象的强、软、弱和虚引用
JS解析XML文件和XML字符串详解
java中枚举的详细使用介绍
了解Xml格式
XML入门的常见问题(四)
深入SQLite多线程的使用总结详解
PlayFramework完整实现一个APP(一)
XML和YAML的使用方法
XML轻松学习总节篇