Файл шаблона HTML - PullRequest
       3

Файл шаблона HTML

0 голосов
/ 01 марта 2012

Я знаю, что это вопрос новичка, но я искал в Интернете, и все, что я могу найти, это «бесплатные шаблоны веб-сайтов», которые я могу загрузить.

Вопрос: Как я могу написать сегментHTML в одном файле, а затем загрузить этот же сегмент в любые другие файлы HTML, которые я выберу?

Цель состоит в том, чтобы в случае изменения этого сегмента мне пришлось бы изменить только 1 файл, а не 10-е / 100-е / 1000-е / и т. Д.

Например, я мог бы захотеть определитьстрока меню выглядит следующим образом:

<a href="./Test1">Test1</a> <br />
<a href="./Test2">Test2</a> <br />
<a href="./Test3">Test3</a> <br />

И затем, чтобы мне не приходилось повторять один и тот же код в каждом отдельном файле, я мог бы просто сослаться на эту строку меню.Может быть, что-то вроде:

<html>
   <!-- Load "Menu Bar" file -->
   <!-- Place the menu bar right here -->

   Thanks for visiting my web page. Please navigate with the menu bar above.
</html>

Спасибо.


Редактировать: Хотя это может показаться тривиальным, я хотел сделать несколько HTML-страниц для управления некоторыми из моих личных файлов и данных.Как программисты, мы, конечно, не любим повторяться.Сначала я думал, что это так же просто, как связать файл CSS, но теперь я вижу, что это сложнее, хотя я не уверен (с технической точки зрения), почему это должно быть.В любом случае, поскольку я буду просматривать файлы на своем собственном компьютере, я полагаю, что смогу установить что-то вроде PHP, чтобы помочь моим усилиям.

Ответы [ 6 ]

1 голос
/ 01 марта 2012

Для простого HTML вы просто используете:

<!--#include FILE="menu.inc" -->
1 голос
/ 01 марта 2012

Вы описываете на стороне сервера включает .

Включения на стороне сервера полезны для включения общего фрагмента кода по всему сайту, такого как верхний колонтитул страницы, нижний колонтитул страницы и меню навигации.

Пример использования:

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

Это добавит текст quote.txt на страницу - если вы добавите его на несколько страниц, вы можете внести изменения в этот файл, и он будет отображаться на всех страницах, включенных в.

Различные веб-серверы имеют различную поддержку и дополнительные функции для них, поэтому вам нужно проверить документацию на ваш.


Многие веб-сайты, которым требуются динамические функции (например, выборка данных из базы данных), будут использовать какой-либо язык сценариев на стороне сервера для таких функций - примеры включают PHP, Perl, ASP.NET, JSP и многие другие.

1 голос
/ 01 марта 2012

Такое поведение может быть достигнуто только (разумно) с помощью использования сторонних языков, таких как php или asp.

Неосмысленные способы обработки этого включают в себя iframes blech илиframesets двойное выделение .

1 голос
/ 01 марта 2012

Обычно для динамического включения таких файлов используется язык сценариев на стороне сервера, такой как PHP. Решения на стороне клиента обычно включают в себя фреймы и т. Д., Что обычно не является предпочтительным.

1 голос
/ 01 марта 2012

Это можно сделать в двух местах:

  1. Программирование на стороне сервера во время выполнения (которое позволяет быстро обновлять шаблоны, но требует поддержки сервера)
  2. Что-то во время сборки ((что упрощает управление кэшем и не требует ничего для запуска на сервере)

Два основных подхода к этому включают в себя (простой) и полный шаблонных систем (мощный).

Для системы включения во время выполнения популярным выбором является PHP include .Альтернативой является SSI .Вы даже можете использовать препроцессор C .

Системы шаблонов включают Smarty PHP .

Моё оружие на выбор Template-Toolkit , которое можно использовать через Perl во время выполнения и поставляется с ttree для использования во время сборки.

Менее вменяемые варианты, связанные с тем, чтобы клиент делал это, и включают кадров и JavaScript.

0 голосов
/ 01 марта 2012

Есть несколько способов сделать это, но прежде всего мы должны определить, в какой среде хостинга вы будете использовать свой сайт.Это также полностью зависит от того, чего вы пытаетесь достичь - вы программируете или просто включаете HTML-страницу в другую HTML-страницу?

Если ваш веб-хост позволяет вам запускать внутренний код, такой как ClassicASP, ASP.NET, PHP, MVC, Ruby или Perl, тогда у каждого есть один или несколько методов для включения файлов.

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

В качестве альтернативы, вы можете использовать AJAX для получения страницы с вашего сервера и динамического обновления HTML-кода на вашей странице.Помните, однако, что это зависит от того, включен ли пользователь JavaScript, и требует немного больше усилий с вашей стороны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...