2013-04-21 2 views
6

Я начал создавать веб-страницы в простом HTML. У меня есть заголовок, основное содержание и нижний колонтитул. Основной контент разделен на два, левого и правого содержимого. Все одинаково на всех страницах, за исключением правильного контента. Теперь у меня около 15 страниц. Это очень утомительно, если я делаю некоторые изменения на других статических страницах (заголовок, нижний колонтитул и левый контент), поскольку мне приходится проходить через все страницы.Лучшая практика создания шаблона в HTML

Каков наилучший способ создать один файл HTML для каждой статической области и как я буду интегрировать его?

ответ

4

Существует несколько способов сделать это.

Если вы работаете исключительно с HTML, вы можете использовать «серверную сторону include» - это тег, который позволяет вам загружать файл на страницу (см.). Тот, кто размещает ваш сайт, должен поддерживать это.

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

Если youe веб-хостинга случится использовать PHP, вы можете сделать это с помощью метода включения (см http://php.net/manual/en/function.include.php):

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

Это будет включать в файл в точке, где вы поместите тег. Но опять же, тот, кто размещает ваш сайт, должен поддерживать это.

Есть и другие способы сделать это, бит, это два, которые я использую.

+0

В настоящее время я создаю сайт на своей локальной машине, используя wampserver. Я выполнил шаги, чтобы сделать это, но он, похоже, не работает. Нужно ли переименовывать все файлы в .shtml? Я хочу сохранить расширение html из-за старого веб-сайта, который работает в течение многих лет, и я не хочу, чтобы кеш Google был потрачен впустую. Я добавил это в конфигурацию wamp apache: 'AddType text/html .shtml Опции + Включает AddOutputFilter ВКЛЮЧАЕТ .shtml' –

+0

Как это бывает ... Я также использую сервер WAMP :) '- самый простой способ использования, поскольку по умолчанию должен быть включен PHP. Таким образом, нет необходимости изменять конфигурационный файл Apache. Если вы используете этот подход, вам не нужно изменять расширения своих файлов. – swshaun

10

Есть, по существу, три места, которые вы можете сделать это:

  1. Во время сборки. Запустите скрипт, который объединяет страницы и выводит статический HTML. Затем загрузите статический HTML на сервер. ttree отлично подходит для этого. Вы можете обернуть скрипт в полную систему сборки, которая объединяет и минимизирует ваши CSS и JS, а затем загружает их на сервер. Это вариант, который требует наименьшего количества беспокойства о том, что поддерживают клиенты и серверы. Обновление: в эти дни существует много static site builders, которые включают эту функциональность.
  2. Во время выполнения на сервере. Это может быть простой , PHP include или полная система шаблонов (из которых их много, в том числе Template Toolkit и mustache), возможно, работающих внутри рамки MVC (например, Catalyst или Django). Это наиболее распространенный подход, у него меньше времени между внесением изменений и помещением результатов, которые затем выполняются при создании шаблонов во время сборки.
  3. Во время выполнения на клиенте. Это добавляет зависимость от JavaScript, поэтому я бы не рекомендовал его, если у вас уже не было a server side solution.
+0

Я посмотрел с ttree и другим набором инструментов, но это кажется сложным. Я использую wampserver на своей локальной машине. используя чистый html. также следовали за изменением конфигурации apache, чтобы включить 'include', но это не сработало. –

Смежные вопросы