【PHP初心者向け】if文でできるWordPressカスタマイズ|条件分岐の考え方と実例

php初心者 if文

php初心者でもif文の使い方を覚えることで、WordPressをカスタマイズすることができるようになります。ここで言うカスタマイズとは、デザインの見た目を変えるというよりも、機能的な部分を自分の手で調整できるようになるという意味です。
 
WordPress は PHP という言語で動いているため、if文を理解すると、「条件によって動作を切り替える」という基礎が身につき、サイトの挙動を自由に制御できるようになります。
 
ではWordPressをカスタマイズする方法を見ていきましょう。
 
 

if文の基本構造とWordPressでの使い方

カスタマイズの前提として、if文を覚え方をこちらのツールを例にして、選択した項目によって指定の文字を表示させる。というようなプログラムをで作っています。
 
選択する項目としてはこんな感じです。

php if文 選択

 
 
WordPressの固定ページにこのようなHTMLタグを貼り付けると、画像の素材の部分が表示できます。

<form method="post">
  <select name="material1">
    <option value="">選択して下さい</option>
    <option value="シルク">シルク</option>
    <option value="コットン">コットン</option>
    <option value="ウール">ウール</option>
    <option value="リネン">リネン</option>
  </select>
</form>

 
これを軽く説明すると、シルクとコットンとウール、リネンがあり、シルクを選べばシルクという文字が表示され、コットンを選べばコットンという文字が表示されるようにしています。
 
 
ざっくりとした流れとしては、ここで選択した文字をfunction.phpというWordPressの心臓部分に送り、処理して新しいページで表示させます。
 
こちらのページで詳しく説明しています。


 
 
 
WordPressの心臓部分側では、固定ページ側で選択した文字をif文で処理して、選択項目に合わせて実行する内容を切り替える作業をさせます。

if文書き方の基本形は次のとおりです。

if(条件){条件を満たしていたときに実行する指示}

 
 
functions.phpにはこのような内容を記述します。

function material_func() {
  $material1 = $_POST["material1"];
  if($material1 === "シルク"){
    echo 'このネクタイの生地はシルクです。';
  }else if($material1 === "コットン"){
    echo 'このネクタイの生地はコットンです。';
  }else if($material1 === "ウール"){
    echo 'このネクタイの生地はウールです。';
  }else
    echo 'このネクタイの生地はリネンです。';
}
add_shortcode('printmaterial', 'material_func');

 
 
この中で見て欲しいのは3行目と4行目の } まで。
これを取り出すと、こうなります。

if($material1 === "シルク"){echo 'このネクタイの生地はシルクです。';}

さらに$material1をAという文字に置き換えると

if(A === "シルク"){echo 'このネクタイの生地はシルクです。';}

となります。
 
ifというのは、もし○○○であれば、という意味なので、このif文が意味するのは、
Aの中身がシルクであれば { } の部分を実行しまししょう。ということ。
 
echoというのは出力命令で、「このネクタイの生地はシルクです。」の文章を出力させましょう。ということになります。
 
「===」はとりあえず 「=(イコール)」で覚えておけば大丈夫です。
 
ちなみに、”シルク”の部分はここに文字や数字といったデータが入る部分なので、Aの中身を数字であることを条件にしたいのであれば、「3」や「10」のような値をいれます。

if(A = "3"){}

 
 
上記のphpではシルク、コットン、リネン、ウールに合わせて表示内容を変えているので、if文 と else if文 を使い分けることで、複数の条件分岐が可能になります。
 
 
 
実際のデータの動きとしては、select nameで設定したmaterial1という文字が、選択した項目(データ)を入れる箱となり、WordPress内で行き来します。

表示されているページで選択されたデータが、material1という箱の中に入れられ、WordPress内部にあるfunction.phpというページに移動し、if文によって箱の中身は何なのかを判別します。

判別ができたら、次の指示として選択されたデータ(文章)を、ウェブサイトの新しいページ表示させる。といった具合です。
 
つまり、PHPとHTMLを組み合わせることが WordPress カスタマイズの基本的な考え方になります。
 
 

 
 

if文の組み立て

条件を満たす基本形

では、このif文を覚えるわけですが… 
選択させたい項目をナロータイ、レギュラータイという2項目だとして、ナロータイが選択されたらそれの説明をする。といったif文を作るとすれば、

