【WordPress】the_contentなどで取得する本文に、カスタムフィールドの値を含める方法
WordPressで、テンプレートタグthe_contentを使用し投稿などの本文を扱う際に、本文にカスタムフィールドの値を含めた状態で扱いたい場合があるかもしれません。
今回は、そのような際に利用できるソースコードの例となります。
投稿の本文内にカスタムフィールドの値を含める例
以下は、フィルターフックthe_contentを使い、本文にカスタムフィールドの値を含めるソースコードの例となり、functions.phpに記述します。
function my_add_field( $content ){
if( is_single() ){
// カスタムフィールドの値を取得
$value = get_post_meta( get_the_ID(), 'sample_field', true );
if( $value ){
// 本文の後にカスタムフィールドの値を追加
$content .= $value;
}
}
return $content;
}
add_filter( 'the_content', 'my_add_field' );
フィルターフックthe_contentのコールバック関数の引数には、本文が格納され扱うことができます。
上記例では、そのフィルターフックthe_contentを使用し、投稿の本文の後に指定したカスタムフィールドの値を追加しています。
それにより、テンプレートタグthe contentで本文を取得した際に、本文の後に指定したカスタムフィールドの値が追加された状態で取得できます。
また、本文に追加したカスタムフィールドは、フィルターフックthe_contentが適用されるため、ショートコードなど本文内で利用できる機能を、カスタムフィールドでも使えるようになります。
カスタムフィールドを扱う関数について
カスタムフィールドを扱う関数については、以下のリンク先を参考にしてみてください。