<?php
// area.php

// WordPressを読み込む
require( dirname( FILE ) . ‘/wp-blog-header.php’ );

get_header();

// パラメータ取得(例: id=gunma)
$area_slug = isset($_GET[‘id’]) ? sanitize_text_field($_GET[‘id’]) : ”;

// スラッグから都道府県名取得(必要なら連想配列などで対応)
$pref_map = [
‘gunma’ => ‘群馬県’,
‘hokkaido’ => ‘北海道’,
// 他の都道府県も追加
];

$pref_name = isset($pref_map[$area_slug]) ? $pref_map[$area_slug] : ”;

if ($pref_name):
echo ‘

‘ . esc_html($pref_name) . ‘のキャンプ場一覧

‘;

// 投稿タイプ: camp(カスタム投稿タイプ)、カスタムフィールド: 都道府県
$args = [
    'post_type' => 'camp',
    'posts_per_page' => -1,
    'meta_query' => [
        [
            'key' => 'prefecture', // ACFなどで設定した都道府県フィールド
            'value' => $pref_name,
            'compare' => '='
        ]
    ]
];
$query = new WP_Query($args);

if ($query->have_posts()):
    echo '<ul>';
    while ($query->have_posts()): $query->the_post();
        echo '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
    endwhile;
    echo '</ul>';
else:
    echo '<p>キャンプ場情報が見つかりませんでした。</p>';
endif;
wp_reset_postdata();

else:
echo ‘

都道府県が指定されていません。’;
endif;

get_footer();

コメント

タイトルとURLをコピーしました