文档更改Home
由 Yang Sheng 于 2025-02-42,18:57 最后修改
摘要
-
页面属性 (1 修改, 0 新增, 0 删除)
细节
- 页面属性
-
- 内容
-
... ... @@ -15,59 +15,54 @@ 15 15 (% class="col-xs-12 col-sm-6" %) 16 16 ((( 17 17 === 近期更新 === 18 - 19 19 {{velocity}} 20 -## 这里定义一级链接列表19 +## 定义一级链接列表 21 21 #set($topLevelPages = ["Home", "AI For Service", "AIO知识库", "脚本&自动化"]) 21 +#set($results = {}) 22 22 23 -## 这里定义需要忽略的页面标题列表 24 -#set($ignoreTitles = ["页面管理", "脚本&自动化"]) 23 +## 遍历每个一级链接 24 +#foreach($topPage in $topLevelPages) 25 + ## 查询每个一级链接下的最近更新页面 26 + #set($query = $services.query.hql("select doc.fullName from XWikiDocument doc where doc.space = :space order by doc.date desc")) 27 + #set($query = $query.bindValue("space", $topPage)) 28 + #set($query = $query.setLimit(5)) 29 + #set($recentDocs = $query.execute()) 25 25 26 - 27 - 28 -## 输出近期更新内容 29 -<div class="recent-updates"> 30 - <h2>近期更新</h2> 31 - #foreach($topPage in $topLevelPages) 32 - ## 查询每个一级链接下所有子页面的最近更新 33 - #set($hqlQuery = "select doc.fullName from XWikiDocument doc where doc.fullName like :spacePattern and doc.fullName not like '%:WebPreferences' and doc.fullName not like '%:WebHome' and doc.fullName not like '%:WebSearch' and doc.fullName not like '%:WebRss' and doc.fullName not like '%:WebStatistics' order by doc.date desc") 34 - #set($query = $services.query.hql($hqlQuery)) 35 - #set($query = $query.bindValue("spacePattern", "${topPage}.%")) 36 - #set($query = $query.setLimit(3)) 37 - #set($recentDocs = $query.execute()) 38 - 39 - #set($hasUpdates = false) 40 - #foreach($docFullName in $recentDocs) 41 - #set($document = $xwiki.getDocument($docFullName)) 42 - #if($document) 43 - #set($docTitle = $document.getDisplayTitle()) 44 - ## 仅当用户有查看权限时显示 45 - #if($xwiki.hasAccessLevel('view', $xcontext.user, $document.getFullName())) 46 - ## 检查页面标题是否在忽略列表中 47 - #if(!$ignoreTitles.contains($docTitle)) 48 - #if($docTitle == '') 49 - #set($docTitle = "Untitled Document") 50 - #end 51 - #if(!$hasUpdates) 52 - <h3>$topPage</h3> 53 - <ul> 54 - #set($hasUpdates = true) 55 - #end 56 - <li><a href="${document.getExternalURL('view')}" target="_blank">${docTitle}</a></li> 57 - #end 31 + ## 存储结果 32 + #set($docList = []) 33 + #foreach($docFullName in $recentDocs) 34 + #set($document = $xwiki.getDocument($docFullName)) 35 + #if($document) 36 + #set($docTitle = $document.getDisplayTitle()) 37 + ## 仅当用户有查看权限时显示 38 + #if($xwiki.hasAccessLevel('view', $xcontext.user, $document.getFullName())) 39 + #if($docTitle == '') 40 + #set($docTitle = "Untitled Document") 58 58 #end 42 + $docList.add("[[${docTitle}>>${document.getExternalURL('view')}]]") 59 59 #end 60 60 #end 61 - #if($hasUpdates) 62 - </ul> 45 + #end 46 + 47 + ## 将结果存储在字典中 48 + $results.put($topPage, $docList) 49 +#end 50 + 51 +## 输出结果 52 +#foreach($topPage in $results.keySet()) 53 + = $topPage = 54 + #set($docList = $results.get($topPage)) 55 + #if($docList.isEmpty()) 56 + No recent updates. 57 + #else 58 + #foreach($docLink in $docList) 59 + * $docLink 63 63 #end 64 64 #end 65 - </div>62 +#end 66 66 {{/velocity}} 67 67 68 - 69 - 70 - 65 + 71 71 ))) 72 72 73 73 (% class="col-xs-12 col-sm-6" %)