在使用Hexo搭建GitHubPages时,我的模板是这样的:
笔者想要换成自己喜欢的内容,所以选择了TWICE的《Fancy》中的一段歌词:
?? ? I fancy you ??? ??? ??
Hey I love you
Love ya
?? ? I fancy you ??? ???? ?
Cause I need you
What
Fancy you ?? ?? ???? ??
Fancy you ?? ???? ??
Fancy
考虑到HTML的换行不是\n 而是<br/> ,所以在对应的_config.yml 中如此填写:
fancy:
enable: true
showTitle: true
title: Fancy @TWICE
text: ?? ? I fancy you ??? ??? ??<br>Hey I love you<br>Love ya<br>?? ? I fancy you ??? ???? ?<br>Cause I need you<br>What<br>Fancy you ?? ?? ???? ??<br>Fancy you ?? ???? ??<br>Fancy
显示出的结果却是:
显然,问题出在了可能含HTML标签的文本被直接解析成了纯文本。
查看对应的EJS,使用的是<div> 和<%= %> :
<div class="dream">
<% if (theme.fancy.showTitle) { %>
<div class="title center-align">
<i class="far fa-lightbulb"></i> <%= theme.fancy.title %>
</div>
<% } %>
<div class="row">
<div class="col l8 offset-l2 m10 offset-m1 s10 offset-s1 center-align text">
<%= theme.fancy.text %>
</div>
</div>
</div>
查看EJS官方文档:
将<%= %> 改成<%- %> :
<div class="dream">
<% if (theme.fancy.showTitle) { %>
<div class="title center-align">
<i class="far fa-lightbulb"></i> <%= theme.fancy.title %>
</div>
<% } %>
<div class="row">
<div class="col l8 offset-l2 m10 offset-m1 s10 offset-s1 center-align text">
<%- theme.fancy.text %>
</div>
</div>
</div>
done.
|