我从Blogger获得以下输出中的日期格式:
<time class="published">14 March</time>
我想在不修改输出的情况下更改其格式,如下所示:
<time class="published"><span class="day">14</span><span class="month">Mar</span></time>
有人有任何建议吗?
答案 0 :(得分:1)
在使用新主题时,更改日期格式时间戳的过程会有所不同。将以下b:widget
添加到要更改时间戳的<b:includable id='postTimestamp'>
<span class='byline post-timestamp'>
<data:byline.label />
<b:if cond='data:post.url'>
<meta expr:content='data:post.url.canonical' />
<a class='timestamp-link' expr:href='data:post.url' rel='bookmark' title='permanent link'>
<time class='published' expr:datetime='data:post.date.iso8601' expr:title='data:post.date.iso8601'>
<b:eval expr='data:post.date format "dd MMM" '/>
</time>
</a>
</b:if>
</span>
</b:includable>
中 -
format
正如您将注意到的那样,通过新引入的format
运算符更改了日期的格式。有关<b:eval expr='data:post.date format "MMM dd" ' />
运算符的详细文档 -
格式(日期,格式)
使用博客将给定日期格式化为给定格式字符串 选定的语言。
日期:要格式化的日期,例如数据:post.date
格式:ICU format string表示格式化为的日期 博客的语言。例如“MMM dd”。
<time class="published"><data:post.timestamp/></time>
目前没有官方文档新主题,我提到Blogger engineer's blog来获取此信息。
要实现这一点,必须通过JavaScript操作日期。在主题代码中,您将看到类似 -
的代码<time class="published"><script>dateconvert(new Date('<data:post.timestamp/>'));</script></time>
将其替换为 -
dateconvert
在</head>
块中定义<script>
function dateconvert(date) {
document.write("<span class='day'>" + date.getDate() + "</span> <span class='month'>" + date.toLocaleString("en-us", {month: "short"}) + '</span>')
}
</script>
函数 -
Open-Closed