3.6リリース直前チェック

3.6リリース直前チェック - escapeさん、お疲れ様

説明

$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になってすぐ使えなくなるわけではないが、今後のことを考え、自身で作ったテーマやプラグインで使われていないかチェックしておこう。

関連

  • esc_sql - SQL文字列をエスケープ処理する

お勧めコンテンツ

get_comment_count(2010年11月18日 登録)

array get_comment_count( [ int $post_id = 0 ] )
ブログ全体または投稿ページのコメント数を取得する。

wp_title_rss(2014年3月31日 登録)

void wp_title_rss( [ string $sep = '»' ] )
フィード向けのページタイトルを出力する。

is_single(2009年11月12日 登録)

bool is_single( [ mixed $post = '' ] )
要求されているページが、投稿か調べる。

is_blog_admin(2011年6月22日 登録)

bool is_blog_admin( )
リクエストページがブログ管理者ページ(/wp-admin/内)か調べる。

delete_post_meta(2010年2月13日 登録)

bool delete_post_meta( int $post_id, string $meta_key [ , mixed $meta_value = '' ] )
投稿情報のカスタムフィールド情報を削除する。

最終更新日時 : 2013-07-26 13:57