WordPress

投稿日の表示

Wordpressで投稿やページの投稿日を表示する際the_date()を利用しますが、この関数は「1つの投稿処理に対し1度だけ結果を出力する」という仕様があります。
従って2度目以降はこの関数では表示が行えなくなってしまいます。

ではどうするのか?
the_date()にはブラウザに直接出力せず、PHPの変数に結果を戻す方法(第4引数をfalseにする)があるのでそれを使うか、もしくはthe_time()関数を使いましょう。

テーマの共通関数はどこに置く?

Wordpressでオリジナルなテーマなどを作成する際、複数のファイルで利用するような共通関数はどこに置いておくのがよいのでしょう?

ずばっと結論ですが、テーマフォルダのトップディレクトリにあるfunctions.phpに置きましょう。
(ファイルがない場合は新規で作成して下さい。)

これで全てのテーマ関連ファイルから利用することが出来ます。

WP独自のグローバル変数を見る

Wordpressは様々な情報を取得するための関数をいろいろと用意してくれていますが、それでは対処出来ない場合はどうするか?

WPには$wp_queryというグローバル変数があり、ここにシステムに必要なほとんどの情報が入っています。

従ってこの変数の中から必要なものを直接アクセスすれば大抵は解決しちゃいますね。

var_dumpしてサンプルを置こうかと思いましたが、大きすぎるためやめときます。。。

マウスオーバーによる画像切替を簡単に実現する

Wordpressに限った話ではないですが、メニューなどでよく使われるマウスオーバーによる画像切替を簡単に行うためにどうするかを調査。

CSSで実現する方法もありますが、画像が多いと面倒なのでJavascriptを使うことにしました。

Javascriptでこれを実現するためのスクリプトは数多くありましたが、ソースへの追記が少なくて済むという観点で以下のものがよいなぁ~という結論に。

手軽に画像のロールオーバー効果を実装するJavaScript

prototype.js等外部ライブラリへの依存が一切無いところも良いですね。

【使い方】
 1.マウスオーバーさせる部分のimgタグに「class="rollover"」を追加。
 2.マウスが乗っていないときの画像をa.gifとするとマウスオーバー用にはa_on.gifというように「_on」を追加したファイルを用意する。

これだけです。
ファイルへの追加文字の規則変更等はオプションで指定できます。

投稿時間をunixtimeに変換する

とあるCMSからの移管で必要になって、投稿時間からunixtimeに変更する方法を検討。

<?php $post_time = strtotime(the_date('Y-m-d H:i:s', '', '', false)); ?>

これで変換できます。
srttotime()はphpの標準関数ですので、不明点があればphpの仕様を確認しましょう。(こちら)

似たような関数としてthe_time()がありますがこれは結果をphpに戻せないのでNGです。

コンテンツの配信