●Html Template Framework環境設定マニュアル
|
1.0 はじめに
-
2.0 htf環境設定xmlファイル(htfconf.xml)の設定
-
2.1 設定の目的
2.2 XML宣言
2.3 文書型宣言(DTD)
2.4 要素(element)
2.5 htfライブラリでの取り扱い
2.6 htfconf.xml設定サンプル
-
3.0 CSSパス定義xmlファイル(cssdef.xml)の設定
-
3.1 設定の目的
3.2 XML宣言
3.3 文書型宣言(DTD)
3.4 要素(element)
3.5 htfライブラリでの取り扱い
3.6 cssdef.xml設定サンプル
|
1.0 はじめに
|
このドキュメントは、Html Template Frameworkの環境設定について記述されたものです。
HTFを入手、インストールし、これから環境設定を実行する方を対象としています。
|
2.0 htf環境設定xmlファイル(htfconf.xml)の設定
|
ここでは、htf環境設定xmlファイルの設定について記述します。
|
2.1 設定の目的
|
htfは、サイト内で共通的にもつべき情報を管理できるように設計されています。
それらの値を設定することにより、サイト内での振舞いを共通化することができます。
htfconf.xmlの設定では、そのような情報を設定していきます。
|
2.2 XML宣言
|
htfconf.xmlファイルのXML宣言は以下のように記述して下さい。
<?xml version="1.0" encoding="utf-8" ?>
また、htfconf.xmlはこの宣言どおり、必ずUTF-8で記述して下さい。
|
2.3 文書型宣言(DTD)
|
htf環境設定を定義するxmlファイル(通常はhtfconf.xml)の文書型は以下のURLに存在します。
htf環境設定ファイルDTD
http://www.as-prj.com/dtd/htfconf.dtd
htf環境設定ファイルを作成する場合には、文書型宣言を以下のように宣言して下さい。
<!DOCTYPE htfconf PUBLIC "-//htf//DTD htfconf//EN" "http://www.as-prj.com/dtd/htfconf.dtd">
|
2.4 要素(element)
|
ここでは、htf環境設定ファイルを構成する要素(xmlファイルのエレメント)について記述します。
|
2.4.1 ルート要素
|
ルート要素は<htfconf>として下さい。設定可能な属性はありません。
子要素として、<itemcase>,<internal_encoding>,<imagepath>,<csspath>,<jspath>,<rootpath>
要素をそれぞれ1ノード保持できます。
|
2.4.2 itemcase要素
|
HTFで出力するHTMLタグ要素・属性名の出力方法を指定します。設定可能な属性は以下です。
element属性
|
|
設定値
|
upper:大文字でHTMLタグ要素を出力します。
lower:小文字でHTMLタグ要素を出力します。
ignore:記述したとおりにタグ要素を出力します。
|
|
説明
|
HTFで出力するHTML要素の出力方法を指定します。
※ただし、自分で作成したincludeファイル等は対象としていません。
|
|
使用例
|
<itemcase element="lower"/>
|
attribute属性
|
|
設定値
|
upper:大文字で属性名を出力します。
lower:小文字で属性名を出力します。
ignore:記述したとおりにタグ要素を出力します。
|
|
説明
|
HTFで出力するHTML要素の属性名の出力方法を指定します。
※ただし、自分で作成したincludeファイル等は対象としていません。
|
|
使用例
|
<itemcase attribute="lower"/>
|
|
2.4.3 internal_encoding要素
|
PHPの内部エンコードの判定方法とコードについて定義します。設定可能な属性は以下です。
distinct属性
|
|
設定値
|
on:PHP内部エンコード方式を自動判別します。
off:PHP内部エンコード方式をencode属性で指定します。
|
|
説明
|
PHPの内部エンコードを自動判別するかどうかを指定します。
onにした場合には、HTFがPHPの内部エンコードを自動判別して動作します。
offにした場合には、PHPの内部エンコードをencode属性で指定する必要があります。
この属性値がoffで、encode属性で指定されていない場合にはHTFは内部エンコードの自動判別を行います。
|
|
使用例
|
<internal_encoding distinct="on"/>
|
encode属性
|
|
設定値
|
UTF-8:HTFはPHPの内部エンコードをUTF-8として動作します。
EUC-JP:HTFはPHPの内部エンコードをEUC-JPとして動作します。
|
|
説明
|
PHPの内部エンコードを指定します。この設定値はinternal_encoding要素の
distinct属性がoffの場合に有効になります。
有効となる場合には、HTFはencode属性の指定値をPHPの内部エンコード
とみなして動作します。
|
|
使用例
|
<internal_encoding distinct="off" encode="EUC-JP"/>
|
|
2.4.4 imagepath要素
|
HTF設定単位で管理するイメージ保有パスを定義します。
path属性
|
|
設定値
|
設定パスを絶対パスで定義します。
|
|
説明
|
HTFでは各種リソースを保有するWeb公開パスを管理できます。。
このパスを定義すると、パスを定義するHTFフレームのプロパティや
自作PHPプログラム内で置換タグと置換関数を使用して定義パスを適用することができます。
|
|
使用例
|
<imagepath path="/images/"/>
|
|
2.4.5 csspath要素
|
HTF設定単位で管理するCSSファイル保有パスを定義します。
path属性
|
|
設定値
|
設定パスを絶対パスで定義します。
|
|
説明
|
HTFでは各種リソースを保有するWeb公開パスを管理できます。。
このパスを定義すると、パスを定義するHTFフレームのプロパティや
CSS定義xmlファイル(cssdef.xml)、自作PHPプログラム内で置換タグと置換関数を使用して定義パスを適用することができます。
|
|
使用例
|
<csspath path="/css/"/>
|
|
2.4.6 jspath要素
|
HTF設定単位で管理するJavaScriptファイル保有パスを定義します。
path属性
|
|
設定値
|
設定パスを絶対パスで定義します。
|
|
説明
|
HTFでは各種リソースを保有するWeb公開パスを管理できます。。
このパスを定義すると、パスを定義するHTFフレームのプロパティや自作PHPプログラム内で置換タグと置換関数を使用して定義パスを適用することができます。
|
|
使用例
|
<jspath path="/js/"/>
|
|
2.4.7 rootpath要素
|
HTF設定単位で管理するドキュメントルートパスを定義します。
path属性
|
|
設定値
|
設定パスを絶対パスで定義します。
|
|
説明
|
HTFではHTF設定単位でドキュメントルートパスを管理できます。。
このパスを定義すると、パスを定義するHTFフレームのプロパティや自作PHPプログラム内で置換タグと置換関数を使用して定義パスを適用することができます。
|
|
使用例
|
<rootpath path="/software/htf/"/>
|
|
2.5 htfライブラリでの取り扱い
|
htf環境設定ファイルでの設定内容は、htf上では以下のように取り扱います。
|
2.5.1 保持クラス
|
htf_com_confクラスにより、情報が保持されます。
|
2.5.2 インスタンス
|
htf_com_initialize.incをインクルードする際に、$comconfとしてインスタンスを生成されます。
|
2.5.3 htfconf.xmlのサーチ
|
htf_com_confクラス生成時に、htfconf.xmlファイルを以下の順序でサーチし、適用します。
(1)実行元のPHPファイルが存在するディレクトリ(実行ディレクトリ)
(2)(1)の実行ディレクトリの上位ディレクトリ(Webサーバのドキュメントルートまで)
(3)インクルードパス(記述順)
上記サーチでファイルが見つからない場合、インスタンスは初期値で生成されます。
|
2.5.4 置換タグ
|
htf環境設定ファイルでのパス設定値は、PHPプログラム内で置換タグによる置換が可能です。
(htf_replace_definetag関数コールにより実現します。)
HTFフレーム設定値としても置換タグの記述が可能なプロパティがあります。
置換タグは以下のように記述します。
imagepath要素の記述パス→%HTF_IMAGEPATH%
csspath要素の記述パス→%HTF_CSSPATH%
jspath要素の記述パス→%HTF_JSPATH%
rootpath要素の記述パス→%HTF_ROOTPATH%
|
2.6 htfconf.xml設定サンプル
|
htfconf.xml記述サンプルを以下に記述します。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE htfconf PUBLIC "-//htf//DTD htfconf//EN" "http://www.as-prj.com/dtd/htfconf.dtd">
<htfconf>
<itemcase element="lower" attribute="lower"/> ←タグ要素・属性値は小文字出力
<internal_encoding distinct="on"/> ←内部エンコードをHTFが判別する
<imagepath path="/images/" /> ←イメージ保有パスは/images/
<csspath path="/css/" /> ←CSSファイル保有パスは/css/
<jspath path="/js/" /> ←JavaScriptファイル保有パスは/js/
<rootpath path="/software/" /> ←管理ルートパスは/software/
</htfconf>
|
3.0 CSSパス定義ファイル(cssdef.xml)の設定
|
ここでは、CSSパス定義xmlファイルの設定について記述します。
|
3.1 設定の目的
|
htfでは、標準で読み込むCSSファイルを指定するよう設計されています。
また、そのCSSファイルはブラウザやOSの種類によって変更可能です。
CSSパス定義xmlでは、htf標準で適用するCSSの情報を定義します。
htf環境設定xmlファイルで定義するcsspath要素の内容を適用する
(置換タグを記述する)ことも可能です。
|
3.2 XML宣言
|
htfconf.xmlファイルのXML宣言は以下のように記述して下さい。
<?xml version="1.0" encoding="utf-8" ?>
また、cssdef.xmlはこの宣言どおり、必ずUTF-8で記述して下さい。
|
3.3 文書型宣言(DTD)
|
CSSパス定義を定義するxmlファイル(通常はcssdef.xml)の文書型は以下のURLに存在します。
CSSパス定義ファイルDTD
http://www.as-prj.com/dtd/cssdef.dtd
CSSパス定義ファイルを作成する場合には、文書型宣言を以下のように宣言して下さい。
<!DOCTYPE htfconf PUBLIC "-//htf//DTD htfconf//EN" "http://www.as-prj.com/dtd/cssdef.dtd">
|
3.4 要素(element)
|
ここでは、CSSパス定義ファイルを構成する要素(xmlファイルのエレメント)について記述します。
|
3.4.1 ルート要素
|
ルート要素は<cssrec>として下さい。設定可能な属性はありません。
子要素として、<itemcase>,要素を複数ノード保持できます。
|
3.4.2 itemcss要素
|
OSとブラウザの組み合わせと、それに合致するCSSファイルパスを定義します。
os属性
|
|
設定値
|
Windows:Windows
Macintosh:マッキントッシュ
Others:その他
|
|
説明
|
CSS適用時に判別するOSを指定します。
Windows、Macintosh等が指定可能です。
判別を指定しない場合や、他のOSに適用するデータにはOthersを指定します。
|
|
使用例
|
<itemcss os="Windows" browser="MSIE" fname="%HTF_CSSPATH%win_ie.css"/>
|
browser属性
|
|
設定値
|
MSIE:Microsoft Internet Explorer
Netscape:NetscapeNavigater
FireFox:FireFox
Others:その他
|
|
説明
|
CSS適用時に判別するブラウザを指定します。
MSIE、Netscape、Firefox等が指定可能です。
判別を指定しない場合や、他のブラウザに適用するデータにはOthersを指定します。
|
|
使用例
|
<itemcss os="Windows" browser="MSIE" fname="%HTF_CSSPATH%win_ie.css"/>
|
fname属性
|
|
設定値
|
指定の組み合わせに対して適用するCSSファイルを絶対パスで指定します。
|
|
説明
|
OS/ブラウザの組み合わせに対して適用するCSSファイルパスを定義します。
置換タグ(%HTF_CSSPATH%)を指定することにより、htf環境設定で指定した
CSSパスを定義することが可能です。
|
|
使用例
|
<itemcss os="Windows" browser="MSIE" fname="%HTF_CSSPATH%win_ie.css"/>
|
|
3.5 htfライブラリでの取り扱い
|
CSSパス定義ファイルでの設定内容は、htf上では以下のように取り扱います。
|
3.5.1 保持クラス
|
htf_frm_getcssクラスにより、情報が保持されます。
|
3.5.2 インスタンス
|
htfがタグ出力を行う際に、htfが標準で使用するCSSを選択する際に使用されます。
htfフレーム内部では、恒常的にCSSパス定義のインスタンスを保持しません。
|
3.5.3 cssdef.xmlのサーチ
|
htf_frm_getcssクラス生成時に、cssdef.xmlファイルを以下の順序でサーチし、適用します。
(1)実行元のPHPファイルが存在するディレクトリ(実行ディレクトリ)
(2)(1)の実行ディレクトリの上位ディレクトリ(Webサーバのドキュメントルートまで)
(3)インクルードパス(記述順)
上記サーチでファイルが見つからない場合、htfが読み込むCSSファイルは決定されず、
htf標準で適用するCSSファイルは読み込まれません。
|
3.5.4 OS/ブラウザ判別
|
OS/ブラウザの組み合わせによる適用CSSの判別は、htf_frm_frameconfigクラスの
browser_distinct_cssプロパティ設定値(on/off)で決定されます。
onの場合には、リクエストに対してブラウザ・OSの判別を行い、
指定の組み合わせに該当するCSSファイルを適用します。
offの場合には、OS/browser両方にOthersが指定されている定義に該当する
CSSファイルを適用します。
|
3.5.5 置換タグの適用
|
cssdef.xmlのfname属性値には、htfの置換タグが記述できます。
|
3.6 cssdef.xml設定サンプル
|
cssdef.xml記述サンプルを以下に記述します。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE cssrec PUBLIC "-//htf//DTD cssdef//EN" "http://www.as-prj.com/dtd/cssdef.dtd">
<cssrec>
<itemcss os="Macintosh"
browser="MSIE"
fname="%HTF_CSSPATH%mac_ie.css"/> ←Mac/MSIEの場合、mac_ie.cssを適用
<itemcss os="Macintosh"
browser="Netscape"
fname="%HTF_CSSPATH%mac_nn.css"/> ←Mac/Netscapeの場合、mac_nn.cssを適用
<itemcss os="Windows"
browser="MSIE"
fname="%HTF_CSSPATH%win_ie.css"/> ←Win/MSIEの場合、win_ie.cssを適用
<itemcss os="Windows"
browser="Netscape"
fname="%HTF_CSSPATH%win_nn6.css"/> ←Win/Netscapeの場合、win_nn6.cssを適用
<itemcss os="Windows"
browser="Firefox"
fname="%HTF_CSSPATH%win_ff.css"/> ←Win/FireFoxの場合、win_ff.cssを適用
<!-- use default -->
<itemcss os="Others"
browser="Others"
fname="%HTF_CSSPATH%other.css"/> ←デフォルトの場合、other.cssを適用
</cssrec>
|