この記事は最後に更新してから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


お勧め

add_post_meta(2018年5月27日 更新)

bool add_post_meta( int $post_id, string $meta_key, mixed $meta_value [ , bool $unique = false ] )
投稿情報にカスタムフィールド情報を追加する。

get_post_format_string(2011年9月11日 更新)

string get_post_format_string( [ string $slug ] )
投稿フォーマット名を取得する。

wp_playlist_scripts(2014年4月20日 更新)

void wp_playlist_scripts( string $type )
playlistショートコードのHTML向けのスクリプトを出力予約する。

wp_kses_no_null(2012年4月25日 更新)

string wp_kses_no_null( string $string )
文字列からNULL文字を取り除く。

get_the_terms(2016年2月13日 更新)

mixed get_the_terms( mixed $id = 0, string $taxonomy )
投稿記事のタクソノミー情報を取得する。