Olá, meus amigos, tudo bem? Eu me sinto confiante ao postar aqui, porque sempre me ajudam com soluções que realmente resolvem, e não gambiarras. Eu não sou programador nem Webdesigner, sou da área da comunicação, e uso HTML (e bem pouco de Javascript) nos meu blogs do Blogger. Mas eu pesquiso o máximo aí pela internet antes de recorrer aqui, pra não ficar lotando o fórum de perguntas leigas, só que nesse momento eu estou esgotado e nem se o Google para desktop tivesse um modo escuro meus olhos aguentariam, tamanho cansaço, KKK.
O caso é: eu preciso exibir a data em que uma postagem foi publicada. Para tal, pesquisei e encontrei uma forma através de javascript. Trata-se da função .getDay, .getMonth e .getFullYear. O resultado para o ano deu certo, mas o mês e o ano estão retornando números totalmente errados.
Na postagem-teste de hoje, 19 de março, aparece lá que a data foi 05 de fevereiro... Vejam o código abaixo:
<div class='post-date'>
<span class='year'>
<script type='text/javascript'>
var dt = new Date("<data:post.timestamp/>"); document.write(dt.getFullYear() );
</script>
</span>
<span class='day'>
<script type='text/javascript'>
var dt = new Date("<data:post.timestamp/>"); document.write(dt.getDay() );
</script>
</span>
<span class='month'>
<script type='text/javascript'>
var dt = new Date("<data:post.timestamp/>"); document.write(dt.getMonth() );
</script>
</span>
</div>
Quando salvo e vou visualizar, aparece, como dito, a data 05 de fevereiro. Então dei um belo "inspecionar elemento" para ver o que os scripts estavam retornando. Vejam:
<div class="post-meta">
<div class="post-date">
<span class="year">
<script type="text/javascript">
var dt = new Date("3/19/2021"); document.write(dt.getFullYear() );
</script> 2021
</span>
<span class="day">
<script type="text/javascript">
var dt = new Date("3/19/2021"); document.write(dt.getDay() );
</script> 5
</span>
<span class="month">
<script type="text/javascript">
var dt = new Date("3/19/2021"); document.write(dt.getMonth() );
</script> 2
</span>
</div>
</div>
Deixei um print em anexo para terem um exemplo visual.
Alguém consegue entender?
At.te.