2020年10月
« 10月    
 1234
567891011
12131415161718
19202122232425
262728293031  

カテゴリー

最近のコメント

    <!–:en–>Date Format of WordPress Template<!–:–><!–:ja–>WordPressテンプレートの日付書式の変更<!–:–>

    先日、Carrington Mobileというテンプレートを使って、当サイトをモバイル対応しました。

    スマートフォンでもきれいに表示されてなかなか優れものですが、1点難点が。

    記事の日付がことごとく文字化け、または表示されない

    原因は、テンプレートのコメントの日付、時間のフォーマット処理がうまく働いていない。

    該当箇所を見つけ出し、とりあえず固定のyyyy.mm.dd形式にして解決。

    ちなみに、当サイトのPC版テンプレートAtahualpaでも同様の現象が起こります。

    該当箇所の見つけ方としては、ベタですが、

    themes/… 以下の該当テンプレートディレクトリを”date(”などでgrepする。

    見つかったPHPのget_comment_dateやcomment_datedateなどを呼び出し箇所を探して以下のように直す。

    <p>by <cite><?php comment_author_link() ?></cite> on <a href=”#comment-<?php comment_ID() ?>” title=”"><?php comment_date(“Y.m.d “) ?> <?php comment_time(“H:i:s“) ?></a> <?php edit_comment_link(“e”,”",”"); ?></small></p>

    ここに別の書式文字が指定されていたり、引数なしの場合、うまく表示されないことが多いです。

    ※但し、これらの関数の挙動はホスティングしているサーバーのPHPの設定やロケールで変わるので、一概にそうとは言えない。

    該当ファイルは、Atahualpaの場合、

    bfa_custom_comments.php

    ※ちなみに、このファイルが関係するのはコメントの日付。記事の日付などは、Atahualpaのテーマオプション画面で変更できます。(�te()% の部分を�te(“Y.m.d H:i:s”)%などに変える。)

    <?php printf(__(“%1$s  “at”を削る %2$s”,”atahualpa”), get_comment_date(__(“Y.m.d“,”atahualpa”)),  get_comment_time(__(“H:i:s“,”atahualpa”))) ?>

    Carrington Mobileの場合は、

    comment-default.php

    など数ファイルです。

    PHPの書式フォーマットについては、こちら

    本当は、タイムゾーンをUTCで管理して、アクセス元のIPなどで国判別して、時差計算して表示するとかしたいんだけど(せっかく多言語ブログなので)、そういったプラグインないかな?

    Atahualpaの日付バグについては、こちらの記事も参照してみてください。