Archive for the ‘関数’ Category
2010
03.15
Tags: BASCI認証, BASIC, パスワード, ベーシック, ベーシック認証, 簡易認証, 認証
Posted in WordPress TIPS, カスタマイズ, 使い方, 関数 | No Comments »
WordPressを使う上で、ベーシック認証下では下記のようなエラーがあるらしい。
- Flashアップローダー動作不能
- XML-RPCからの画像アップロード失敗
- 予約投稿に失敗
これを直す手段は「.htaccess」を次のように修正すると良い。
# Exclude the file upload and WP CRON scripts from authentication
Satisfy Any
Order allow,deny
Allow from all
Deny from none
成功していればこれで解決するはずです。
ベーシック認証環境下でWordPressの予約投稿の失敗、Flashアップローダー動作不能、XML-RPCか らの画像アップロード失敗をまとめて解決する方法
2010
02.12
Tags: is_404, is_archive, is_category, is_date, is_day, is_home, is_month, is_page, is_paged, is_search, is_single, is_singuler, is_tag, is_year
Posted in 使い方, 関数 | No Comments »
デザインテンプレートをカスタマイズしている時に
「トップページの時だけFLASHを出したい!」
と思って条件分岐の方法を調べた所、is_home() という関数を見つけました。
使い方は非常に簡単。
<?php if ( is_home() ) { ?>
この中にFLASHのソースを書きます。
<?php } ?>
調べてみるとis_home()以外にも色々とある事が判明!
結構色々と判別できます。便利なので使ってみては!
2010
02.09
Tags: orderby, query_posts, rand, ランダム, 関数, 並び替え
Posted in WordPress TIPS, 使い方, 関数 | No Comments »
あるサイトを制作していた時に、登録した記事をランダムに取得したいという要望がありました。
※パートナー会社を登録しておいて、クレームにならないよう順不同に表示。という感じで。
たぶん何か方法があるだろうと思っていましたが、思ったよりも簡単に実現できました。
query_posts()にorderby=randという引数を与えるとランダムに記事を取得できます。
WordPress ver2.5からの機能のようですね。
■サンプルソース
<?php query_posts(”cat=1&showposts=10&orderby=rand”); ?>
2010
02.03
Tags: 2.9, 2.9.x, 2.9系, category-スラッグ, home.php, index.php, page-ID.php, page-スラッグ, テンプレート, テンプレート階層, バージョン, 新機能, 優先順位
Posted in WordPress TIPS, テンプレート, 使い方, 関数 | No Comments »
WordPress2.9系からテンプレート階層が追加されているようです。
WordPressのテーマについて、ある程度知っている前提で話してしまうのですが、
テンプレート階層というのは、下記のようなページ毎のテンプレートの優先事項です。
全ページの基本テンプレート:index.php
トップページ:home.phpがあればこちらを優先、無ければindex.phpを適用
カテゴリ:category.phpがあればこちらを優先、無ければindex.phpを適用
私も最初はよくわかっていませんでしたが、一度理解すると便利で面白いですね。
今回2.9系で追加になったのは以下のテンプレート階層
- category-スラッグ名.php ? カテゴリーのスラッグが “new” の場合は category-new.php
- page-スラッグ名.php ? ページのスラッグが “index” の場合は page-index.php
- page-ID名.php ? 例えば固定ページのIDが6の場合は page-6.php
今までページについては、自動で適用される事がなかったのでページ作成時に個別にテンプレートを選んでいました。これにはテンプレートの中でテンプレート名を指定しておくなどひと手間加えてあげないといけなかったので、使い方によっては楽になっています。
2010
01.18
Posted in カスタマイズ, 使い方, 関数 | No Comments »
query_postsを使ってデータを再取得。その際に引数に下記を設定します。
order を desc
orderby に modified
例)
$paged = get_query_var(‘paged’);
$cat=get_query_var(‘cat’);
query_posts(‘posts_per_page=10&order=desc&orderby=modified&cat=’.$cat.’&paged=’.$paged); ?>
参考情報
カテゴリーから指定する
指定したカテゴリーに属する投稿を表示。
- cat
- カテゴリーIDを指定。
複数指定するならカンマで区切る。
除外したい場合はカテゴリーIDの前にマイナスを付けると指定できる。
- category_name
- カテゴリー名を指定(日本語も可)。
- category__and
- カテゴリーIDの配列。指定した複数のカテゴリーすべてに含まれる投稿のみを取得。
- category__in
- カテゴリーIDの配列。指定した複数のカテゴリーいずれかに含まれる投稿のみを取得。
- category__not_in
- カテゴリーIDの配列。指定したカテゴリーのいずれにもに含まれない投稿のみを取得。
配列関連はあんま使わないのでスルー。
タグ引数
指定したタグが付けられた投稿を表示。
- tag
- タグスラッグを指定。
or指定するならカンマで区切る。
and指定するならプラスでつなげる。
- tag__and
- タグIDの配列。指定した複数のタグすべてを含む投稿のみを取得。
- tag__in
- タグIDの配列。指定したタグのいずれかを含む投稿のみを取得。
- tag_slug__and
- タグスラッグの配列。指定した複数のタグすべてを含む投稿のみを取得。
- tag_slug__in
- タグスラッグの配列。指定したタグのいずれかを含む投稿のみを取得。
配列関連はあんま使わないのでスルー。
投稿者引数
投稿者を指定することで表示する投稿を制限。
- author
- 投稿を表示させたい投稿者のIDを指定。
マイナスを付ければ、そのIDの投稿を除外。
- author_name
- 投稿を表示させたい投稿者のニックネーム(user_nicenameに入ってるもの)を指定(日本語も可)。
投稿・固定ページ引数
- p
- 投稿IDで指定。
- name
- 投稿スラッグで指定。
- page_id
- 固定ページIDで指定。
- pagename
- 固定ページスラッグで指定。
- posts_per_page
- 1ページに出力する投稿数。-1の場合すべての投稿を出力。
- showposts
- 出力する投稿の数。
- post__in
- 取得する投稿IDを配列で指定。
- post__not_in
- 除外する投稿IDを配列で指定。
- post_type
- 投稿のデフォルトは「post」。
その他に、「any」、「attachment」、「page」、「revision」が使用可能。
「any」を指定すると、リビジョン以外の形式のものを取得できる。
- post_status
- 「publish」を指定すると公開済みのものを取得。
以下同様に、「pending」→レビュー待ち、「draft」→下書き、「future」→予約投稿、「private」→非公開、「trash」→ご み箱(ver. 2.9以降)に分類されたものを取得できる。その他に、「inherit」→継承(添付ファイル、改訂履歴・自動保存のとき)がある(←よくわからん)。
- post_parent
- 指定したIDのページの子ページを取得。
配列関連はあんま使わないのでスルー。
日時引数
時間範囲を指定する際に使用するパラメーター。普通に使う可能性があるのは年月日くらいかな。
- hour
- 時間(0?23を指定可能)
- minute
- 分(0?60を指定可能)
- second
- 秒(0?60を指定可能)
- day
- 日(1?31を指定可能)
- monthnum
- 月(1から12を指定可能)
- year
- 年(2009のように4桁での年指定)
- w
- 週番号(0?53まで指定可能)
ページ引数
- paged
- インデックスやアーカイブページが複数わたる場合、何ページ目を表示するかを指定。
- order
- 取得したページの並び順。デフォルト値は「DESC」。ASCが小→大、DESCが大→小。
オフセット引数
- offset
- 取得投稿の先頭からスキップする投稿数を指定。
並び替え引数
取得した投稿をどの項目について並べるかを指定する。
- orderby=author
- 投稿者で並べる
- orderby=date
- 日付で並べる
- orderby=category
- カテゴリーで並べる(廃止予定?)
- orderby=title
- タイトルで並べる
- orderby=modified
- 変更順に並べる
- orderby=menu_order
- メニュー順に並べる
- orderby=parent
- 親順に並べる
- orderby=ID
- ID順に並べる
- orderby=rand
- ランダムに並べる
- orderby=meta_value
- meta valueの値で並べる。比較するためのmeta keyの値をクエリーの中に入れること。
- orderby=none
- 並び変えない(ver. 2.8以降)
- orderby=comment_count
- コメント数順で並べる(ver. 2.9以降)
カスタムフィールド引数
カスタムフィールドのキー、値に基づいて投稿・ページを検索する。
- meta_key=
- カスタムフィールドの名前
- meta_value=
- カスタムフィールドの値
- meta_compare=
- 例: query_posts(‘meta_key=miles&meta_compare=<=&meta_value=22′);
上のように指定すると、比較対照は「miles」というメタキーの値。かつ、その値が22よりも小さい投稿を取得する。
比較演算子のデフォルトは「=」だが、他にも「!=」、「>」、「>=」、「<」、「<=」が使用可能。
2010
01.16
Tags: get_post_meta, カスタムフィールド
Posted in カスタマイズ, プラグイン, 関数 | No Comments »
カスタムフィールドを使って、特定の項目を記入、表示する方法をご紹介します。
例)各記事の記入者と記入日を投稿画面に表示、テンプレートに出力する。
http://wordpressgogo.com/development/custom-field-template.html
上記からダウンロードし、管理画面にてインストール⇒有効化します。
管理メニューの設定にある、カスタムフィールドテンプレートにて、テンプレートを登録する事が出来ます。
下記に表示してあるカスタムテンプレートの設定です。HTMLの感覚で色々出来そうです。
例)
-
[記入者]
type = text
size = 10
label =
output=true
-
[記入日]
type = text
size = 10
maxlength=10
label =
style=ime-mode: disabled;
output=true
<?= get_post_meta($id, “記入者”, true); ?>で入力値を表示出来るので、single.phpなどに記述すると、投稿記事の中に表示する事が出来ます。