- PortalLink 模型已有 logoUrl,渲染缺口在模板:5 套 footer 增 th:if logo 图(url.upload 补基准+alt 名称+lazy) - 5 套 main.css 增 .link-logo(高20px/contain/垂直居中/过宽截断) - PortalSsrIT+2 例(有 logo 渲染图/无 logo 纯文字无 link-logo);mvn -o test 260/260 全绿
22 lines
1.2 KiB
HTML
22 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html xmlns:th="http://www.thymeleaf.org">
|
|
<!-- 公共页脚:联系信息 + 友情链接(分组渲染,方案 §8.1:友链不设独立路由) -->
|
|
<footer class="site-footer" th:fragment="footer">
|
|
<div class="footer-links" th:if="${!#lists.isEmpty(site.linkGroups)}">
|
|
<div class="links-group" th:each="group : ${site.linkGroups}">
|
|
<span class="group-name" th:text="${group.groupName}">分组</span>
|
|
<a th:each="link : ${group.links}" th:href="${link.linkUrl}" target="_blank" rel="noopener">
|
|
<img th:if="${link.logoUrl != null and !#strings.isEmpty(link.logoUrl)}" class="link-logo"
|
|
th:src="${url.upload(link.logoUrl)}" th:alt="${link.name}" loading="lazy">
|
|
<span th:text="${link.name}">链接</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<div class="footer-info">
|
|
<p th:if="${site.config['contact'] != null}" th:text="${site.config['contact']}">联系方式</p>
|
|
<p th:if="${site.config['copyright'] != null}" th:text="${site.config['copyright']}">版权信息</p>
|
|
<p th:if="${site.config['beian'] != null}" th:text="${site.config['beian']}">备案号</p>
|
|
</div>
|
|
</footer>
|
|
</html>
|