有没有办法通过标签更改某些博客区域?
例如,我在一个带有汽车标签的页面上,只有此页面包含几个部分:
。body.header
具有与其他页面不同的颜色吗?
[我得到了这个脚本,它每12小时会更改网站的背景颜色,但这仍然不是我想要的,我希望随着标签的更改而更改博客的一部分
<script type='text/javascript'>//<![CDATA[
var currentTime = new Date().getHours();
if (6 <= currentTime && currentTime < 12) {
document.body.style.backgroundColor = "#1abc9c";
} else if (12 <= currentTime && currentTime < 18) {
document.body.style.backgroundColor = "#318fcb";
} else {
document.body.style.backgroundColor = "#560256";
}
//]]></script>
更多信息:
我知道可以使用此代码进行更改,但是更改仅在标签页面上发生,因为更改发生在所有带有car标签的页面上。
<b:if cond='data:blog.searchLabel == "car"'>
<style type='text/css'>
body { background: #e2ad44 !important }
</style>
</b:if>
您可以执行以下操作:
检查帖子页上是否存在标签
var carLabel = document.queryAelector('.post a[href*="/search/label/carr"]');
进行更改
if (carLabel) { document.body.style.backgroundColor = "green"; }
问题末尾的代码段将在“标签”页面中完美显示。在文章页面中,您需要类似的代码来检查帖子是否具有特定标签,因此您需要在博客主帖子循环中添加下一个代码:
<!-- check if page type is article page & check if article has a "car" tag -->
<b:if cond='data:view.isPost and data:post.labels any (l => l.name == "car")'>
<style>
body { background: #e2ad44 }
</style>
</b:if>