┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  小説PHP (v3.0) - 取扱説明書
┃
┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  小説PHPとは、小説や論文等の階層構造ドキュメントの作成や編集をWeb上から
┃  行うためのPHPスクリプトです。スキン(HTMLテンプレート)を変更することで、
┃  外観デザインを変更することができます。スキン配布しています(自作も可)。 
┃
┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃                                    Copyright (c) 2006-2008 piyopiyoPHP.
┃                                  http://123.roro.jp/PPPHP/
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


    目次

    1.  小説PHPとは?
    2.  小説PHP(複数小説対応版)とは?
    3.  主な特長
    4.  利用規定・動作条件
    5.  クイックスタート(簡単な設置手順)
    6.  パーミッションの設定(例)
    7.  配布ファイルの概要
    8.  スキンを変更する方法
    9.  スキンHTMLファイルの概要


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  1. 小説PHPとは?
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


    あなたがダウンロードしたスクリプトファイルが novel.zip ならば、
    それは「小説PHP」です。本章をお読み下さい。
    novel.zip でないならば、本章は読み飛ばして次章からお読み下さい。

    小説PHPとは、
      ┌────────────────────────────────┐
      │一つの小説と、その小説の中に含まれる複数の記事(部や章や話など)│
      └────────────────────────────────┘
    を表示・編集することが出来るPHPスクリプトです。

    小説の管理を行う場合は、
        1. Webブラウザで小説PHPへアクセス。
        2. 小説ページが表示されるので、管理ページへのリンクをクリック。
    を行って下さい。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  2. 小説PHP(複数小説対応版)とは?
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


    あなたがダウンロードしたスクリプトファイルが cabinet.zip ならば、
    それは「小説PHP(複数小説対応版)」です。本章をお読み下さい。
    cabinet.zip でないならば、本章は読み飛ばして下さい。

    小説PHP(複数小説対応版)とは、
      ┌────────────────────────────────┐
      │一つの本棚と、その本棚の中に含まれる複数の小説と、              │
      │それら小説の中に含まれる複数の記事(部や章や話など)            │
      └────────────────────────────────┘
    を表示・編集することが出来るPHPスクリプトです。

    本棚の管理を行う場合は、
        1. Webブラウザで小説PHP(複数小説対応版)へアクセス。
        2. 本棚ページが表示されるので、管理ページへのリンクをクリック。
    を行って下さい。

    小説の管理を行う場合は、
        1. Webブラウザで小説PHP(複数小説対応版)へアクセス。
        2. 本棚ページが表示されるので、任意の小説へのリンクをクリック。
        3. 小説ページが表示されるので、管理ページへのリンクをクリック。
    を行って下さい。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  3. 主な特長
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


    ・小説や論文等の階層構造ドキュメントの表示/管理が可。
    ・各記事を階層的に表示可。各記事はWeb上で管理可。
    ・各記事に「前の記事」「次の記事」リンクを自動生成。
    ・全記事を一括表示する「全表示」リンクを自動生成。
    ・スキン(HTMLテンプレート)変更で外観デザイン変更可。
    ・スキンダウンロード可。スキン改造/自作も可。
    ・記事全体のバックアップをWebブラウザで簡単に行える。
    ・小説に限らず論文やマニュアルやFAQ等の構築可。使い道は色々。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  4. 利用規定・動作条件
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


    利用規定

      下記Webサイトの利用規定をお読み下さい。
      http://123.roro.jp/PPPHP/

    動作条件

      あなたが利用しているサーバーが次の条件を満たしている必要があります。
      ・PHPに対応している。
      ・PHPのバージョンが4.1.0以上である。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  5. クイックスタート(簡単な設置手順)
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    1. 準備

       まず、スクリプト一式(zip圧縮ファイル)を解凍して下さい。
       次に、config.php をテキストエディタ等で開いて
       管理パスワード(ADMIN_PASSWORD)を任意の値に変更した後に、
       スクリプトのディレクトリを丸ごとサーバーへアップロードして下さい。

    2. パーミッションの変更

       サーバー上の各ファイルのパーミッションを、
       以下のように設定して下さい。

       ┌───────────────────────┐
       │ まず、全てのディレクトリを 705 にします。    │
       │       全てのファイルを 604 にします。        │
       │                                              │
       │ 次に、lock/ ディレクトリを 707 にします。    │
       │                                              │
       │ 次に、logs/ ディレクトリ直下にある全ての     │
       │ ファイルを 606 にします。                    │
       │                                              │
       │ 次に、logs_off/ ディレクトリ直下にある全ての │
       │ ファイルを 606 にします。                    │
       └───────────────────────┘

       以上の設定が完了したら、Webブラウザからサーバー上の index.php へ
       アクセスして下さい。

       もしここで問題があるようなら、後述の「6.パーミッションの設定」を
       参考にして適切なパーミッション設定を行って下さい。

       以上で設置完了です。必要に応じて以下を行って下さい。

     ・管理ページへのリンクをクリックして管理ページへログインし、
       初期設定(タイトルやスキンの設定など)などを行って下さい。
       いろいろ操作してみて小説PHPの操作に慣れて下さい。

     ・もし、管理パスワード以外のスクリプト初期設定を行う場合は、
       config.php の各設定値を適宜変更した後、サーバーへアップロード
       して下さい。

     ・外観デザインを変える場合は、後述の「8.スキンを変更する方法」を
       参照して下さい。

     ・各ファイルや各フォルダの詳細な説明は「7.配布ファイルの概要」を
       参照して下さい。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  6. パーミッションの設定(例)
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


                              ↓パーミッション設定値(例)
 
    /                         [705]  スクリプトのディレクトリ
    │
    ├─ lib/                 [705]  スクリプトが利用するライブラリ
    │   │
    │   ├─ admskin/        [705]  管理ページのスキン
    │   │     │
    │   │     └─ ***      [604]  直下のファイル全て
    │   │
    │   │
    │   └─ htmltemplate/   [705]  HTMLテンプレートライブラリ
    │          │
    │          └─ ***      [604]  直下のファイル全て
    │
    ├─ lock/                [707]  ロックディレクトリ
    │
    ├─ logs/                [707]  本棚ファイルまたは小説ファイルを格納
    │   │                          (詳細は「7.配布ファイルの概要」参照)
    │   │
    │   └─ ***             [606]  直下のファイル全て
    │
    ├─ logs_off/            [707]  本棚ファイルまたは小説ファイルを格納
    │   │                          (詳細は「7.配布ファイルの概要」参照)
    │   │
    │   └─ ***             [606]  直下のファイル全て
    │
    ├─ skins/               [705]  スキンを格納
    │   │
    │   └─ ***/            [705]  スキン
    │         │
    │         └─ ***       [604]  直下のファイル全て
    │
    ├─ ***.php              [604]  PHPスクリプトファイル全て
    │
    └─ Readme.txt           [604]  このファイル


      末尾に / がついているものはディレクトリです。

      角括弧 [] のパーミッション値はあくまで設定例です。パーミッション値は
      利用しているサーバーによって異なる場合があります。むしろ異なることの
      ほうが多いかもしれません。上記設定で動作しない場合は、とりあえず以下
      のようにしてみて下さい。

          [707]を、[757] にする
          [705]を、[755] にする
          [606]を、[646] にする
          [604]を、[644] にする

      この設定でも動作しない場合は、ご利用のサーバー(プロバイダ)のFAQ等
      を参照下さい。
      尚、パーミッションの設定は本スクリプトを利用する皆様の責任で行って
      下さい。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  7. 配布ファイルの概要
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


    /               スクリプトのルートディレクトリ
    │
    ├─ lib/       スクリプトが利用するライブラリ(削除編集禁止)
    │
    ├─ lock/      ロックディレクトリ(ファイルの排他制御で利用します)
    │              (削除変更禁止)
    │
    ├─ logs/      本棚ファイルまたは小説ファイルを格納するディレクトリ
    │
    ├─ logs_off/  本棚ファイルまたは小説ファイルを格納するディレクトリ
    │
    ├─ skins/     スキンを格納するディレクトリ
    │    │        ・ダウンロードしたスキンはここに格納して下さい。
    │    │        ・使わないスキンは残しておいても削除しても、
    │    │          どちらでも構いません。
    │    │
    │    └─ _default_skin    デフォルトスキン(削除編集禁止)
    │
    ├─ index.php   ブラウザから呼び出すPHPスクリプトのTopページ
    │               (削除禁止)
    │
    ├─ config.php  初期設定を保持するPHPスクリプト(編集可/削除禁止)
    │
    └─ *.php       その他のPHPスクリプト(削除編集禁止)
   

    ※logsフォルダとlogs_offフォルダとは?
      logsフォルダには「サンプル表示用のログファイル」が格納されています。
      logs_offフォルダには「内容無し(サイズゼロ)の初期状態のログファイル」
      が格納されています。小説PHP v3.0をダウンロードして解凍し、そのまま
      サーバー上へアップロードし、Webブラウザでindex.phpへアクセスした
      場合は、「サンプル」が表示されるようになっています。サンプル表示が
      不要になったら、サーバー上のlogsフォルダの名前をlogs_sampleに変更し、
      logs_offフォルダをlogsに変更し、index.phpへアクセスして下さい。
      これで内容無し(記事が一つもない)の小説PHPの初期状態が表示されます。
      この状態からあなたの新しい小説の構築を開始して下さい。
      logs_sampleはそのまま残しておいても構いませんし、削除しても全く問題
      ありません。

    ※HTMLテンプレートクラス(lib/htmltemplate/*)は作者である
      鮎川寛氏に著作権があります。
      有用なソフトウェアをシェアして頂いた同氏に感謝します。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  8. スキンを変更する方法
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


    1. スキン(外観デザインを決定するHTMLテンプレートファイル)を
       変更したい場合は、
       http://123.roro.jp/PPPHP/
       からスキンのダウンロードのページへ移動して、
       お好みのスキンをダウンロードして下さい。

    2. ダウンロードしたスキン(zip圧縮されています)を解凍して、
       スキンのディレクトリを丸ごと ./skins ディレクトリ直下へ
       コピーして下さい。

       例えば、あなたがダウンロードしたスキンが「my_skin」だったとします。
       この場合は、以下のようにコピーします。

        novel/
        │
        └ skins/
           │
           ├ _default_skin/ ← デフォルトスキンは削除変更しないで下さい。
           │
           ├ xxx_skin/ ← 以前に使っていたスキンがある場合は、
           │              削除しても構わないですし、
           │              そのまま放置しておいても構いません。
           │
           └ my_skin/  ← ここに my_skin のディレクトリをコピーします。
                           ディレクトリとファイルのパーミッション設定は
                           _dafault_skin と同じです。
                           詳細は「5. パーミッションの設定」を参考にして
                           下さい。

    3. 管理ページへログインし、初期設定ボタンを押して「スキンの選択 」を
       行って下さい。もしあなたにHTMLタグやCSSの知識があるならば、既存の
       スキンのデザインを変更することも可能です。


┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
┃
┃  9. スキンHTMLファイルの概要
┃
┃     - スキン改造および自作スキンを製作する場合に有用な情報 - 
┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


  スキンHTMLの中にはPHPスクリプトが利用する独特の命令記述があります。
  次の(1)~(4)の四種類の命令記述があります。

  (1) <!--{each H_***--> から <!--{/each}--> まで

      ループ命令です。
      <!--{each H_***--> から <!--{/each}--> までは繰り返し処理されます。


  (2) <!--{def H_***}--> から <!--{/def}--> まで

      条件判断文です。もし、H_*** が定義されて「いれば」、
      <!--{def H_***}--> から <!--{/def}--> までの範囲が有効になります。
      定義されて「いなければ」無効になります。


  (3) <!--{ndef H_***}--> から <!--{/def}--> まで

      条件判断文です。もし、H_*** が定義されて「いなければ」、
      <!--{ndef H_***}--> から <!--{/def}--> までの範囲が有効になります。
      定義されて「いれば」無効になります。


  (4) {rval H_***}

      値です。H_*** は変数です。
      この変数 H_*** の部分に必要なデータが注入されます。

  小説PHPにおけるスキンHTMLの命令記述や変数の構成を以下に記します。
  (詳細は、スキンHTMLファイルをテキストエディタで開いて確認して下さい)

#---------------------------------------------------------------------
# ↓共通の変数
#---------------------------------------------------------------------

{rval HC_BaseURL}       # スキン基準URL(常にdef)
{rval HC_AdminURL}      # 管理ページへのURL(常にdef)
{rval HC_ThisPageURL}   # 表示中のページのURL(常にdef)
{rval HB_BodyAllURL}    # 項目の全件表示のURL(小説の目次表示ページでのみdef)
{rval HC_ReturnURL}     # 上位コンテンツに戻るためのURL(常にdef)
                        # (小説の記事本文の表示のときは小説目次へのURL)
{rval HC_IndexURL}      # 小説目次表示ページの初期画面に戻るURL(常にdef)
                        # (SKIN_TYPEが1または2のときの
                        #  小説目次表示ページにおいて使用する)
{rval HC_Title}         # 小説のタイトル(常にdef)
{rval HC_Comment1}      # 小説のコメント1(未入力ならndef)
{rval HC_Comment2}      # 小説のコメント2(未入力ならndef)
{rval HC_IsCabinet}     # 未使用(ndef固定)
{rval HC_PageCSS}       # 本文表示ページの追加CSS(未入力ならndef)
{rval HC_AllPagesCSS}   # ページ全体の追加CSS(未入力ならndef)
{rval HC_ChangeCssFile} # 任意の外部CSSファイル指定があればdef(無ければndef)

#---------------------------------------------------------------------
# ↓小説の目次を表示するページの命令記述
#---------------------------------------------------------------------

<!--{def HM_MenuEnable}--> # 目次表示がある場合はdef(否ならndef)
| 
|   <!--{each HM_Menu}-->  # 目次列挙の最上位ループ
|   | 
|   |   <!--{each HM_Menu/M4}-->  # 目次階層Lv4ループ
|   |   | 
|   |   |   {rval HM_Menu/M4/HB_Title}    # 項目のタイトル(常にdef)
|   |   |   {rval HM_Menu/M4/HB_BodyURL}  # 項目へのリンクURL(非リンクONならndef)
|   |   |   {rval HM_Menu/M4/HB_Date}     # 項目の日付チェックOFF、
|   |   |                                 # または未入力ならndef)
|   |   |   {rval HM_Menu/M4/HB_Comment1} # 項目のコメント1(チェックOFF、
|   |   |                                 # または未入力ならndef)
|   |   |   {rval HM_Menu/M4/HB_Comment2} # 項目のコメント2(チェックOFF、
|   |   |                                 # または未入力ならndef)
|   |   |   {rval HM_Menu/M4/HB_Latest}   # 項目が新着ならdef(チェックOFFならndef)
|   |   |   {rval HM_Menu/M4/HB_Here}     # この項目の本文が現在表示中ならdef(否ならndef)
|   |   |                                 # (SKIN_TYPE=2のときのみ有効)
|   |   | 
|   |   |   <!--{each HM_Menu/M4/M3}-->  # 目次階層Lv3ループ
|   |   |   | 
|   |   |   |   |   {rval HM_Menu/M4/M3/HB_Title}
|   |   |   |   |   {rval HM_Menu/M4/M3/HB_BodyURL}
|   |   |   |   |   {rval HM_Menu/M4/M3/HB_Date}
|   |   |   |   |   {rval HM_Menu/M4/M3/HB_Comment1}
|   |   |   |   |   {rval HM_Menu/M4/M3/HB_Comment2}
|   |   |   |   |   {rval HM_Menu/M4/M3/HB_Latest}
|   |   |   |   |   {rval HM_Menu/M4/M3/HB_Here}
|   |   |   | 
|   |   |   |   <!--{each HM_Menu/M4/M3/M2}--> # 目次階層Lv2ループ
|   |   |   |   | 
|   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/HB_Title}
|   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/HB_BodyURL}
|   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/HB_Date}
|   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/HB_Comment1}
|   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/HB_Comment2}
|   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/HB_Latest}
|   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/HB_Here}
|   |   |   |   | 
|   |   |   |   |   <!--{each HM_Menu/M4/M3/M2/M1}--> # 目次階層Lv1ループ
|   |   |   |   |   | 
|   |   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/M1/HB_Title}
|   |   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/M1/HB_BodyURL}
|   |   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/M1/HB_Date}
|   |   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/M1/HB_Comment1}
|   |   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/M1/HB_Comment2}
|   |   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/M1/HB_Latest}
|   |   |   |   |   |   |   {rval HM_Menu/M4/M3/M2/M1/HB_Here}
|   |   |   |   |   | 
|   |   |   |   |   <!--{/each}--> # 階層Lv1ループの閉じ
|   |   |   |   | 
|   |   |   |   <!--{/each}--> # 階層Lv2ループの閉じ
|   |   |   | 
|   |   |   <!--{/each}--> # 階層Lv3ループの閉じ
|   |   | 
|   |   <!--{/each}--> # 階層Lv4ループの閉じ
|   | 
|   <!--{/each}--> # 最上位ループの閉じ
| 
<!--{/def}-->

#---------------------------------------------------------------------
# ↓小説の記事本文を表示するページの命令記述
#---------------------------------------------------------------------

<!--{def HB_BodyEnable}--> # 本文表示がある場合はdef(否ならndef)
| 
|   #-----------------------------------------------------------------
|   # ↓1件表示の場合
|   #-----------------------------------------------------------------
| 
|   <!--{ndef HB_ShowAll}--> # 1件表示ならndef(全件表示ならdef)
|   | 
|   |   {rval HB_M4Title}  # 項目の親に階層Lv4があるならdef(否ならndef)
|   |   {rval HB_M3Title}  # 項目の親に階層Lv3があるならdef(否ならndef)
|   |   {rval HB_M2Title}  # 項目の親に階層Lv2があるならdef(否ならndef)
|   |   {rval HB_M1Title}  # 項目のタイトル(階層表示用)
|   |   {rval HB_Title}    # 項目のタイトル(常にdef)
|   |   {rval HB_Date}     # 項目の日付(未入力ならndef)
|   |   {rval HB_Latest}   # 項目が新着ならdef(否ならndef)
|   |   {rval HB_Comment1} # 項目のコメント1(未入力ならndef)
|   |   {rval HB_Comment2} # 項目のコメント2(未入力ならndef)
|   |   {rval HB_Text}     # 項目の本文(未入力ならndef)
|   |   {rval HB_NextURL}  # 次の項目のURL(次の項目が無ければndef)
|   |   {rval HB_PrevURL}  # 前の項目のURL(前の項目が無ければndef)
|   | 
|   <!--{/def}-->
| 
|   #-----------------------------------------------------------------
|   # ↓全件表示の場合
|   #-----------------------------------------------------------------
| 
|   <!--{def HB_ShowAll}-->  # 全件表示ならdef(1件表示ならndef)
|   | 
|   |   <!--{each HB_All}--> # 全件表示ループ
|   |   | 
|   |   |   {rval HB_All/HB_M4Title}
|   |   |   {rval HB_All/HB_M3Title}
|   |   |   {rval HB_All/HB_M2Title}
|   |   |   {rval HB_All/HB_M1Title}
|   |   |   {rval HB_All/HB_Title}
|   |   |   {rval HB_All/HB_Date}
|   |   |   {rval HB_All/HB_Latest}
|   |   |   {rval HB_All/HB_Comment1}
|   |   |   {rval HB_All/HB_Comment2}
|   |   |   {rval HB_All/HB_Text}
|   |   | 
|   |   <!--{/each}-->
|   | 
|   <!--{/def}-->
| 
<!--{/def}-->

#---------------------------------------------------------------------
# ↓フレーム表示のインデックスファイルに記述する変数
#   (SKIN_TYPE=1のときのみ有効)
#---------------------------------------------------------------------

{rval HC_FrameMenuFile}   # 目次を処理するPHPスクリプトURL(フレームならdef)
{rval HC_FrameBlankFile}  # ブランク(空白)HTML(フレームならdef)

#---------------------------------------------------------------------
# ↓そのほか共通の変数
#---------------------------------------------------------------------

{rval HC_Icon}        # piyopiyoPHPへのリンク - 画像(小) (常にdef)
{rval HC_IconRev}     # piyopiyoPHPへのリンク - 画像(小/反転) (常にdef)
{rval HC_IconBig}     # piyopiyoPHPへのリンク - 画像(大) (常にdef)
{rval HC_IconBigRev}  # piyopiyoPHPへのリンク - 画像(大/反転) (常にdef)
{rval HC_IconMono}    # piyopiyoPHPへのリンク - 画像(小/モノクロ) (常にdef)
{rval HC_IconMonoBig} # piyopiyoPHPへのリンク - 画像(大/モノクロ) (常にdef)
{rval HC_IconText}    # piyopiyoPHPへのリンク - テキスト(常にdef)

以上です。