パラメータで条件分岐

パラメータの条件分岐

パラメータは、サーバー側で動くプログラムに情報を送るために、URLの末尾に付け加える文字列です。

パラメータによる条件分岐も、WordPressの関数と交えて書けば簡単に実装できます。

パラメータあるなしでの条件分岐

設置したページURLに指定のパラメータがある・なしで表示を分ける記述です。

例えば、https://sample.com/ のURLに、?hogehoge のある・なしで表示を分ける場合、以下の記述になります。※パラメータはある場合は、https://sample.com/?hogehoge

PHP

<?php $url = $_SERVER['REQUEST_URI']; ?>
<?php if(strstr($url,'?hogehoge')): ?>
  パラメータが ?hogehoge の場合の表示内容
<?php else: ?>
  上記以外の内容(パラメータなしも含む))
<?php endif; ?>

各種パラメータの複数分岐

複数のパラメータ付きのURLで、表示内容を分ける条件分岐です。

以下は、hogehoge01〜03 のパラメータでそれぞれ表示内容を分ける時の記述です。

PHP

<?php $url = $_SERVER['REQUEST_URI']; ?>
<?php if(strstr($url,'?hogehoge01')): ?>
  パラメータが ?hogehoge01 の場合の表示内容
<?php elseif(strstr($url,'hogehoge02')): ?>
  パラメータが ?hogehoge02 の場合の表示内容
<?php elseif(strstr($url,'hogehoge03')): ?>
  パラメータが ?hogehoge03 の場合の表示内容
<?php else: ?>
  上記以外の表示内容
<?php endif; ?>

演算子と一緒にしたパラメータでの条件分岐

条件分岐の演算子も、パラメータの分岐とセットにして利用できます。

以下は、hogehoge のパラメータがあり、かつトップページの場合に条件分岐をするときの記述です。

PHP

<?php $url = $_SERVER['REQUEST_URI']; ?>
<?php if(strstr($url,'?hogehoge') && is_home() && is_front_page()): ?>
  パラメータが ?hogehoge で、かつトップページの場合の表示内容
<?php else: ?>
  上記以外の表示内容
<?php endif; ?>