【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を適用させます。それにより、カスタムフィールドでも、ショートコードなど本文で利用できる機能が適用され出力されます。

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

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

apply filters()のパラメータ

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

参照サイト・書籍

コメントまたはTwitterで返信

コメントは、以下の項目(*は必須項目)を入力し「コメントを送信」ボタンから送信お願いします。メールアドレスは公開されることはありません。Twitterで返信する場合はコチラから。