Одинаковое меню и подвал сайта без движка

Андрей
Андрей
1,8K
14
Содержание:
  1. Комментарии
Приветствую.
Возможно-ли сделать без установки сайта на движок формирование меню и подвала одинаковым для всех имеющихся страниц (ну естественно не переписывая код на каждой отдельной страницы). Например через java скрипт или еще как-то?

Комментарии: 14

  1. Андрей
    Андрей
    2016-10-25 11:36:49
    Нашел информацию, что вариант с java плохо подходит для СЕО, поскольку блоки вставляемые таким образом не индексируются. Печалька.
  1. Андрей
    Андрей
    2016-10-24 20:15:48
    С java работает, только почему-то в футоре при этом не подгружаются скрипты соц. страниц ( у меня в футоре выведены виджеты FB и VK).
    1. Андрей
      Андрей
      2016-10-24 19:58:43
      С php не совсем понял как реализовать. В принципе php поддерживается, но сайт ведь на html. Для реализации на php надо создавать соответствующие php страницы, так?
      1. Александр Мальцев
        Александр Мальцев
        2016-10-25 13:47:56
        Для запуска html страниц как php необходимо в файле .htaccess добавить строчку (для Apache):
        AddType application/x-httpd-php .html .htm
        
      2. Андрей
        Андрей
        2016-10-25 14:01:43
        Александр, нашёл еще один вариант — использование директив SSI. Как считаете, какой вариант более предпочтителен — php или SSI?
      3. Александр Мальцев
        Александр Мальцев
        2016-10-25 14:27:11
        Да, тоже неплохой вариант. Там команд не сильно много, но для такого варианта как вы хотите достаточно. Если вы в будущем ничего не будете в плане серверной логике реализовать, то используйте SSI.
        <!--#include virtual="header.tpl"-->
        <!--#include virtual="footer.tpl"-->
        
      4. Андрей
        Андрей
        2016-10-25 15:34:48
        С PHP так и не получилось. При добавлении такой строчки, браузер не открывает страницу .html, а предлагает загрузить.
        Причем если без добавления этой команды просто переименовать .html в .php, то все работает нормально. Странно.
      5. Александр Мальцев
        Александр Мальцев
        2016-10-26 12:11:48
        Значит необходимо посмотреть, как это делается на хостинге, который вы используете. Или спросить у техподдержки.
      6. Андрей
        Андрей
        2016-10-26 12:41:11
        Тестировал на домашнем хостинге (synology, apache http server 5.2, php 5.6 с настройками по умолчанию), поскольку на нём делаю страницы сайта прежде, чем выкладывать на доступный хостинг.
      7. Александр Мальцев
        Александр Мальцев
        2016-10-27 13:20:23
        Проверьте, есть ли у данного локального веб-сервера конфигуратор. Может её необходимо добавить туда.
      8. Андрей
        Андрей
        2016-10-28 09:12:31
        Потратил время, но разобрался. Потребовалось кроме добавления обработчика в .htaccess еще и добавлять конфигурацию на самом сервере. Поскольку теперь ssi и php в .html одновременно не обрабатываются, опять думаю что из них лучше и надежнее.
    2. Александр Мальцев
      Александр Мальцев
      2016-10-24 13:20:35
      Если поддерживается php, то можно так (в нужных местах страницы):
      <?php
      include ("header.tpl");
      ?>
      <?php
      include ("footer.tpl");
      ?>
      
      1. Александр Мальцев
        Александр Мальцев
        2016-10-24 13:01:16
        С помощью JavaScript можно сделать так.
        1. Создать на HTML страницах 2 блока в нужных местах:
        <header id="header"></header>
        <footer id="footer"></footer>
        
        2. Создать 2 файла, например header.tpl и footer.tpl.
        3. Написать скрипт, который подгрузит в эти блоки данные из файлов:
        <!-- Подключить билиотеку jQuery -->
        <script src="js/jquery.js"></script>
        <script>
        $(function(){
          $('#header').load('header.tpl');
          $('#header').load('footer.tpl');
        });
        </script>
        
        1. Андрей
          Андрей
          2016-10-24 19:57:08
          Спасибо Александр, с java получилось. Возможно получилась неплохая легкая альтернатива движку.