WP plugin: 投稿時の月齢・潮汐表示 - MoonPhase
Responses:
- No Responses yet
- コメントをどうぞ
- Trackback URI
- RSS 2.0: 更新情報
- RSS 2.0: Comments
そんなときは、大自然に身をゆだねてみよう。。
というか、ひろまささんのブログで拝見して、自分のとこにも表示したいなあと常々思っていたので、この期に導入してみました。設置後の記事に表示されるものかと思っていたので、過去分にも表示できてうれしい。
ベランダ園芸の成長記録と合わせて見ていったら、人や珊瑚が月に影響を受けているように、植物への影響も何か見えてくるだろうか、なんて、ちょっと気になってきたりして。。。いや、植物の場合、見て分かるような部分はやっぱ日照や気温かなあ。
| 機能概要 | 投稿日付(または日時)から月齢と潮汐を計算して、投稿日の横に表示。サイト表示時に投稿日付(日時)から算出するため、プラグイン導入前の投稿にも表示される。 |
|---|---|
| バージョン | 1.0.8 |
| 作者(web) | chameleon さま |
| 配布元 | Chameleon Cyber » Download |
| ドキュメント | |
| 動作見本 | 作者さまのサイト |
| 「ページ」対応 |
○ 一般的に「ページ」には日付を表示しないが、日付を表示すれば月齢も表示される。→ 例 |
| 適用したWP | WordPress 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.php49行目で指定する(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 が挿入されるため。)
- この部分の表示形式は、WordPress のオプション設定(日付と時間)や、テーマファイルの
- 上の○印は月相画像。
表示パターンのカスタム
デフォルト:
moonphase.php90行目から次のコードがある。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で再指定はできるけど。
- うちでは
- ドキュメント等では 2 が抜けているようで、番号がずれます。[back]


