固定ページ等で Advanced Custom Fields のフィールド名を指定して内容を表示出来るショートコード。公式でもありそうな気はするけど、すぐ出てこなかったので用意しました。
ACFのキーを指定して内容を表示するショートコード
/**
* Advanced Custom Fields のキー(フィールド名)を
* 指定して内容を表示するショートコード
* [my_acf_the_field key='keyname']
*/
function sc_my_acf_the_field($atts)
{
global $post;
// デフォルト値を設定
$atts = shortcode_atts(
array(
"key" => '',
"post_id" => $post->ID,
),
$atts
);
$html = '';
ob_start();
$acf_data = get_field($atts['key'], $atts['post_id']);
echo $acf_data;
?>
<?php
$html = ob_get_contents();
ob_end_clean();
return $html;
}
add_shortcode('my_acf_the_field', 'sc_my_acf_the_field');
動作環境情報
"エックスサーバー" スタンダード(旧X10) "PHP" 8.1.24 "MariaDB" 10.5 "WordPress" 6.4.2 "Advanced Custom Fields" 6.2.4
コメント