3.6 から使える(であろう)ちょっと便利な WordPress 関数

公開されている 3.6 ベータ3の中から、プラグインやテーマをを作るときに使えそうな WordPress 関数を7個ほど拾い集めてみました。詳細は、リンク先の CODEX を見てもらうとして(まだページしかない関数もありますが)、ざっくりと機能とフックの有無などを紹介しておきます。

shortcode_exists

パラメーターで指定されたショートコードタグが定義されているか判別する。

フック

なし

記述例

<?php if ( shortcode_exists( 'my_shortcode' ) ) : ?>

my_shortcode というショートコードが定義されているか判定する。

has_shortcode

パラメーターで指定されたショートコードタグが、検索対象文字列に存在するかどうか判定する。

フック

なし

記述例

<?php if ( has_shortcode( $post->post_content, 'trust-form' ) ) : ?>

本文内に Trust Form のショートコードが存在するか判別する。

get_content_images

パラメーターで指定された文字列の中に含まれる画像を全て(上限指定がある場合は指定数まで)取得する。

フック

フック名 フックの種類 パラメーター 備考
content_images フィルター 1.画像のURLの配列
2.検索対象文字列
フックを通るのは、取得形式を画像のURLと指定したときのみ

記述例

$content_images = get_content_images( $post->post_content, false, false, 3 );

本文内に含まれる最初の3つの画像のURLを取得する。

get_content_image

検索対象文字列の最初の画像を取得する

フック

フック名 フックの種類 パラメーター 備考
content_image フィルター 1.画像のタグまたはURL
2.検索対象文字列
画像のタグが見つからなかった場合は、フックを通らない

記述例

$content_images = get_content_image( $post->post_content );

本文内に含まれる最初のimgタグを取得する。

attachment_url_to_postid

画像ファイルのURLから、メディアのIDを取得する。ただし、指定できるURLはフルサイズのものに限られる

フック

なし

記述例

$attachment_id = attachment_url_to_postid( $src );

$srcのメディアIDを取得する。

wp_slash

対象データに対して再帰的に addslashes をかける

フック

なし

記述例

$datas = wp_slash( $datas );

$datas に再帰的に addslashes をかける

wp_unslash

対象データから、再帰的に stripcslashes によるバックスラッシュを除去を行う。既存のstripslashes_deepのラッパー関数

フック

なし

記述例

$post_data = wp_unslash( $_POST );

$_POST の値から、バックスラッシュを取り除く。