if(A = "ナロータイ"){このネクタイはナロータイです。}

という形になり、裏を返せばレギュラータイが選択されれば何もしない。というif文のphpになります。

{ }の中身をページで表示させるには

echo 'このネクタイはナロータイです。';

という形式で記述し

if(A = "ナロータイ"){echo 'このネクタイはナロータイです。';}

といった感じになります。
 
 
ということで、{ }の中身を変えることで、表示させる内容を変えることができます。

if(A = "ナロータイ"){echo 'このネクタイは幅6cmです。';}

 
例えのAを$material1に、= を === に戻して正しい記述方法にすると、こうなります。

if($material1 === "ナロータイ"){echo 'このネクタイは幅6cmです。';}

 
 
 

条件を複数指定する場合

今度は段落(改行)をいれますが、ナロータイ、レギュラータイのどちらを選んでも、説明を表示させるには、

if($material1 === "ナロータイ") {
  echo 'このネクタイはナロータイです。';
} else if($material1 === "レギュラータイ") {
  echo 'このネクタイはレギュラータイです。';
}
if(条件1){条件1を満たしたときの指示} else if(条件2){条件1を満たしたときの指示}

 
基本的なif文の後ろに「else 」を加えさらにif文を追加することで可能です。
 
このように、選択項目にあわせて条件を増やしていくことで、指示項目も増やすことができます。
 
 

条件を満たさない場合は

ですが、elseというのは「その他」という意味。最初のifの条件に当てはまらない場合は、次の指示を実行するということなので、選択項目が2つの場合、elseにifを付け足す必要はなく、elseだけで十分です。
 
 
このように条件を指定するよりも

if(条件1) {
  条件1を満たしたときの指示
} else if(条件2) {
  条件2を満たしたときの指示
}

このほうがスッキリします。

if(条件1) {
  条件1を満たしたときの指示
} else {
  条件1以外だったときの指示
}

 
 

 

データの流れとif文の作り方

固定ページ

このif文をデータの流れに沿って組み立て直すと、
固定ページでformというタグでfunction.phpにデータを送るために、

<form method="post"></form>

というhtmlを作ります。

次に、formタグの中にselectタグを入れ、データを送るための箱の名前を決めます。

<form method="post">
  <select name="material1"></select>
</form>

そして、選んでもらうデータを作る。

<form method="post">
  <select name="material1">
    <option value="シルク"></option>
    <option value="コットン"></option>
  </select>
</form>

さらにページに表示させる名前も入れる。

<form method="post">
  <select name="material1">
    <option value="シルク">シルク</option>
    <option value="コットン">コットン</option>
  </select>
</form>

 
 
 

WordPress内部での処理

function.php内で固定ページの選択項目を受け取る部分は

$material1 = $_POST["material1"];

固定ページで作った箱、「material1」を 「_POST」という箱に入れて、function.phpで受け取ります。受け取り先は、function.php内の『material1』です。

少しややこしいかもしれませんが、「_POST」と『material1』は中身がその都度変わるため、変数という名前の箱として取り扱います。なのでphpのルールとして頭に$マークがつくのです。
 
 
固定ページからデータを受け取った$material1は、次の指示をするため、中身がシルクであるかを判別します。

$material1 = $_POST["material1"];
if($material1 === "シルク") {
  echo 'このネクタイの生地はシルクです。';
} else {
  echo 'このネクタイの生地はコットンです。';
}

 
 
「フォームで選択 → PHPが受け取る → 条件に応じて出力する」
この流れが理解できれば、PHP 初心者でも WordPress、のカスタマイズの基本構造を掴めます。
 
今回は固定ページを利用したif文の使い方です。if文は基本的にはこのような形なので、php初心者の段階でも、if文を触ることで、WordPressのカスタマイズできるようになります。
 
 
最近はChatGPTのようなAIにコードを書かせることもできますが、「何をしているか理解できないまま作られたコード貼るだけ」では正しく動作しないこともあります。
 
if文のような基本構文を理解していれば、AIが出力したコードの意味を判断でき、WordPressのカスタマイズを正しく行えるようになります。
 
たとえ小さな一行でも、自分の頭で理解して動かすことが、最も確実な学習です。
PHPのif文は、その入り口として必要不可欠な構文です。
 
 

コメントを残す

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