• 数字ベースのパーマリンクを使っており、2014年の記事一覧を表示させるためにリンクを以下のように記述しています。

    <a href="/archives/date/2014">

    現在は問題ないのですが、例えば2015年になった場合には、直接テンプレートの上記箇所を2015に変更するといった作業が発生してしまいます。

    年の表示を自動的に更新させるにはどのように記述すればよいかご教示頂けないでしょうか?

    その際、2015年の記事が1件もなければエラーになってしまいますので、1件以上の記事があれば2015、なければ2014という風に条件分岐できれば理想的なのですが。

    よろしくお願いいたします。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • wp_get_archives関数の設定オプションで、
    typeにyearlyを設定すればOKです。

    こんにちは

    必要なテンプレートへ

    <?php
    wp_get_archives(array('type'=>'yearly','limit'=>10));
    ?>

    http://codex.wordpress.org/Template_Tags/wp_get_archives

    トピック投稿者 amachang

    (@amachang)

    nobitaさん、さっそくありがとうございます!

    申し訳ありません、当方初心者でして、記述頂いたコードをどのように応用すればよいかが分かりません。教えて頂いたコードをそのまま書くと、

    2014 2013 2012 2011 2010

    というようにリスト出力されてしまいました。やりたいことは、現在テンプレートに下記のように書いていますが・・・

    <a href="/archives/date/2014"><img src="images/fnav_information.gif"/></a>

    2015年に入り、記事が1件でも投稿されれば、下記のように更新させたいのです。

    <a href="/archives/date/2015"><img src="images/fnav_information.gif"/></a>

    最終更新が2014年であれば、

    <a href="/archives/date/2014"><img src="images/fnav_information.gif"/></a>

    のままというのが理想的です。

    どなたかお分かりになりますでしょうか?

    マニュアルをよく読み込んでいただくしかありません。

    サンプル

    <?php
    $args = array(
        'type'=>'yearly',
        'limit'=>10,
        'format'=>'custom',
        'before'=>'<span style="display:none">',
        'after'=>'</span><img src="http://example.com/images/hoge.jpg" width="100" />'
        );
    wp_get_archives( $args );
    ?>

    トピック投稿者 amachang

    (@amachang)

    ありがとうございました!
    勉強するしかなさそうですね。。
    今回は断念します。

    ついつい気になって対応できそうな関数作ってしまいました。何も見ずに本家のコードを少し改変しただけでまだ一切テストすら出来ていません。phpdocとかも修正せずそのままコピペしただけとなっていますが、とりあえずこんなものかと…

    https://github.com/kimama1997/wp-get-archives-with-image/blob/master/wp-get-archives-image.php

    2行目以降をfunction.phpに追加すれば使えるはずです。

    使い方

    wp_get_archives_image(
     array(
        'type'=>'yearly',
        'limit'=>1,
        'format'=>'custom',
        'html'=>'<img src="http://example.com/images/hoge.jpg" width="100" alt="%2$s" />' //実施必須
        )
    );

    ちなみにhtmlに%1$sを入れると日付が数字で入る筈。(sじゃなくてdのほうがいいかもしれない)

    "html"->'%1$s.jpg', //2014.jpgのように出力される(この場合はhtmlで指定していないため素のテキストが帰ってくる)

    今構文チェックすらテストが出来ない状態なのでもし何か問題があるようならなんなりお願いします。

    トピック投稿者 amachang

    (@amachang)

    Hinaloeさん

    ありがとうございます!やってみます^^

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「パーマリンクURLの「年」を自動で更新するには?」には新たに返信することはできません。