Способ отредактировать контент, изменив один файл? - PullRequest
2 голосов
/ 13 апреля 2010

У меня есть вкладка css слева на моем веб-сайте, у меня более 30 страниц, и я не хочу вручную изменять все эти страницы позже, когда изменились данные. Кто-нибудь знает решение, поэтому мне нужно всего лишь изменить 1 файл, чтобы редактировать все страницы?

Возможно, в javascript?

Код ниже для вкладки

<div class="slide-out-div">
        <a class="handle" href="http://link-for-non-js-users">Content</a>
      <h3>Onze contact gegevens</h3>
        <p>Adres: van Ostadestraat 55<br />
          Postcode: 8932 JZ<br />
        Plaats: Leeuwarden<br />
        Tel: 058 844 66 28<br />
        Mob: 0629594595
        <br />
        E-mail: <a href="mailto:info@friesecomputerservice.nl">info@friesecomputerservice.nl</a><br /><br />
        </p>
<p>Mocht u vragen hebben dan kunt u gerust bij ons terecht voor meer informatie.</p>

Edit:

Это в моем html

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

и это в моем contact.txt, который находится в гниле моей веб-папки:

<div class="slide-out-div">
        <a class="handle" href="http://link-for-non-js-users">Content</a>
      <h3>Onze contact gegevens</h3>
        <p>Adres: van Ostadestraat 55<br />
          Postcode: 8932 JZ<br />
        Plaats: Leeuwarden<br />
        Tel: 058 844 66 28<br />
        Mob: 0629594595
        <br />
        E-mail: <a href="mailto:info@friesecomputerservice.nl">info@friesecomputerservice.nl</a><br /><br />
        </p>
<p>Mocht u vragen hebben dan kunt u gerust bij ons terecht voor meer informatie.</p>

Ответы [ 4 ]

4 голосов
/ 13 апреля 2010

Возможно, вы захотите использовать Включение на стороне сервера (SSI).

Вы поместили бы свой фрагмент кода в отдельный файл, например contact.txt, а затем просто указали бы его на всех своих 30 страницах, используя:

<!--#include virtual="contact.txt" -->

SSI поддерживается всеми популярными веб-серверами, включая Apache, IIS и lighttpd.

3 голосов
/ 13 апреля 2010

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

<!--#include virtual="path to file/include-file.txt" -->

Надеюсь, это поможет:)

UPDATE:

После продолжительного обсуждения переименуйте свои страницы в .php вместо .html и свой контакт в .php вместо .txt и используйте это для включения вашего файла:

<?php include('contact.php'); ?>

Если ваши страницы находятся в разных каталогах, используйте:

<?php include($DOCUMENT_ROOT . "/path-to-files/contact.php"); ?>

Это заставит страницу взглянуть на корневой каталог вашего сайта.

1 голос
/ 13 апреля 2010

Как и предполагалось, вы можете использовать SSI для Apache. Это зависит от того, какой конкретный веб-сервер и используемый модуль.

Чтобы достичь этого результата, вы можете сделать две вещи:

Используйте какой-нибудь язык шаблонов, который его поддерживает, и «скомпилируйте» его перед загрузкой на свой веб-сервер. Использование ruby's ERB является одним из примеров.

Другое - использовать серверный язык программирования (я бы порекомендовал PHP, поскольку он прост, прост в развертывании и содержит множество документации), чтобы сделать это для вас на сервере.

Вот простой пример использования PHP: http://www.albinoblacksheep.com/tutorial/include

0 голосов
/ 13 апреля 2010

Когда я принимаю решения как Даниэля, так и Кайла (и я +1 к их ответам)

Если бы я был в вашей ситуации. Я создал HTML-код с вашей контактной информацией, а затем включил его в рамку на 30 других страницах, например

  • contact.html (который включает только контактную информацию)
  • page1.htm
  • pagex.htm
  • page30.htm

и на одной странице x.htm поставить следующий код

<body>
     Other part of page ....
     <iframe id="contact" src="../contact.htm"></iframe>
</body>
...