ハートショップ

自動タグ変換スクリプト(AutoTag Maker) 解説


特徴
「自動タグ変換スクリプト」は、あらかじめ指定したキー(コマンド)を自動的にタグに変換するスクリプトです。
メニューやヘッダー、フッターなど、全ページ共通部分をフレームを使用すること無しに一括して修正、変更する場合に便利です。

ダウンロード
スクリプトファイルはZIP形式で圧縮されています。ダウンロード後、解凍ツールで解凍してください。


ファイル設定
  • スクリプトファイル(autotag.cgi) をエディタで開き、以下を修正します。

    #!/usr/local/bin/perl
    プロバイダによって定められたPerlへのパスを指定します。

    # スクリプトファイル
    $script = 'autotag.cgi';
    ※特に変更は必要ありません。

    # 変換元、変換後ファイル拡張子(コンマ区切りで複数指定可能)
    $ext = ('ht2'=>'html');
    ※ '変換元拡張子'=>'変換後拡張子' のように記述します。

    # 変換(開始)ディレクトリ(最後の'/'(スラッシュ)は無し)
    $root_dir = '../..';
    ※ファイル検索を始めるディレクトリを指定します。

    # ディレクトリの再帰処理(0→しない、1→する)
    $reflex = 1;
    ※ディレクトリのリカーシブル処理を指定します。(0→指定ディレクトリのみ、1→下層のディレクトリも実行する)

    # 変換しないディレクトリ(コンマ区切りで複数指定可能)
    @deny_dir = ('img');
    ディレクトリの再起処理をする場合、下層のディレクトリに変換したくないディレクトリがある場合にその名前を指定します。

    # 変換データファイル
    $change_f = './data/change.cgi';
    あらかじめ指定キーと変換タグを記述しておきます。

    # 変換タグに変換コマンドが含まれる場合の最大ループ回数
    $loopf = '5';

    # 「全角→半角」変換をするファイル接頭文字指定
    $prefix = 'm-';
    「全角→半角」変換を行う場合、$ext で指定された拡張子のファイルのうち、$prefix で指定した文字から始まる(接頭文字)ファイルのみ「全角→半角」変換を行います。$ext で指定された拡張子のファイルの全てを変換する場合は指定しないでください。

  • 変換データファイル(change.cgi) を作成します。
    @ [指定キー]<>[変換タグ]<>
    A [指定キー]<>[対象指定キー]<>[変更前ワード]<>[変更後ワード]<>
    の様に一行ずつ指定していきます。変換タグに指定キーを含むことはできますが、無限ループにならないようにループは最大5回で打ち切られます。通常@のみの記載で十分ですが、指定キーで設定されるタグの一部を変更して別の指定キーを設定する場合にAのように指定します。

    【記入具体例】

    # この行はコメントです
    <header><><div>ここはヘッダーです</div><>
    <menu><><table><tr><td>ここはメニューです</td><sub-menu></tr></table><>
    <sub-menu><><td>ここはサブメニューです</td><>
    #
    # ダメな例
    <title><>サイトタイトル<> # 「指定キー」がHTMLタグと同じです
    <footer><>© 2007 <footer><> # 「変換タグ」にその「指定キー」が含まれています
    #
    # 指定キーで設定されるタグの一部を変更して別の指定キーを設定する例
    <menu2><><menu><></tr><><td>ここはサブサブメニューです</td></tr><>

    ※この場合、最終的に <menu2> は、
    <table><tr><td>ここはメニューです</td><td>ここはサブメニューです</td><td>ここはサブサブメニューです</td></tr></table>
    が設定されることになります

    【注意事項】
    ※行頭に'#'を付けるとその行はコメントアウトします。
    ※改行は使用しないでください。改行したい場合はその部分に「<$br$>」を記入してください。
    ※リンク部などに相対位置指定を使用する場合、「<$level$>」を使用すると、変換開始ディレクトリまでの座標('../'など)に置き換わります。
    【記入具体例】
    hoge / index.ht2 (→ index.html が作成)
     |
     +-- hoge1 / hoge1.ht2 (→ hoge1.html が作成)
     |    |
     |    +-- hoge2 / hoge2.ht2 (→ hoge2.html が作成)
     |
     + img / img1.jpg
    

    のような階層構造で、index.ref, hoge1.ref, hoge2.ref から、img1.jpg を参照したい場合、
    <img src="<$level$>img/img1.jpg">
    の様(自動設定)に記入するか、絶対位置指定(http://〜)としてください。

    【変換開始ディレクトリからの相対位置とは違った階層を指定したい場合】(階層の強制指定)
    ※変換元ファイルの一番始めの行に <!--level=3-->(変換開始ディレクトリからの相対位置が3個下)と記述してください。


設置
autotag / autotag.cgi  [755]
 |
 +-- data / change.cgi [644] → 変換データファイル
 |
 +-- Unicode / Japanese.pm [644] → モジュールファイル

実行方法
  • HTML作成ソフト等で作成したhtmlファイルの拡張子を $ext で設定した変換元拡張子(.ht2)に変更します。
  • 自動変換したい部分を指定したキーで置き換えます(その行はそのキーのみとしてください)。
  • スクリプトファイルに直接アクセスすることで実行され、$ext で設定した変換後拡張子(.html)ファイルが作成されます。

    【実行例】http://***.****/autotag/autotag.cgi

  • ファイル単体を変更する時は変換元拡張子ファイルを変更しスクリプト実行します。
  • 指定キーで変換される部分を変更するときは、変換データファイル(change.cgi)を変更しスクリプト実行します。
  • 「全角→半角」変換は、モバイルサイトの作成時等に利用できます。