PC版のトップページの表示記事件数のことですが、設定画面からは、15記事までしか増やせないようですが、もしも規約に触れないなら、もっと増やしたいと思っています。が、やり方がさっぱりわかりません。

アメブロでは最大10件までなので、アメブロよりは多いのですが。Bloggerでは、最大500件まで、自由に数を指定できるようになっています。
そこまでは要らないのですが、30件くらいにはしたいなあと思っています。
どなたかお知恵を貸していただければ、助かります。よろしくお願いいたします。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2015/12/17 14:55:03

ベストアンサー

id:psne No.1

回答回数605ベストアンサー獲得回数334

記事数を増やすことは難しいですが、はてなブログの記事一覧にオートページャーを付けることは可能です。
※この回答では、jQuery必須となります。

jQueryがロードされている前提で、フッターなどの記事内以外でも表示される場所にスクリプトを設置します。

<script>
$(function () {
	$("#main").append('<div id="loadelement" data-loading="false"></div>');
	$(window).on('scroll', function () {
		var loadElem = $("#loadelement")[0];
		var target = $(loadElem).offset().top - $(document).scrollTop() - $(window).height();
		if (target < 10 && loadElem.dataset.loading != "true") {
			loadElem.dataset.loading = true;
			$(loadElem).text("読み込み中");
			var nexturl = $('.pager-next a:not([data-loaded="done"])[rel="next"]')[0];
			if (typeof (nexturl) === 'undefined') {
				//最後のページ
				$(loadElem).before('<div>続きはありません</div>');
				$(loadElem).text("");
				return;
			}
			nexturl.dataset.loaded = "done";
			$.ajax({
				url: nexturl.href,
				type: 'GET',
				dataType: 'html',
			})
				.done(function (data) {
					$(loadElem).before('<div>次のページを読み込みました</div>');
					$(loadElem).before($('#main', $(data)).html());
					loadElem.dataset.loading = false;
					$(loadElem).text("");
					Hatena.Locale.setupTimestampUpdater(); //記事の更新時間の再表示
					FB.XFBML.parse(); //facebook
					gapi.plusone.go(); //google plus1
					twttr.widgets.load(); //Twitter
				})
				.fail(function (data) {
					//オートロードを止める
					//loadElem.dataset.loading = true;
				});
		}
	});
});
</script>

トップページ、記事一覧(年ごと)、カテゴリー一覧にて動作を確認しました。
現時点では動作しますが、今後、テンプレートの仕様が変わった場合は動かなくなる可能性もあります。
また、はてなブログへの投稿時間、facebook、google plus1、Twitterボタンが表示できるようになっています。

id:Michiko_70554148

ありがとうございます。
でも私は、無限ロードは必要なくて、ただ1ページあたりを30件にしたかっただけなんですが、もしかして何かリミットを変えてやればできるのかなあと思っていたんですが、そんなに大変だとは、知りませんでした。

2015/12/11 15:50:41
  • id:psne
    jQueryのajaxなどを利用すれば無限スクロールのように記事一覧を動的に増やすことはできますが、ツイートボタンなどの追加でJavaScriptを実行しなければならない部分の対応が必要になります。
  • id:Michiko_70554148
    そうですか。そうしますと、なかなか簡単にはいかなそうですね。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません