前回までで、商品情報の取り出しと、プログラム内容をテンプレートに表示させる方法をしました。


今回は、条件分岐と呼ばれるものを解説していきます。


条件分岐とは・・・


この条件の時はこれを表示!


この条件の時はアレを表示!


と条件次第で表示する内容を自動的に変更してくれる!という便利なものです。


という事で、今回は「在庫状況」を取得&表示させていきます。

スポンサーリンク:

「 もしもAPI 」から在庫状況を返してもらうのですが、「在庫状況コード」といって数字で返ってきます。


その在庫状況コード次第で、ページに表示させる文字を自動で変更させてしまおう!というとても便利なものです。


━━━ ↓ サ ン プ ル 4(.tpl) こ こ か ら ↓ ━━━━━━━━━━━━━━━━━

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>サンプル4</title>
</head>
<body>

【商品名】
<br>
{$name}
<br><br>
【商品説明】
<br>
{$Description}
<br><br>
【商品スペック】
<br>
{$spec}
<br><br>
【在庫状況】
<br>
{$stock_status}

</body>
</html>

━━━ ↑ サ ン プ ル 4(.tpl) こ こ ま で ↑ ━━━━━━━━━━━━━━━━━


「 .tpl 」は在庫状況の項目だけを増やしました。


「 .php 」も同じく在庫状況の項目を増やし、API認証コードの記述場所を変更しました。


これでサンプルデータをダウンロードした場合や、認証コードが変わった時の編集が楽になります。



━━━ ↓ サ ン プ ル 4(.php) こ こ か ら ↓ ━━━━━━━━━━━━━━━━━

<?php

$Article_Id = 306055;
$Auth_code = ★API認証コード★;
$api_file = "http://api.moshimo.com/article/search?authorization_code={$Auth_code}&article_id={$Article_Id}";
$xml = simplexml_load_file("$api_file");


$name = ($xml->Articles->Article->Name);
$Description = ($xml->Articles->Article->Description);
$spec = ($xml->Articles->Article->Spec);
$stock_status = ($xml->Articles->Article->StockStatus);


require_once 'Smarty/Smarty.class.php';


$smarty = new Smarty();
$smarty->template_dir = "./templates";
$smarty->compile_dir = "./templates_c";

$smarty->assign('name',$name);
$smarty->assign('Description',$Description);
$smarty->assign('spec',$spec);
$smarty->assign('stock_statusword',$stock_status);

$smarty->display('index.tpl');

/* 在庫状況コードで変更する文字 */

switch ($stock_status) {
case "0":
echo "在庫切れ";
break;
case "1":
echo "在庫わずか";
break;
case "2":
echo "在庫あり";
break;
case "3":
echo "在庫豊富";
break;
}


?>

━━━ ↑ サ ン プ ル 4(.php) こ こ ま で ↑ ━━━━━━━━━━━━━━━━━


赤文字部分が今回、新しく追加&変更した部分です。


API認証コードがURLの中に記述していたのを、$Auth_code に記述する事により、URL中の{$Auth_code}に置き換えられるようにし変更しました。


後は、$smarty->assign('stock_statusword',$stock_status);で在庫状況コードの場所を指定し、返ってくる値によって「 在庫豊富 」や「 在庫切れ 」などの表示を自動で切り替えるように設定しました。


この文字列は書き換えることにより、ページに表示される在庫状況の文字列も変更されます。


【 例 】
echo "在庫あり"; ⇒ echo "在庫があります。";


次はせっかくなんで、『カートへ入れる』ボタンでも表示させてみようかなぁ~


今回はひとまず以上です。


お疲れ様でした。


表示の確認 ⇒ サンプルサイト4

サンプルファイルのダウンロードはこちら ⇒ サンプル4



もしもドロップシッピング

もしもドロップシッピング - 誰でも無料でネットショップ開業 副業にも