WebRelease 2.70 からは、コンテンツ中(テンプレート、ページ、テキスト系リソース)に直接記述された URL が、プレビュー時にプレビュー用の URL にリライトされるように改良されています。ページ内に記述する html 中にはページリソースやサイトリソース、他のページなどへのリンクを絶対/相対を問わず自由に記述することができるようになりました。
7章 ページの作成
html コンテンツを WebRelease と異なるコンテンツ制作環境で作成し、出来上がった html と関連リソースを WebRelease に取り込む時に、それらを zip 形式のファイルとして一括して取り込むことができます。
取り込みは「複数行テキスト」形式の入力エリアに対して行います。この入力エリアは、右側に「HTML」のチェックボックスが表示されている、html 入力が許可されているエリアでなければなりません。「HTML」のチェックボックスの右下には「アップロード」ボタンが表示されているはずです。
zip を取り込む場合には、この「アップロード」ボタンをクリックします。クリックするとアップロードパネルが表示されます。
アップロードする zip ファイルを指定してください。
ここでは zip ファイルのアップロードを前提にしていますが、複数のファイルを指定してアップロードすることもできるので、html と関連するリソース(画像、スタイルシートなど)を、バラバラの状態でアップロードすることもできます。
このオプションを ON にしておくと、アップロードした html ファイルの <title> タグの内容がこのページのページタイトルに設定されます。
このオプションを ON にしておくと、アップロードした html ファイルのファイル名がこのページのファイル名に設定されます。
このオプションを ON にしておくと、既にページに登録されているリソースを上書きしてアップロードすることができるようになります。OFF の状態では上書きが起きる場合にはエラーになります。
アップロードするファイルとオプションを設定したら「実行」ボタンをクリックしてください。
今回は、例として、下記の内容の zip_import_test.zip というファイルをアップロードしてみます。
Archive: zip_import_test.zip
Length Date Time Name
-------- ---- ---- ----
485 09-02-15 22:40 zip_import.html
7803 09-02-15 22:35 images/Kingyo.gif
-------- -------
8288 2 files
アップロードの完了結果は下記のとおりです。
ページリソース一覧を見てみましょう。
アップロードした zip ファイルに含まれていた images/Kingyo.gif というファイルがページのリソースとして登録されています。images というディレクトリも作成されています。html 中にある <img src="images/Kingyo.gif"> という記述は登録された画像を参照しています。
WebRelease 2.70 からは、コンテンツ中(テンプレート、ページ、テキスト系リソース)に直接記述された URL が、プレビュー時にプレビュー用の URL にリライトされるように改良されています。ページ内に記述する html 中にはページリソースやサイトリソース、他のページなどへのリンクを絶対/相対を問わず自由に記述することができるようになりました。
zip ファイル中には、取り込む html と、取り込むページのページリソースに登録するファイルしか含めることはできません。もし html がいくつかの html ファイルから共通して参照されるスタイルシートやスクリプトを必要としているのであれば、それらはサイトリソースとして登録しておき、html からはそれらを絶対パスで参照する方法を採ることを検討してください。
サイトリソースには、デザイナー権限がなくても、ライター権限だけで書込みが可能なフォルダを作成することができます。そういった機能をうまく使うことでライター権限で管理されるファイルマネージャー領域を運営することも可能です。
ページリソースは、そのページの公開、公開終了に同期して公開されたり公開終了したりしますので、他のページのページリソースを参照するのはなるべく止めておいた方が良いでしょう。
取り込んだ HTML は <!DOCTYPE html> から始まる、完全な形の html であったり、または、body タグの内側のみの html フラグメントであったりするかもしれません。取り込みにより WebRelease にコンテンツを登録する場合には、どういう形式でコンテンツを取り込むのか、事前に取り決めておく必要があります。
取り込んだ html に対して何らかの加工が必要になる場合がありますが、下記の関数・オブジェクトを使って加工することを検討してください。
- parseHtml() 関数で取り込んだ html をパースすると HTMLDocument オブジェクトに変換することができます。
- HTMLDocument オブジェクトは、HTMLComment, HTMLDataNode, HTMLElement, HTMLElements, HTMLTextNode オブジェクトなどを援用して、さまざまな加工が可能です。
- テンプレートの展開では、取り込んだ html を加工して部分を切り出すなどして作り出した html 断片と、テンプレート中で生成したメニューやフッターなどを組み合わせて完全な html ページを組み立てることで、取り込んだ html と導線を組み合わせたページを作り出すことができます。
特に加工が必要ない形状での html の取り込みができればそれが一番簡単です。