我正在尝试根据与帖子相关联的标签更改博文的样式(例如更改标题颜色)。
我对模板有点新,所以我会在标题<h3>
元素中添加带标签的类,然后添加我的CSS规则。
所以我发现这会生成一个由空格分隔的正确标签列表:
<b:loop values='data:post.labels' var='label'><data:label.name/> </b:loop>
但是,似乎验证器不允许我在class属性中添加它,如下所示:
<h3 class='post-title entry-title <b:loop values="data:post.labels" var="label"><data:label.name/> </b:loop>'>
从那里,我找到了一半的解决方案。显然,我应该使用expr:class而不是class,如下所示:
<h3 expr:class='"post-title entry-title " + data:list_of_labels'>
现在:
- 如何构建这个可变数据:list_of_labels? (基本上如何设置变量)
- 某处有模板语法的完整描述吗?
- 还有另一种解决方法吗?
谢谢, JB
答案 0 :(得分:2)
这应该这样做。使用XML实体可以绕过XML验证并将Blogger功能移动到您需要的位置。这里有更长的解释:http://www.karlhorky.com/2012/06/add-blogger-labels-to-post-as-css.html
<div class="post<b:if cond="data:post.labels"><b:loop values="data:post.labels" var="label"> <data:label.name></data:label.name></b:loop></b:if>">
<data:post.body>
</div>
答案 1 :(得分:1)
无法在博客数据xml中设置变量,但您可以使用javascript设置变量。
博客数据xml上有很多页面。谷歌是你的朋友。例如this one。
你走在正确的轨道上:做一个循环,使用javascript检查你想要的组合,更改样式属性或动态加载css文件。