Bloggerアーカイブを年月表示に変える

「3月 2022」「March 2022」を「2022/03」の年月表示に変えるjavascriptです。
代表的な公式テンプレートを例にします。Emporioはwidgetversion2、Simpleはwidgetversion1です。

基本的にはリンクの「https://googlebloggertrouble.blogspot.com/2022/03/」の部分を取得して、「/2022/03/」だけにして、前後1文字ずつ削って「2022/03」を作って設定しています。
idやclass名を変更すれば、アーカイブ以外にも使えます。

Emporioの階層hierarchy
<script>
/*<![CDATA[*/
document.addEventListener('DOMContentLoaded',setBlogArchiveTitle);
function setBlogArchiveTitle(){
  let objlist=document.getElementById('BlogArchive1').getElementsByClassName('post-count-link');
  for(let i=0;i<objlist.length;i++) objlist[i].innerHTML=objlist[i].getAttribute('href').split('?')[0].split(location.hostname)[1].slice(1,-1)+objlist[i].innerHTML.substring(objlist[i].innerHTML.indexOf('<span'));
}
/*]]>*/
</script>

Simpleの階層hierarchy
<script>
/*<![CDATA[*/
document.addEventListener('DOMContentLoaded',setBlogArchiveTitle);
function setBlogArchiveTitle(){
  let objlist=document.getElementById('BlogArchive1').getElementsByClassName('post-count-link');
  for(let i=0;i<objlist.length;i++) objlist[i].innerText=objlist[i].getAttribute('href').split('?')[0].split(location.hostname)[1].slice(1,-1);
}
/*]]>*/
</script>

Emporioのフラットリストflat
<script>
/*<![CDATA[*/
document.addEventListener('DOMContentLoaded',setBlogArchiveTitle);
function setBlogArchiveTitle(){
  let objlist=document.getElementById('BlogArchive1').getElementsByClassName('archivedate');
  for(let i=0;i<objlist.length;i++) objlist[i].getElementsByTagName('a')[0].innerHTML=objlist[i].getElementsByTagName('a')[0].getAttribute('href').split('?')[0].split(location.hostname)[1].slice(1,-1)+objlist[i].innerHTML.substring(objlist[i].innerHTML.indexOf('<span'));
}
/*]]>*/
</script>

Simpleのフラットリストflat
<script>
/*<![CDATA[*/
document.addEventListener('DOMContentLoaded',setBlogArchiveTitle);
function setBlogArchiveTitle(){
  let objlist=document.getElementById('BlogArchive1').getElementsByClassName('archivedate');
  for(let i=0;i<objlist.length;i++) objlist[i].getElementsByTagName('a')[0].innerText=objlist[i].getElementsByTagName('a')[0].getAttribute('href').split('?')[0].split(location.hostname)[1].slice(1,-1);
}
/*]]>*/
</script>

Simpleのプルダウンメニューmenu
<script>
/*<![CDATA[*/
document.addEventListener('DOMContentLoaded',setBlogArchiveTitle);
function setBlogArchiveTitle(){
  let objlist=document.getElementById('BlogArchive1').getElementsByTagName('option');
  for(let i=1;i<objlist.length;i++) objlist[i].innerText=objlist[i].getAttribute('value').split('?')[0].split(location.hostname)[1].slice(1,-1)+' '+objlist[i].innerText.split(' ')[2];
}
/*]]>*/
</script>
この記事のタイトルとURLをコピーする blogger
blogger