ヘルプページはテキストファイルで簡単に作ってしまおう。

サイトによっては、ヘルプページって必要になることありませんか?

ヘルプページって大げさなものじゃなくたって、ポップアップでちょこっと使い方の説明をしたり、ツールチップにしたり。

で、ヘルプページを作るのに、いちいちHTMLファイルを編集するのも面倒だよね。

データベースに放り込むのもいいんだけど、そうなると編集するのも面倒だよね。

HTMLにしても、データベースにしても、多少の制作スキルがあればいいんだけど、クライアントとかのほうでも自由に編集できるようにしておけば、手間が減って良いと思わない。

「ここここのファイルをメモ帳で書き換えたらOKです」って。

ってことで、テキストファイルのディレクトリ構造を次のようにします。

help
  order
    cart
      sentaku.txt
      siharai.txt
      hassou.txt

って感じで、フォルダ名・ファイル名は別になんでも構わないんだけど、とりあえず「help」って分かり易いフォルダ名にして、

「helpフォルダの中のファイルをいじってください」

って感じで、言えるようにしておく。

ディレクトリ構造は、実際のURLに似せておくともっと分かりやすくなるかな。

んで、ヘルプの内容をベタ書きする。

商品を選択するには、
購入数量と色を選択して
【カートに入れる】をクリックします。

って感じで、sentaku.txtに書く。

こうやって、ヘルプファイルを生産していく。

 

次にPHP側のコード。

/*
 * ヘルプファイルのロード
 */
function loadHelpFile($path){
  $ret = 'このページは、ヘルプファイルが作られていません。';
  if (file_exists($path)){
    $ret = file_get_contents($path);
    $ret = trim(mb_convert_encoding($ret, 'utf-8', 'utf-8, SJIS-WIN, Shift_JIS, JIS, eucjp-win, utf-8'));
    $ret = nl2br($ret);
  }
  return $ret;
}

loadHelpFile関数をどっかで適当に共通モジュールとして作っておきます。

んで、

<body>
<?php
  $path = $help_no_root_path . 'order/cart/sentaku.txt';
  echo loadHelpFile($path);
?>
</body>

loadHelpFile() の中を見れば分かると思いますが、ファイルを読み込んで、改行箇所を <br /> に置き換えて返しているだけです。

ちょこっと、赤字で強調したいとかってときは、sentaku.txt にそのまんまHMTLコードを書くこともできます。

でも、あんまHTMLコードが入りすぎると、そもそものこのテクニックの意味が薄れてくるので、ご利用は計画的にです。

あと、txtファイルの文字コードは、SJISでも、EUCでも、UTF-8でも気にしなくてOK。

クライアントや自分が扱い易い(慣れてる)文字コードでOKです。