スポンサードリンク


WordPressウィジェットのアーカイブ一覧の件数変更!年別や月別に出力方法をカスタマイズする手順!

    WordPressのウィジェットで標準機能として入っている「アーカイブ」ってありますよね。

    これまでに投稿した記事を月別で一覧表示してくれるウィジェットになりますが、
    ウィジェットエリアに配置しても設定項目が少なくカスタマイズができないのが難点です。

    WordPress アーカイブウィジェット 件数

    ページリンクを構成するうえで、検索エンジンのクローラーに古い記事も参照できるように、
    アーカイブウィジェットを使っている方もいらっしゃると思いますが、
    カスタマイズするための設定がないので困ってしまいますよね。

    そこで今回は「アーカイブ」ウィジェットをカスタマイズする方法をご紹介したいと思います。

     

    アーカイブウィジェットの一覧の件数をカスタマイズする方法

    ウィジェットエリアに「アーカイブ」のウィジェットコンテンツを配置した場合、
    表示されるアーカイブ一覧の件数は記事を書いた年月分すべて出力されてしまいます。

    例えば、2014年1月から2015年9月まで記事を書いていたら、
    その月の分だけリンクが表示されてしまいので、縦に広がりウェブサイトの見栄えが悪くなってしまいます。

    対策方法としてはテーマディレクトリ内のfunctions.phpに以下のコードを貼りつけることで解決できます。

    こちらのサンプルコードでは、10件表示されるようになっています。

    widget_archives_args関数がWordPressでいうアーカイブ関連のメソッドで、
    フィルター用のhook_widget_archives_argsメソッドの引数にアーカイブ情報があります。

    このアーカイブ情報をメソッド内で書き換えてあげて、出力方法を変更できるという仕組みです。

     

    使い方ですが、ソースコードの9行目の$args[‘limit’]に表示させたい件数に書き換えます。
    書き換えたら、functions.phpに貼り付ければ完了です。

    WordPress アーカイブウィジェット カスタマイズ

    例えば、2015年の12ヶ月分の月別アーカイブがある場合、
    「最新の10件」つまり、3月~12月の10件がリンク表示されます。

     

    アーカイブウィジェットの一覧を年別表示にカスタマイズする方法

    何年も記事を書き続けている人にとっては、
    アーカイブのフォーマットを「月別」ではなく、「年別」にしたいと思うかもしれません。

    そしてなぜか標準機能で「年別」に切り替える設定項目がないんですよね。

     

    スポンサードリンク

     

    WordPress4.3までバージョンアップされているの未だに設定項目が出てこないのが不思議ですが、
    こちらも上記のソースコードの少し変更するだけで実現できてしまいます。

     

    お次は6行目を確認しましょう。
    最初にご紹介したソースコードでは「monthly」となっていましたが、
    ここを「yearly」に変更するだけで、表示書式が「年別」に切り替わってくれます。

    WordPress アーカイブウィジェット 年別

    ちなみに画像の例では2014年はひとつの記事を書かなかったことと、
    10年分のアーカイブ情報がないので、6件までしか表示されていないことを表したものです。

    MySQLの中ではアーカイブ情報として、「年:yearly」と「月:monthly」というコード体系で
    レコードが管理されているということですね。

    それぞれクエリで取得する項目を判別させているんだと思いますが、
    この判定ができるならやはり標準機能で「月別」「年別」の切り替えが実装されていないというのが疑問です。

    とりあえず簡単に「アーカイブ」ウィジェットの出力項目と書式をカスタマイズできたので良かったです。

      The following two tabs change content below.
      よっき
      パソコンが大好きな青年。職業はプログラマ。 幼少期からパソコンが好きで、趣味がそのまま仕事になりました。 主にウェブ系コンテンツの開発が中心です。 自作PCの魅力に惹かれたのは学生時代の頃で、現在に至ります。 自作PC専門ブログで、お得な情報を紹介しています。 趣味はホームページ制作かな。起業を夢見て奮闘中の毎日!

      スポンサードリンク


      コメントを残す




      *

      このページの先頭へ