YouTube

ACFで設定したメタキーの値をWPの詳細ページに表示したい

AFCのメタキーの表示方法

例えば “map”というメタキーを作成した場合、詳細ページにその値を表示したいときがあります。下のコードをsingle.phpなどの詳細ページに挿入すると登録された値が表示されます

<?php
// 投稿またはページのIDを取得
$post_id = get_the_ID();

// ACFのメタキー "map" の値を取得
$map_value = get_field('map', $post_id);

// 値がある場合は表示
if($map_value) {
    echo $map_value;
} else {
    echo 'マップが見つかりません';
}
?>

エディターで設定した値を表示したい場合

access_long というメタキーを表示したい

通常下のコードで表示はできますが pタグやエディターで設定したタグがそのまま表示されます。

<?php
$access_long = get_field('access_long'); // ACFのメタキーaccess_longの値を取得

if (!empty($access_long)) { // もし$access_longが空でない場合
    echo '' . esc_html($access_long) . ''; // メタキーaccess_longの値を出力
}
?>
タグが表に出る

表示されない様子するためには下のコードを使用

<?php
$access_long = get_field('access_long'); // ACFのメタキーaccess_longの値を取得

if (!empty($access_long)) { // もし$access_longが空でない場合
    // HTMLタグをエスケープせずに出力
    echo $access_long;
}
?>

このコードでは、htmlspecialchars関数を使わずに、$access_long変数をそのまま出力しています。これにより、HTMLタグがエスケープされずに表示されます。ただし、セキュリティ上のリスクがあるため、信頼できるソースからの入力でのみ使用することをお勧めします。

タグがなくなった!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ACFフィールド "place_id" の登録件数: 12