⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 opml.vm

📁 这个weblogging 设计得比较精巧
💻 VM
字号:
<?xml version="1.0" encoding='utf-8'?>
$pageHelper.setContentType("text/xml")
<opml version="1.1">
<head>
<title>Roller-generated OPML</title>
</head>
#macro( spaces $depth )#foreach( $i in [0..$depth] )    #end#end
#**
* Recursive VelociMacro to render OPML for folder.
* @param folder Folder to be rendered as OPML or null to render from top.
*#
#macro( genOpml $folder $depth )
    #set( $depth = $depth + 1 )
    #if( !$folder )
        <outline text="Roller-generated OPML">
        #set( $topfolders = $pageModel.getTopLevelFolders() )
        #foreach( $topfolder in $topfolders )
            #genOpml( $topfolder $depth )
        #end
        </outline>
    #else
        #spaces($depth)<outline text="$utilities.textToXML($folder.name)">
        #set( $bookmarks = $folder.getBookmarks() )
        #foreach( $bookmark in $bookmarks )
            #if( $bookmark.feedUrl && $bookmark.feedUrl.trim().length()>0 )
                #set($feedUrl = $bookmark.feedUrl)
            #end
            #spaces($depth)<outline #if($bookmark.url)text="$utilities.textToXML($bookmark.name)"#end
            #spaces($depth)   #if($feedUrl)type="rss"#end
            #spaces($depth)   #if($bookmark.url)htmlUrl="$utilities.textToXML($bookmark.url)"#end
            #spaces($depth)   #if($feedUrl)xmlUrl="$utilities.textToXML($feedUrl)"#end
            #spaces($depth) />
        #end
        #set( $subfolders = $folder.getFolders() )
        #foreach( $subfolder in $subfolders )
            #genOpml( $subfolder $depth )
        #end
        #spaces($depth)</outline>
    #end
    #set( $depth = $depth - 1 )
#end
<body>
#set( $folderPath = $pageModel.getRequestParameter("path") )
#if( $folderPath )
    #set( $folder = $pageModel.getFolderByPath($folderPath) )
#end
#genOpml( $folder 0 )
</body>
</opml>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -