RC4もリリースされ、正式リリースまであと1週間。5.3の変更点を確認していると、WP_Meta_Queryクラスが変更されていた。5.3」で紹介されており、さまざまな条件指定が追加されていた。compare_keyとtype_keyWP_Meta_Queryクラスの変更点は、クエリー条件を示す連想配列の内容である。compare_keyキーに指定できる条件が増えた。type_keyキーが追加され、'BINARY'が指定できるようになった。MySQLのクエリーでREGEXPを使用した場合、デフォルトでは英字の大文字と小文字が区別されない(パターンマッチング)。大文字と小文字を区別した結果を得たい場合はBINARYでキャストする必要があり、type_keyキーはそのために使用する。次の表ではバージョン5.2.4と5.3.0の違いを示している。!=の別名compare_keyが省略された場合、5.2.4では常に「=」が適用される。これに対し5.3.0ではkeyが配列の場合は「IN」が、配列以外は「=」が適用されるようになっている。LIKE)などに対するBINARYキャストについて。先のMySQLのリファレンスページではLIKEのパターンマッチングでは大文字と小文字が区別されないとなっているが、LIKEのBINARYキャストについてはこのページ内では触れられていない。5.7のクライアントでLIKEの動作を確認してみた。sec)以上のように、LIKEのBINARYキャストは正しく機能しているように見える。LIKEに対してもtype_keyキーが有効になるかもしれない。WP_Queryクラスで試すWP_Meta_Queryクラスの変更は、WP_Queryクラスにも影響している。WP_Queryクラスは連想配列でクエリー条件を指定できるが、WP_Meta_Queryクラスのtype_keyキーに対応するmeta_type_keyキーが追加されている。検証用にカスタムフィールドを指定した投稿を2つ用意した。sec)まずはカスタムフィールドの有無で投稿情報を取得してみる。);出力結果は次の通り。EXISTS'を指定した方はそれら以外のIDが取得できている。5.3で追加される「別名」はソースコードの意味がわかりやすい。1)今度はBINARYキャストの効果を確認する。ソースコードは次の通りで、先に'meta_type_key'キーの指定なしを、次に'meta_type_key'キーで'BINARY'を指定している。);$q3の結果ではカスタムフィールド名が'ADDR'と'addr'の2つの投稿情報のIDが取得できているのに対し、$q4の結果はカスタムフィールド名が'addr'の投稿IDのみとなる。81)このように5.3ではカスタムフィールド名に関連する投稿検索がより柔軟に対応できる。メタ情報は投稿情報だけでなく、ユーザー情報やターム情報、コメント情報もあり、それらのメタ情報が使いやすくなる意味は大きい。)パラメータ$dで指定したフォーマットで投稿日を取得する。)PHPバージョンの互換性を調べる。)投稿情報が指定したカテゴリーに属しているか調べる。)IDを指定してカテゴリー情報を取得する。)WordPressシステムの関数にアクション関数を追加する。©12NetWordPress私的マニュアル主にjQueryのメモPHPExcelのノートWebの。