WordPressってループ外で何かしようと思うと面倒だなと思ってましたが $wp_queryとか使うとそれほど面倒じゃなくできそうな感じです。
@params $category
Category ID, Category Title or Category Slug
Default: None
@return Boolean
引数なしの場合、カテゴリであればtrueが返ります。
カテゴリにアクセスしてるとき、get_query_var('cat')でカテゴリIDが返ってくるらしいんだけど マニュアルではノータッチ。調べてみたら/wp-includes/query.phpにありました。
$wp_query->get($var)は何かっていうと$wp_queryのプロパティである$query_varsから 値を取得してます。
どれもpublicなので
上記3つは同じように使っても問題はないでしょう。 推奨はされてませんが。 直でプロパティへアクセスするのは気持ちが悪いので$wp_query->get($var)使うのが 個人的には一番わかりやすいです。
で、重要なのは$wp_query->query_varsには何が入ってるのか? 例によってvar_dump()してみました。
デザインの汁 « [パブリックドメイン]素材:釣り針で var_dump($wp_query->query_vars)
いろいろ入ってますね。
$wp_queryを利用するとループ外でも簡単に カテゴリを取得したり判定したり出来そうです。
追記:カテゴリ判定にはin_category()っていう関数が存在してます。まったく気がつかなかったわ。
ざっくり書いてみる。
plugin化の方法がもちろんわからないのでfunctions.phpでw もっといい設置方法あるはず。
ゲームカテゴリの場合、バナーを出す。
右側にゲーム用PCのバナーが出ます。他のページではでません。
日本語マニュアルに載ってないこと色々ありそうですね。 やはり本家サイトとソース頑張って読むべきなんだろうなぁ・・・
うーん・・・5年くらいかかりそうだ・・・
| 投稿日 | 2009年11月 7日 05:01 |
|---|---|
| カテゴリ | PHP |
| タグ | WordPress | サンプルコード | 関数 |
| トラックバック URL | http://www.kantenna.com/cgi-bin/mt504/mt-tb.cgi/1174 |
2010年1月21日 12:43
WordPressってループ外で何かしようと思うと面倒だなと思ってましたが $wp_queryとか使うとそれほど面倒じゃなくできそうな感じです。続きを読む
2010年4月27日 23:21
Wordpressのエクスポートとインポート使ってデータ移転するとguidが変わらない続きを読む
2011年9月14日 13:17
「WEBプログラム覚書::[PHP]google Analytics からアクセスの多いページの情報を取得」に引き続きGoogle Analytics A...続きを読む
2011年9月14日 13:17
google AnalyticsのAPIを利用してアクセスの多いページの情報を取得します。続きを読む