2013-04-21 7 views
6

プレーンなHTMLでWebページを作成し始めました。ヘッダー、メインコンテンツ、フッターがあります。メインコンテンツは、左右の2つのコンテンツに分かれています。適切なコンテンツ以外のすべてのページですべてが同じです。今私は約15ページあります。これは、他の静的ページ(ヘッダー、フッター、左側のコンテンツ)を変更すると、すべてのページを移動する必要があるため、非常に面倒です。テンプレートをHTMLで作成するベストプラクティス

静的領域ごとに1つのHTMLファイルを作成する最良の方法と、それをどのように統合するのですか?

答えて

4

これを行うにはいくつかの方法があります。

純粋にHTMLで作業している場合は、「サーバー側インクルード」を使用できます。これはファイルをページにロードするためのタグです(参照)。あなたのウェブサイトをホストしている人は、これをサポートしなければなりません。 youeのWebホストはPHPを使用してしまった場合、あなたが方法を含む使用してこれを行うことができます

<!--#include virtual="../quote.txt" --> 

http://php.net/manual/en/function.include.phpを参照してください):

<?php include('path_to_file/file.htm');?> 

これは、あなたがタグを配置時点でファイルが含まれます。しかし、もう一度、あなたのサイトをホストしている人は誰でもこれをサポートする必要があります。

これを行う他の方法がありますが、これらは私が使用する2つのビットです。

+0

私は現在、ローカルマシン上にwampserverを使用してサイトを構築しています。私はこれをするための手順を踏んだが、うまくいかないようだ。すべてのファイルの名前を.shtmlに変更する必要がありますか?私は何年も走ってきた古いウェブサイトのためにHTMLの拡張子を保持したいと思っています。私はGoogleのキャッシュを無駄にしたくありません。 Option + Include AddOutputFilter INCLUDES .shtml ' –

+0

私はWAMPサーバーも使用しています:)' <?php include( ' path.htm ')?> 'は、PHPがデフォルトで有効になっている必要があるため、最も簡単に使用できます。そうすれば、Apacheの設定ファイルを修正する必要はありません。このアプローチを使用する場合は、ファイルの拡張子を修正する必要はありません。 – swshaun

10

は、本質的に、ありますが、あなたがこれを行うことができます3つの場所:ビルド時で

  1. 。ページをまとめて静的なHTMLを出力するスクリプトを実行します。次に、静的HTMLをサーバーにアップロードします。 ttreeはこれに最適です。あなたは、あなたのCSSとJSを結合して縮小し、それをサーバーにアップロードする完全なビルドシステムでスクリプトをラップすることができます。これは、クライアントとサーバーがサポートしていることを最小限に抑える必要があるオプションです。アップデート:最近、この機能を組み込んだstatic site buildersがたくさんあります。
  2. 実行時にサーバー。これは単純な、PHP include、またはフルテンプレートシステム(Template Toolkitmustacheなど)があり、MVCフレームワーク内で実行されている可能性があります(CatalystまたはDjangoなど)。これは最も一般的なアプローチであり、変更を加えて結果を生かすまでに時間がかからず、ビルド時にテンプレートを実行します。
  3. 実行時にクライアント。これはJavaScriptに依存関係を追加するので、あなたが既にa server side solutionを所持していない限り、私はそれをお勧めしません。
+0

私はttreeと他のテンプレートツールキットで見ていましたが、これは複雑に思えます。ローカルマシンでwampserverを使用しています。純粋なhtmlを使用します。また、 'include 'を許可するようにApacheの設定を変更したが、これはうまくいかなかった。 –

関連する問題