文档更改Home
由 Yang Sheng 于 2025-02-42,18:57 最后修改
摘要
-
页面属性 (1 修改, 0 新增, 0 删除)
细节
- 页面属性
-
- 内容
-
... ... @@ -14,39 +14,86 @@ 14 14 ((( 15 15 === 近期更新 === 16 16 17 +{{velocity}} 18 +## 检查当前用户是否是访客 19 +#if($xcontext.user == 'XWiki.XWikiGuest') 20 + ## 如果是访客用户,显示提示信息 21 + {{info width=20%}}请登录查看。{{/info}} 22 +#else 23 + ## 定义一级页面列表 24 + #set($topLevelPages = ["Knowledge", "AI", "Automatic"]) 17 17 26 + ## 遍历每个一级页面 27 + #foreach($topPage in $topLevelPages) 28 + ## 查询每个一级页面下最近更新的5个页面(按日期倒序排列) 29 + #set($hqlQuery = "select doc.fullName from XWikiDocument doc where doc.fullName like :spacePattern and doc.name != 'WebPreferences' order by doc.date desc") 30 + #set($query = $services.query.hql($hqlQuery)) 31 + #set($query = $query.bindValue("spacePattern", "${topPage}.%")) 32 + #set($query = $query.setLimit(5)) ## 限制结果为5条 33 + #set($recentDocs = $query.execute()) 34 + 35 + ## 如果找到近期更新的页面 36 + #if($recentDocs.size() > 0) 37 + ## 显示一级页面的标题 38 + ==== $topPage ==== 39 + 40 + ## 遍历并展示找到的页面 41 + #foreach($docFullName in $recentDocs) 42 + #set($document = $xwiki.getDocument($docFullName)) 43 + * [[${document.getDisplayTitle()}>>${document.getExternalURL('view')}]] (最后更新: $datetool.format("yyyy-MM-dd", $document.getDate())) 44 + #end 45 + #end 46 + #end 47 +#end 48 +{{/velocity}} 49 + 50 + 51 +))) 52 + 18 18 {{velocity}} 19 -## 定义一级链接列表 20 -#set($topLevelPages = ["Knowledge", "AI For Service", "Automatic"]) 54 +## 检查当前用户是否是访客 55 +#if($xcontext.user == 'XWiki.XWikiGuest') 56 + {{info}}请登录查看。{{/info}} 57 +#else 58 + #set($topLevelPages = ["Knowledge", "AI", "Automatic"]) 21 21 22 -## 遍历每个一级页面 23 -#foreach($topPage in $topLevelPages) 24 - ## 查询每个一级链接下所有子页面的最近更新 25 - #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") 26 - #set($query = $services.query.hql($hqlQuery)) 27 - #set($query = $query.bindValue("spacePattern", "${topPage}.%")) 28 - #set($query = $query.setLimit(3)) 29 - #set($recentDocs = $query.execute()) 60 + #foreach($topPage in $topLevelPages) 61 + #set($hqlQuery = "select doc.fullName from XWikiDocument doc where doc.fullName like :spacePattern and doc.name != 'WebPreferences' order by doc.date desc") 62 + #set($query = $services.query.hql($hqlQuery)) 63 + #set($query = $query.bindValue("spacePattern", "${topPage}.%")) 64 + #set($query = $query.setLimit(5)) 65 + #set($recentDocs = $query.execute()) 30 30 31 - ## 输出四级标题 32 - ==== $topPage ==== 67 + ---- 68 + ==== $topPage ==== 69 + #if($recentDocs.size() > 0) 70 + #foreach($docFullName in $recentDocs) 71 + #set($document = $xwiki.getDocument($docFullName)) 72 + 73 + ## 获取标题 74 + #set($title = $document.getTitle()) 75 + #if($title == '' || $title == $null) 76 + #set($title = $document.getName()) 77 + #end 33 33 34 - ## 调试信息 35 - 查询语句: $hqlQuery 36 - 绑定值: ${topPage}.% 37 - 找到 $recentDocs.size() 个子页面。 79 + ## 获取路径并解析为显示格式 80 + #set($pathParts = $docFullName.split("\\.")) ## 分割路径 81 + #set($displayPath = "") 82 + #if($pathParts.size() > 2) 83 + ## 从二级页面开始拼接路径 84 + #set($displayPath = $pathParts[1]) 85 + #foreach($part in $pathParts.subList(2, $pathParts.size())) 86 + #set($displayPath = "${displayPath}.${part}") 87 + #end 88 + #end 38 38 39 - ## 遍历子页面 40 - #foreach($docFullName in $recentDocs) 41 - #set($document = $xwiki.getDocument($docFullName)) 42 - #if($document) 43 - ## 输出文档标题 44 - * [[${document.getDisplayTitle()}>>${document.getExternalURL('view')}]] 90 + ## 确保显示路径加上标题 91 + * [[${displayPath}>>${document.getExternalURL('view')}]] (最后更新: $datetool.format("yyyy-MM-dd HH:mm", $document.getDate())) 92 + #end 45 45 #else 46 - 文档未找到: $docFullName94 + **此分类暂无内容** 47 47 #end 96 + ---- 48 48 #end 49 49 #end 50 50 {{/velocity}} 51 - 52 -)))