見出し画像

[Blogger #020] 最新コメントページ導入

ふじろじっくさんところのフッターを真似たので、左下のPAGES エリアはこんな感じ。

スクリーンショット 2021-02-11 114734

全記事リストは、#016サイトマップのところで作成しました。プライバシーポリシーは記事だけなので、すでにページ作成してあります。今日は、最新コメントページをつくります。ページってところで、新しいページ、”最新コメント”ってのをつくります。

スクリーンショット 2021-02-11 141345

その後、ふじろじっくさんとこの記事を参考にHTMLを貼り付けました。

ページをHTML編集モードにして、スクリプトコードを貼り付けます。それだけで、まずは出来上がっちゃいます。こんな感じ。いきなり、ここまでできているので、完成度たかっ!って感じです。

スクリーンショット 2021-02-11 141722

ウィジェット提供元はこちらのようですので、こっちでカスタマイズした状態で持ってくるのもありでしょう。

まずは、やりたいことをリストアップ。

追加:上部に”最新xx件を表示しています。”
   下部に Recent Comment Widget Powered by Sneeit
色系:投稿者、点線、文字色
配置:投稿者のあと、コロンでなくて改行
   このページの最終でのコメントを投稿部分はいらない。

スクリーンショット 2021-02-11 152234

スクリプトを整形して、変更していきます。
まず、コメント数を20。次に、"最新20件、、、、"のくだりをdocument.write する部分をつける。:があったところを、<br>に変える。

ここまでやって、改行だけ上手くいかない。下の方にある、CSS側よくみると、改行抑制されてる。ここ。コメントアウトしてしまっておきました。

スクリーンショット 2021-02-11 152711

そんな感じで、いじくった結果が以下。fontawesome 部分は削除。使わない。Sneeit のクレジット表示部分は、ふじろじっくさんところではciteタグをちゃんとつかってましたが、ウチんとこは、手抜きで元のクレジット部分をいじって対応。

<noscript id="sneeit-srcbw-exclude"></noscript>
<script type="text/javascript">
	var sneeit_srcbw_count = 20; //コメント件数
	var sneeit_srcbw_summary_length = 150; //コメント文字数
   
   document.write('<p>最新' +sneeit_srcbw_count+'件を表示しています。</p>');
 
	_s7GpE = ['link',
             'href',
             'font-awesome',
             'link',
             'text/css',
             'stylesheet',
             '',
             'sneeit-srcbw-exclude',
             '\n',
             'string',
             'undefined',	
             'feed',
             'entry',
             '表示できるコメントがありません。',
             ' ...',
             '',
             '',
             'alternate',
             'self',
             '#',
             '/',			
             '#c',
             '<a class="sneeit-srcbw" href="',
             '">',
             '<span class="srcbw-color"><strong>',
             '<br></strong></span>',
             '',
             '</a>',
             '<div class="sneeit-srcbw-credit">Recent Comment Widget Powered by <a href="http://sneeit.com/simple-recent-comment-widget-blogger/" target="_blank" rel="noopener">Sneeit</a></div>',
             '<script type="text/javascript" src="/feeds/comments/summary?alt=json-in-script&max-results=','&callback=_fCiE"><\/script>'];
 
 var _vHpF=document.getElementsByTagName(_s7GpE[0]);
 for(var _vLbB=0;_vLbB<_vHpF.length;_vLbB++)
 {
   if(_s7GpE[1] in _vHpF[_vLbB]&&_vHpF[_vLbB].href.indexOf(_s7GpE[2])!=-1)
   {
     break;
   }
 }
 if(_vLbB>=_vHpF.length)
 {
   var _vLbJ=document.createElement(_s7GpE[3]);
   _vLbJ.type=_s7GpE[4];_vLbJ.rel=_s7GpE[5];
   _vLbJ.href=_s7GpE[6];document.head.appendChild(_vLbJ);
 }
 var _vRqN=document.getElementById(_s7GpE[7]).innerHTML;
 var _vSbX=sneeit_srcbw_count;
 _vRqN=_vRqN.trim();
 if(_vRqN)
 {
   _vRqN=_vRqN.split(_s7GpE[8]);
   _vSbX=_vSbX*(_vRqN.length+2);
 }
 
 function _fCiE(json)
 {
   if(typeof(json)==_s7GpE[9]||typeof(json)==_s7GpE[10]||!(_s7GpE[11] in json)||!(_s7GpE[12] in json.feed)||!json.feed.entry.length)
   {
     document.write(_s7GpE[13]);return;
   }
   var _vQbX=0;
   for(var _vLbB=0;_vLbB<json.feed.entry.length&&_vQbX<sneeit_srcbw_count;_vLbB++){
     var _vOlU=json.feed.entry[_vLbB];
     var _vQjW=_vOlU.author[0].name.$t;
     var _vRcD=_vOlU.summary.$t;
     if(_vRqN.indexOf(_vQjW)!=-1)
     {
       continue;
     }
     _vQbX++;
     if(_vRcD.length>sneeit_srcbw_summary_length)
     {
       _vRcD=_vRcD.substring(0,sneeit_srcbw_summary_length)+_s7GpE[14];
     }
     var _vVgK=_s7GpE[15];
     var _vVeS=_s7GpE[16];
     for(var _vIlN=0;_vIlN<_vOlU.link.length;_vIlN++)
     {
       var _vLbJ=_vOlU.link[_vIlN];
       if(_s7GpE[17]==_vLbJ.rel)
       {
         _vVgK=_vLbJ.href;
       }
       else if(_s7GpE[18]==_vLbJ.rel)
       {
         _vVeS=_vLbJ.href;
       }
     }
     
     if(!_vVgK){continue;}
     if(_vVgK.indexOf(_s7GpE[19])==-1){
       _vVeS=_vVeS.split(_s7GpE[20]);
       _vVeS=_vVeS[_vVeS.length-1];
       _vVgK+=(_s7GpE[21]+_vVeS);
     }
     document.write(_s7GpE[22]+_vVgK+_s7GpE[23]+_s7GpE[24]+_vQjW.replace("Anonymous","匿名")+_s7GpE[25]+_vRcD+_s7GpE[26]+_s7GpE[27]);
   }
   document.write(_s7GpE[28]);
 }document.write(_s7GpE[29]+_vSbX+_s7GpE[30]);
</script>
<style>
a.sneeit-srcbw {
   position: relative;
   color: #111!important;
   font-size: .8em;
   line-height: 1.4em;
   font-weight: normal;
   display: block;
   padding: .4em;
   border-top: 2px dashed var(--background-dark-color);
}
.sneeit-srcbw:last-of-type {
   border-bottom: 2px dashed var(--background-dark-color);
}
a:hover.sneeit-srcbw {
   background: var(--font-white-color);
   text-decoration: none!important;
}
.sneeit-srcbw-credit {
   color: #000;
   position: relative;
   text-align:right;
   font-size: small;
   margin-top: 0.5em;
}
.sneeit-srcbw-credit a{
   color: var(--accent-color);
}
.sneeit-srcbw-credit a:hover {
   color: #fff;
 	background: var(--background-dark-color);
   position: relative;
   text-align:right;
   font-size: small;
   margin-top: 0.5em;
}
.srcbw-color {/*投稿者名の文字色*/
   color: var(--background-base-color);
}
</style>

あとは、このページ下部のコメント部分。こっちは、テーマのHTML部分。コメントセクション部分がPagetype 判定で飛ばしちゃうとこの外にある。

スクリーンショット 2021-02-11 165332

なので中側に移動してしまって、こうしました。上側の</b:if>をひとつまたいだだけです。

スクリーンショット 2021-02-11 165405

さて、今日の最終結果。

スクリーンショット 2021-02-11 170307


この記事が気に入ったらサポートをしてみませんか?