【WordPress】カスタムフィールドでショートコードを利用できる状態にする例|apply_filters()

今回は、WordPressのカスタムフィールドの項目内でショートコードを利用できる状態にする方法となります。

カスタムフィールドでショートコードを利用できる状態にする例

カスタムフィールドの項目内で、ショートコードを利用できる状態にするコードの例は以下となり、カスタムフィールドの値を出力する箇所に記述します。

<?php 
$value = get_post_meta( get_the_ID(), 'sample_field', true );
echo apply_filters( 'the_content', $value );
?>

apply_filters()について

apply_filtersでは、第1引数に指定したフィルターフックを、第2引数に指定した値に適用して、その値を返します。

上記例では、指定したカスタムフィールドの値に対して、フィルターフックthe_contentを適用させます。それにより、カスタムフィールドの項目内でも、ショートコードなど本文で利用できる機能が適用され出力されます。

また、カスタムフィールドの値を取得する関数については、以下のリンク先を参考にしてみてください。

apply filters()の引数

apply filters()の引数はそれぞれ以下となります。

apply_filters( $tag, $value, $var );
$tag(必須)
適用させるフィルターフック名を指定。初期値はなし
$value(必須)
第1引数に指定したフックを適用する値を指定。初期値はなし
$var(省略可)
フィルターフックへ渡す変数を指定(複数指定可)。初期値はなし

本文の直前や直後にカスタムフィールドの値を出力する場合

本文の直前や直後にカスタムフィールドの値を出力する場合などでは、functions.php内でフィルターフックthe_contentを使用し、本文にカスタムフィールドを含めることで、ショートコードを利用できる状態にする方法もあります。

詳しくは以下のリンク先を参考にしてみてください。

参考サイトなど

コメント投稿コメント投稿欄を開く

コメントは項目欄(*は必須項目)を入力し、「コメントを送信」ボタンをクリックしてください。 (メールアドレスは公開されることはありません。コメントの公開は承認制となります。)

また、多忙によりコメントには返信できない場合があります。

Twitterで返信する場合はこちらから。