【至急・重要】ウィルスチェックのお願い

Change Style


WP plugin: 投稿時の月齢・潮汐表示 - MoonPhase

そんなときは、大自然に身をゆだねてみよう。。
というか、ひろまささんのブログで拝見して、自分のとこにも表示したいなあと常々思っていたので、この期に導入してみました。設置後の記事に表示されるものかと思っていたので、過去分にも表示できてうれしい。 :-)

ベランダ園芸の成長記録と合わせて見ていったら、人や珊瑚が月に影響を受けているように、植物への影響も何か見えてくるだろうか、なんて、ちょっと気になってきたりして。。。いや、植物の場合、見て分かるような部分はやっぱ日照や気温かなあ。

MoonPhase
機能概要投稿日付(または日時)から月齢と潮汐を計算して、投稿日の横に表示。サイト表示時に投稿日付(日時)から算出するため、プラグイン導入前の投稿にも表示される。
バージョン1.0.8
作者(web)chameleon さま
配布元Chameleon Cyber » Download
ドキュメント

Chameleon Cyber » MoonPhase

動作見本作者さまのサイト
「ページ」対応

○ 一般的に「ページ」には日付を表示しないが、日付を表示すれば月齢も表示される。→ 例

適用したWPWordPress ME 2.0.4 [UTF-8]

導入手順・使い方

  • ドキュメントが日本語で丁寧に書かれているので省略。(^^
  • phaseimages/Thumbs.db はアップロードしないでおく。フォルダを開いたときに出来てしまったのかも。

カスタマイズメモ

登場するテンプレートタグ・PHP 関数・用語類については、参考リンク省略。欄外の横断検索窓にて。

表示フォーマット
用意されているフォーマット
  • あらかじめ用意されているパターンは次の 5種類。1 強調部分の表示形式を選べる。パターンの追加・カスタマイズ可(次節参照)。
    • 0: 2005/08/11 Thu ○ Moon:6.0 -12:00:00 (デフォルト)
    • 1: 2005/08/11 Thu ○ Moon:6.0 潮汐:小潮 -12:00:00 (月齢と潮汐)
    • 2: 2005/08/11 Thu ○ Moon:6.0[七日月] -12:00:00 (月齢と月名)
    • 3: 2005/08/11 Thu ○ Moon:6.0[七日月] 潮汐:小潮 -12:00:00 (月齢と月名と潮汐)
    • 4: 2005/08/11 Thu ○ 七日月 -12:00:00 (月の名のみ)
  • 上の先頭の番号を moonphase.php 49行目で指定する(define("PATTERN",0);)。
  • 備考:
    • 上の○印は月相画像。SHOW_IMAGE で表示/非表示を指定。
    • 「2005/08/11 Thu」は投稿日付、「-12:00:00」は 投稿時刻。
      • この部分の表示形式は、WordPress のオプション設定(日付と時間)や、テーマファイルの the_date(), the_time() タグのパラメータによる指定。
      • うちでは時刻を表示していないけれど、テンプレートファイルで
        <?php the_date('', '<span class="postdate">', '</span>') ?> <?php the_time() ?>
        みたいにしていると、上のように「日付・moonphase・時刻」の順になるんだと思う。(the_date() の末尾に moonphase が挿入されるため。)
表示パターンのカスタム
  • デフォルト:
    moonphase.php 90行目から次のコードがある。

    function set_strings($my_pattern,$phase,$tide,$luna){
        $pattern=array(
                'Moon:' . $phase,//デフォルト ← パターン 0
                'Moon:' . $phase . ' 潮汐:' .$tide,//月齢と潮汐 ← 1
                'Moon:' . $phase . '[' . $luna .']',//月齢と月の名 ← 2
                'Moon:' . $phase . '[' . $luna . '] 潮汐:' .$tide,//月齢と月の名と潮汐 ← 3
                '月名:' . $luna//月の名 ← 4
            );

    $pattern=array(~~) の括弧内の各行のフォーマットを、$pattern という配列に格納している。

  • 自分で追加:
    うちのサイトでは、自分でフォーマットを追加(下記 5)した上で、49行目で 5 を指定(define("PATTERN",5);)。

        $pattern=array(
                'Moon:' . $phase,//デフォルト ← 0
                'Moon:' . $phase . ' 潮汐:' .$tide,//月齢と潮汐 ← 1
                'Moon:' . $phase . '[' . $luna .']',//月齢と月の名 ← 2
                'Moon:' . $phase . '[' . $luna . '] 潮汐:' .$tide,//月齢と月の名と潮汐 ← 3
                '月名:' . $luna,//月の名 ← 4
              $phase . ' ' .$tide//月齢と潮汐5
          );

    行を追加するときは、直前の行の末尾(ダブルスラッシュの前)にカンマを忘れずに。最後の行の末尾にはカンマ不要。

サイトへの表示
  • このプラグインでは、投稿日時を表示するテンプレートタグ the_date() の末尾に moonphase を挿入している模様。
  • うちのトップページやアーカイブページでは、同一日付の記事が連続しても日付が表示されるように、the_date() ではなく the_time() を使っているので、そのままでは moonphase が表示されない。 Σ(゜д゜lll)
  • 試しに moonphase.php の最後の方に次の行を追加したら、表示されるようになった。ヽ(´▽`)ノ

    add_filter('the_date','moonphase');
    add_filter('the_time','moonphase'); // ← コレ追加
  • the_time() に挿入してしまうと次のような問題もあるので、後で再検討。表示したい箇所に自分でタグを入れられるようにしてみようかな、とか。

    • うちでは the_time() で日付しか表示していないから問題ないが、the_date() で日付、the_time() で時刻を表示している場合は、両方に Moonphase が表示されちゃうのでこれじゃダメ。
    • トップページやアーカイブの展開モードのときには表示したいが、アーカイブのリスト表示や検索結果表示などはすっきりさせたいので表示したくない。
    • 管理パネルの投稿記事一覧とかにも表示されちゃう。
    • テンプレートタグのパラメータの問題。the_date() は、パラメータで 日付の前後のテキスト・HTML タグも指定できるが、the_time() はできないため、日付部分にのみクラスセレクタを割り当てる、とかが出来ない。
      (例)
      • <?php the_date('Y.n.j', '<span class="postdate">', '</span>') ?>
        ↑ 日付にだけクラスを付けられる。単体記事ページはこちら。
      • <span class="postdate"><?php the_time('Y.n.j') ?></span>
        ↑ まるごと括るしかない。トップページやアーカイブはこちら。プラグインでもクラスを付けてくれるので、.postdate の内側の .moonphase で再指定はできるけど。
  1. ドキュメント等では 2 が抜けているようで、番号がずれます。[back]

YOU、これも読んじゃないなYO!

コメントをどうぞ