この記事は最後に更新してから1年以上経過しています。

3.6リリース直前チェック

説明

$wpdbは、WordPressのデータベースにアクセスする際に使用できる便利なオブジェクト。独自テーブルの利用やデータ検索の最適化など、標準提供される関数では実現できないことを手助けしてくれる。そんな$wpdbのescapeメソッドが3.6で非推奨(deprecated)になる。

$wpdbのescapeメソッドは、データベースの検索や更新時の文字列データをエスケープ処理(addslashes関数を呼び出して文字列中の'(シングルクォート)や"(ダブルクォート)などをスラッシュでクォートする)に使用できる。

global $wpdb;
$data = $wpdb->escape( $data );

WordPress 3.6ではこのescapeメソッドが非推奨になるわけだが、代替には$wpdbのprepareメソッドや esc_sql関数がある。まあ、もともとescapeメソッドを単独で利用していることはないだろうから、素直にprepareメソッドを利用するのが簡単だろう。

global $wpdb;
$result = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM {$wpdb->postmeta} WHERE meta_value = %s", $data ) );

escapeメソッドはWordPress 0.71から提供されており、3.6で非推奨(deprecated)になる。3.6になってすぐ使えなくなるわけではないが、今後のことを考え、自身で作ったテーマやプラグインで使われていないかチェックしておこう。


最終更新 : 2013年07月26日 13:57


お勧め

delete_option(2019年4月24日 更新)

bool delete_option( string $option )
サイトオプションを削除する。

flush_rewrite_rules(2015年9月24日 更新)

void flush_rewrite_rules( [ bool $hard = true ] )
リライトルールを更新する。

wp_nonce_tick(2014年5月20日 更新)

int wp_nonce_tick()
nonce用の時間依存値を取得する。

get_privacy_policy_url(2018年5月27日 更新)

string get_privacy_policy_url()
プライバシーポリシーページのURLを取得する。

delete_metadata(2016年2月23日 更新)

bool delete_metadata( string $meta_type, int $object_id, string $meta_key [ , mixed $meta_value = '' [ , bool $delete_all = false ] ] )
メタ情報の値を削除する。