Web活のロゴ

Web制作Output&初心者のための徹底ガイド

WordPressオリジナルテーマの構築。
特定のページのみスライダー(swiper)を
有効にする方法 #4/4

2023.08.08worpressでオリジナルテーマの構築
はじめに
概要

WordPressを使用して、特定のページにのみ〇〇を適用したい場合があります。今回は、ACFプラグインを使用して、特定のページにスライダーを適用する方法を実装します。この方法は、さまざまな用途に使えるため、クライアントが編集しやすいようにオリジナルのテーマをカスタマイズしていきましょう。

スポンサーリンク
※本記事の情報は執筆時点のものであり、閲覧時点では変更されている可能性があります。また、ご利用の環境によっては、本記事の内容が正常に動作しないことがあります。最新の情報については、公式サイトなどでご確認ください。

ラジオボタンで実装を選択

スライダーの実装

固定ページにswiperを使ってスライダーを実装します。詳細はこちらのswiperの実装を参照ください。

ACFの設定

以下は実装の一例です。

フィールドタイプ -ラジオボタン
フィールドラベル -スライダーの設定
フィールド名 -swiper-btn
選択枠 -有効にする・無効にする
返り値 -値

ACFの値を取得する

ACFの値を取得するにはget_field();関数を使用します。

<?php
$swiper = get_field("swiper-btn");
echo '<span>var_dumpの値: ';
print_r($swiper);
echo '</span>';
?>

値が取得できているか、print_rで確認しています。

条件分岐

値を取得できることの確認により、条件分岐を介して対応する表示または非表示を処理することが可能になります。

論理演算子

以下のコードで条件に当てはまらない場合は、本体ごと非表示にします。

<div class="hero" <?php if ($swiper !== '有効にする') echo 'style="display: none;"'; ?>>

!=で’有効にする’でない場合にechoが実装されます。

スライダーの実装

以下のようにコードを記述しています。

php

<div class="swiper">
    <?php if ($swiper === '有効にする') : ?>
        <div class="swiper-wrapper">
            <div class="swiper-slide">
                <img src="https://picsum.photos/1000/500?random=1" alt="" />
            </div>
            <div class="swiper-slide">
                <img src="https://picsum.photos/1000/500?random=2" alt="" />
            </div>
            <div class="swiper-slide">
                <img src="https://picsum.photos/1000/500?random=3" alt="" />
            </div>
            <div class="swiper-slide">
                <img src="https://picsum.photos/1000/500?random=4" alt="" />
            </div>
        </div>
        <div class="swiper-button-next fa-circle-right"></div>
        <div class="swiper-button-prev fa-circle-left"></div>
        <div class="swiper-pagination"></div>
    <?php endif; ?>

</div>

script

<?php if ($swiper === '有効にする') : ?>
    <script src="https://cdn.jsdelivr.net/npm/swiper@10/swiper-bundle.min.js"></script>
    <script type="module" src="<?php echo get_template_directory_uri(); ?>/js/index.js"></script>
<?php endif; ?>

上記のように条件分岐を設定することで、’有効にする’を選択している場合は表示され、それ以外は非表示となります。

スポンサーリンク
まとめ
  • ACFの選択ボタンを活用すれば、様々なことが実装できる
  • 値を取得し、それを条件分岐に当てはめる
  • 取得にはget_filed();関数を使用する