Blogger模板:基于标签的样式博客文章

时间:2009-10-16 21:45:38

标签: syntax templates blogger

我正在尝试根据与帖子相关联的标签更改博文的样式(例如更改标题颜色)。

我对模板有点新,所以我会在标题<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='&quot;post-title entry-title &quot; + data:list_of_labels'>

现在:
- 如何构建这个可变数据:list_of_labels? (基本上如何设置变量)
- 某处有模板语法的完整描述吗?
- 还有另一种解决方法吗?

谢谢, JB

2 个答案:

答案 0 :(得分:2)

这应该这样做。使用XML实体可以绕过XML验证并将Blogger功能移动到您需要的位置。这里有更长的解释:http://www.karlhorky.com/2012/06/add-blogger-labels-to-post-as-css.html

&lt;div class=&quot;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>&quot;&gt;
  <data:post.body>
&lt;/div&gt;

答案 1 :(得分:1)

无法在博客数据xml中设置变量,但您可以使用javascript设置变量。

博客数据xml上有很多页面。谷歌是你的朋友。例如this one

你走在正确的轨道上:做一个循环,使用javascript检查你想要的组合,更改样式属性或动态加载css文件。