スキンの作り方
スキンの作成手順
スキンを作ると言っても難しく考える必要はありません。
通常のホームページを作るぐらいの軽い気持ちで進めてみてください。
これらの作業にはエディタもしくはメモ帳を使い、作成していきます。
- タイトルや背景などを決めて、それらを記述します。
管理画面、検索画面にも使用される共通部の記述です。 - 画面最上部のタイトル部(表題)を記述します。
見出しやメッセージNo、注意書きなどです。 - スレッドの表示部を作成します。
このとき、簡易コマンドを使用すると簡単です。 - レスの表示部を作成します。
ここも、簡易コマンドを使用しましょう。 - スレッドの終了部を作成します。
- 全スレッドの終了部を作成します。
- 入力フォームを記述します。
ここも、入力フォームの項目名や簡易コマンドを使用すると簡単です。 - 画面最下部の共通部を記述します。
著作権の表示もお願いします。 - そのページのHTMLを開き、後述の区切りマークを適切な位置に挿入していきます。
以上の手順でスキンが作れます。
これらは、実際のサンプルスキンを見られたほうが理解しやすいと思います。
また、あなたがスキンをはじめて作られるのなら、【初めてのスキン作り】も参照してください。
スキンの構成
このスキンボードのスキンは、大きく6つの部分に分かれます。
区切りマークはその部分が始まる最初に記述します。
記述内容がない場合は省略できます。
区切りマークの前後にタグは絶対に記述しないで下さい。
ブラウザのバージョンによっては正常に動作しない場合があります。
区分 | 区切りマーク | 説 明 |
---|---|---|
base | <!–skin board skin–> | どの画面にも使用する共通部を指定します。 主にHEAD句とBODY句の一部を記述します。 画面最上部に必ず表示したいものを記述します。 管理画面、検索画面などにも使用されます。 |
head | <!–head–> | BBSの画面最上部に表示される共通部を指定します。 管理画面、検索画面などには表示されません。 |
form | <!–form–> | 入力フォームを指定します。 新規入力、レス入力などに使用されます。 |
main | <!–main–> | スレッドの表示部を指定します。 スレッド内で最初に一度だけ表示されます。 |
msub | <!–msub–> | レスの表示部を指定します。 レスがあるたび表示されます。 |
mend | <!–mend–> | スレッドの終了部を指定します。 スレッドが終了したとき表示されます。 |
foot | <!–foot–> | 全スレッドの終了部を指定します。 全スレッドが終了したとき一度だけ表示されます。 |
tail | <!–tail–> | どの画面にも使用する共通部を指定します。 主に画面の最下部やBODY句の終了などを記述します。 |
区切りマークの記述サンプル
通常、以下のどちらかの記述方法を取ります。
どちらで記述しても動作は同じですが、フォームを下に記述した方が、ミスが少なくわかりやすい記述になります。
入力フォームを下に記述 | 入力フォームを上に記述 |
---|---|
<!–skin board skin–> (区切りマーク) <html> <head> 〜 </head> <body> (全画面共通部)
<!–head–> (区切りマーク) <!–main–> (区切りマーク) <!–msub–> (区切りマーク) <!–mend–> (区切りマーク) <!–foot–> (区切りマーク) <!–form–> (区切りマーク) <!–tail–> (区切りマーク) |
<!–skin board skin–> (区切りマーク) <html> <head> 〜 </head> <body> (全画面共通部)
<!–head–> (区切りマーク) <!–form–> (区切りマーク) <!–main–> (区切りマーク) <!–msub–> (区切りマーク) <!–mend–> (区切りマーク) <!–foot–> (区切りマーク) <!–tail–> (区切りマーク) |
入力フォームの項目名
スキンの入力フォームで使用できる名前は、現在以下に記述するものだけです。
記述例は簡易コマンドも参照してください。
フリー版 | name | 記述例 | 説 明 |
---|---|---|---|
msgno | no.#msgno# | 親メッセージのメッセージno。 | |
resno | レスno.#resno# | 子メッセージのメッセージno。 | |
date | date:#date# | 投稿メッセージの日時。 | |
subj | <input size=”60″ type=”text” name=”subj” value=”#subj#”> |
投稿メッセージのタイトル。 | |
comment | <textarea rows=”7″ cols=”60″ name=”comment”> #comment#</textarea> |
投稿メッセージのコメント。 | |
name | <input size=”20″ type=”text” name=”name” value=”#name#”> |
投稿者の名前。 | |
url | <input size=”80″ type=”text”name=”url” value=”#url#”> |
投稿者のurl(ホームページアドレス)など。 | |
<input size=”40″ type=”text” name=”email” value=”#email#”> |
投稿者のe-mailアドレスなど。 | ||
banner | <input size=”80″ type=”text” name=”banner” value=”#banner#”> |
画像のurl(アドレス)。 | |
tcolor | (簡易コマンド参照) | テキストの文字色。 | |
icon | (簡易コマンド参照) | アイコン(画像)のurl(アドレス)。 | |
pwd | <input size=”10″ type=”password” name=”pwd” maxlength=”8″ value=”#pwd#”> |
パスワード(入力キー、訂正キー)など。 | |
brow | <a href=”#brow#”>ブラウザ</a> | 投稿者のos及びブラウザ名。 | |
× | rmhost | ホスト名:#rmhost# | リモートホスト名。 |
addr | ipアドレス:#addr# | ipアドレス(リモートip)など。 | |
cfgnam | <input type=”hidden” name=”cfgnam” value=”#cfgnam#”> |
スキンボードの環境ファイル名(フリー版では未使用) 将来的な拡張のために記述して置いてください。 |
|
sknnam | <input type=”hidden” name=”sknnam” value=”#sknnam#”> |
スキンボードが使用するスキンのファイル名 | |
act (actionの略) |
<input type=”hidden” name=”act” value=”#act#”> |
スキンボードの実行処理 (act=newinp 新規入力のフォーム表示) (act=newexe 新規入力記事の記録) (act=resinp レス入力のフォーム表示) (act=resexe レス入力記事の記録) (act=delinp 記事削除のフォーム表示) (act=delexe 指定記事の削除) (act=mntdsp 管理画面の入室チェック&表示) (act=repcnt bbsカウンタの変更) (act=msgdel 指定した記事no以前の記事を削除) (act=alldel すべての記事を削除しカウンタを0に) (act=oldclr 指定した過去ログをクリア) |
|
count | <input type=”hidden” name=”count” value=”#count#”> |
投稿内容の記事no | |
parent | <input type=”hidden” name=”parent” value=”#parent#”> |
投稿内容の親記事no | |
child | <input type=”hidden” name=”child” value=”#child#”> |
記事noを指定して表示する際などの指定記事no |
簡易コマンド
スキンを作る際に、定型的な記述を簡易コマンドで記述することができます。
略式コマンドは、cgiが解析を行い、最も適切なhtmlを自動的に記述してくれます。
このコマンドを使いますと、ミスが少なくなりますし、バージョンアップのときも移行がスムーズに行えます。
このコマンドを使用せずに、htmlで直接記述するという方法もあります。
フリー版 | コマンド名 | 記述例 | 説 明 |
---|---|---|---|
#zcount# | no.#zcount# | スキンボードのゼロ埋めされた6桁のメッセージカウンタ。 | |
#count# | no.#count# | スキンボードのゼロ埋めされないメッセージカウンタ。 | |
#msgno# | no.#msgno# | 親メッセージのメッセージno。 | |
#resno# | レスno.#resno# | 子メッセージのメッセージno。 | |
#date# | date:#date# | 投稿メッセージの日時。 | |
#title# | 【#title#】 | 掲示板の名前(表題)。 | |
#subj# | タイトル:#subj# | 投稿メッセージのタイトル。 | |
#comment# | コメント:#comment# | 投稿メッセージのコメント。 | |
#name# | お名前:#name# | 投稿者の名前。 | |
#url# | <a href=”#url#”>home</a> | 投稿者のurl(ホームページアドレス)など。 | |
#email# | <a href=”mailto:#email#”>email</a> | 投稿者のe-mailアドレスなど。 | |
#banner# | <img src=”#banner#”> | 画像のurl(アドレス)。 | |
#tcolor# | <font color=”##tcolor#”> #comment#</font> |
テキストの文字色。 | |
#tcck??????# | <input type=”radio” name=”tcolor” value=”#tcck0000ff#”> |
ラジオボタンでテキストの文字色を指定するとき使用する。 #tcck に続く文字を記録する。 |
|
#tcsl??????# | <option value=”#tcsl0000ff#”> 青色</option> |
セレクトボタンでテキストの文字色を指定するとき使用する。 #tcsl に続く文字を記録する。 |
|
#icon# | <img src=”#icon#.gif”> | アイコン(画像)のurl(アドレス)。 | |
#icck??????# | <input type=”radio” name=”icon” value=”#icckicon01#”> |
ラジオボタンでアイコン(画像)を指定するとき使用する。 #icck に続く文字を記録する。 |
|
#icsl??????# | <option value=”#icsl001#”> アイコン1</option> |
セレクトボタンでアイコン(画像)を指定するとき使用する。 #icsl に続く文字を記録する。 |
|
#pwd# | <input size=”10″ type=”password” name=”pwd” maxlength=”8″ value=”#pwd#”> |
パスワード(入力キー、訂正キー)など。 | |
#brow# | <a href=”#brow#”>ブラウザ</a> | 投稿者のos及びブラウザ名。 | |
× | #rmhost# | ホスト名:#rmhost# | リモートホスト名。 |
#addr# | ipアドレス:#addr# | ipアドレス(リモートip)など。 | |
× | #homico# | <img src=”#homico#”> | 家アイコン(画像)のurl(アドレス)。 |
#act# | <input type=”hidden” name=”act” value=”#act#”> |
スキンボードの実行処理。 | |
#olddsp# | 過去ログ:#olddsp# | 過去ログの一覧表を自動作成。(セレクトボタン形式) | |
#oldjmp# | 過去ログジャンプ:#oldjmp# | 過去ログの一覧表を自動作成。(セレクトボタン形式) クリックにて自動ジャンプ。 |
|
#newlog# | <a href=”#newlog#”>新ログ</a> | 1つ新しい過去ログへジャンプ。 | |
#oldlog# | <a href=”#oldlog#”>旧ログ</a> | 1つ古い過去ログへジャンプ。 | |
#msgdsp# | <a href=”#msgdsp#&logext=#logext#”> 最初</a> |
そのログの最初のページへジャンプ。 後述の#msgdsp#の応用。 |
|
#newpag# | <a href=”#newpag#”>前頁</a> | そのログの1つ新しいページへジャンプ。 | |
#oldpag# | <a href=”#oldpag#”>次頁</a> | そのログの1つ古いページへジャンプ。 | |
#topadr# | <a href=”#topadr#”>戻る</a> | 指定したページへ自動ジャンプ。 | |
#msgdsp# | <a href=”#msgdsp#”>全表示</a> | 投稿メッセージを通常表示します。 | |
× | #newinp# | <a href=”#newinp#”>新規入力</a> | 新規メッセージの入力フォーム画面を表示します。 新規入力フォームが別画面の場合に記述します。 |
#resinp# | <a href=”#resinp#”>レス</a> | レスメッセージの入力フォーム画面を表示します。 | |
× | #repinp# | <a href=”#repinp#”>訂正</a> | 投稿メッセージの訂正画面を表示します。 |
#delinp# | <a href=”#delinp#”>削除</a> | 投稿メッセージの削除画面を表示します。 | |
× | #srcinp# | <a href=”#srcinp#”>検索</a> | 投稿メッセージの検索画面を表示します。 |
× | #mntchk# | <a href=”#mntchk#”>管理画面</a> | パスワードの入力画面を表示します。 管理画面表示のためのパスワードチェック画面を表示します。 |
#sbment# | <a href=”#sbment#”>管理画面</a> | 管理画面のurl(アドレス)。 | |
× | #sbhelp# | <a href=”#sbhelp#”>ヘルプ</a> | ヘルプ画面のurl(アドレス)。 |
× | #order# | <input size=”60″ type=”text” name=”order” value=””> |
検索項目を指定する。 |
× | #sort# | 並べ替え:#sort# | 並べ替え項目を指定する。 |
× | #stck??????# | <input type=”radio” name=”sort” value=”#stckname#”> |
ラジオボタンで並べ替えを指定するとき使用する。 #stck に続く文字を記録する。 |
× | #stsl??????# | <option value=”#stslname#”> お名前</option> |
セレクトボタンで並べ替えを指定するとき使用する。 #stsl に続く文字を記録する。 |
× | #accdir# | <a href=”#accdir#/allcnt.cnt”> | 総合カウンタ、総合アクセスログを保存するのディレクトリ名。 |
× | #bbsdir# | <a href=”#bbsdir#/sknbrd.log”> | スキンボードのカウンタやメッセージログを保存するディレクトリ名。 |
× | #cgidir# | <a href=”#cgidir#/sknbrdf.cgi”> | スキンボードなどがあるcgi用ディレクトリ名。 |
× | #skndir# | <a href=”#skndir#/sknbrdf.htm”> | スキンを保存しているディレクトリ名。 |
× | #imgdir# | <img src=”#imgdir#/homeicon.gif”> | 画像を保存しているディレクトリ名。 |
× | #cginam# | <a href=”#cginam#”> | 呼出し元cgi(スキンボードのcgi名)。 |
× | #cfgnam# | <a href=”./sknbrdf.cgi?cfgnam=#cfgnam#”> | スキンボードの環境ファイル名。 |
× | #lognam# | <a href=”./sknbrdf.cgi?lognam=#lognam#”> | スキンボードで使用するメッセージログ名。 |