Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Общие вопросы > WEB-Программирование
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 31.03.2024, 23:22
Аватар для kuzduk
kuzduk kuzduk вне форума
Прохожий
 
Регистрация: 17.02.2012
Сообщения: 38
Репутация: 10
Вопрос Header на всех страницах, без сборщиков, без инструкций в файлах с контентом

Всем привет. Прошу помощи в следующем вопросе: нужно чтобы какую страницу ни загрузи на сайте, чтобы сверху всегда подгружался header.html. Обязательно, чтоб не было файлов-сборщиков, и не нужно было добавлять во все страницы с контентом инструкции по подгрузке шапки, т.е. сервер сам должен подгружать к любой странице шапку - инструкции даются серверу - как это можно сделать? Всё найденное мною и прочитанное про php, frame, iframe, SSI - либо файлы-сбощики, либо добавление в файлы с контентом инструкций по добавлению блоков типо include, а нужно чтоб сервер сам добавлял - одна глобальная команда для сервера для любой вызванной страницы.

Вот мой сайт: https://kuzduk.ru - построен на html frame. Файлы с контентом и head.html конструируются файлами сборщиками, от которых хотелось бы избавиться.

Например, страница с контентом: https://kuzduk.ru/kataloger/kataloger.html - вызываем её, она загружается без шапки, но если вызвать https://kuzduk.ru/kataloger/ (т.е. https://kuzduk.ru/kataloger/index.html) то запустится index.html который является сборщиком на фреймах, имеет такой код:


Код HTML:
<frameset rows="60, *" frameborder="0" framespacing="0"> <frame src="/head/" name="frhead" id="frhead" scrolling="No" marginheight="0" marginwidth="0" noresize > <frame src="kataloger.html" name="frosn" id="frosn" scrolling="auto" marginheight="10" marginwidth="100" frameborder="0" > </frameset>
мне же нужно чтобы сервер выполнял подгрузку head.html к любой страницы, выражаясь синтаксисом html frame, что типо такого :

Код HTML:
<frameset rows="60, *" frameborder="0" framespacing="0"> <frame src="/head/" name="frhead" id="frhead" scrolling="No" marginheight="0" marginwidth="0" noresize > <frame src="ЛЮБАЯ_СТРАНИЦА" name="frosn" id="frosn" scrolling="auto" marginheight="10" marginwidth="100" frameborder="0" > </frameset>


Например вот эти советы не подходят:

Цитата:
Самое простое - использовать SSI (Server Side Includes).
1. Создаем файл header.html и в него записывает то, что надо размножить.
2. В файле .htaccess делаем запись типа такой, где перечисляются расширения файлов, в которых можно делать инклюды:
AddHandler server-parsed .shtml .shtm .htm .html
3. В коде страниц, куда надо вставить содержимое файла header.html пишем:
<!--#include file="header.html"-->
В итоге один и тот же блок будет показываться на всех страницах. У сервера он будет сидеть в кэше. Править теперь достаточно в одном месте, а не на всех страницах.
Пункт 3 подразумевает вписывание инструкций в файл с контентом - этого я пытаюсь избежать.



Вариант на php подразумевает в писывание интсрукций по разделению страницы в тело файла с контентом - что тоже не приемлемо:
Цитата:
В файле index.php прописать:
<?php
require '<путь к файлу с header>';
?>
<КОНТЕНТ>
<?php
require 'путь к файлу с footer';
?>
Ответить с цитированием
  #2  
Старый 31.03.2024, 23:37
Аватар для Admin
Admin Admin вне форума
Администратор
 
Регистрация: 03.10.2005
Адрес: Россия, Москва
Сообщения: 1,536
Версия Delphi: Delphi 7
Репутация: выкл
По умолчанию

Создай на том же PHP шаблоны хедера и футера и подключай к страницам.


А фреймы это что-то из 90-х.
Ответить с цитированием
  #3  
Старый 31.03.2024, 23:59
Аватар для kuzduk
kuzduk kuzduk вне форума
Прохожий
 
Регистрация: 17.02.2012
Сообщения: 38
Репутация: 10
По умолчанию

Цитата:
Сообщение от Admin
Создай на том же PHP шаблоны хедера и футера и подключай к страницам.


А фреймы это что-то из 90-х.


смысл менять frame на php?
Вот если бы с помощью php можно было сотворить с желаемыми параметрами т.е. 1) без файлов-сборщиков и 2) без инструкций в файлах с контентом - то тогда есть смысл в тему погружаться. Можно сие на php сотворить?
Ответить с цитированием
  #4  
Старый 01.04.2024, 07:52
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,063
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, для начала есть такая штука - SSI (Server Side Inclusion).
Не все сервера такое поддерживают. Примерно так:
Код:
<!-- news begin -->
<!--#include file="news.html"-->
<!-- news end -->
Ответить с цитированием
  #5  
Старый 01.04.2024, 16:26
Аватар для Admin
Admin Admin вне форума
Администратор
 
Регистрация: 03.10.2005
Адрес: Россия, Москва
Сообщения: 1,536
Версия Delphi: Delphi 7
Репутация: выкл
По умолчанию

Цитата:
Сообщение от lmikle
Ну, для начала есть такая штука - SSI (Server Side Inclusion).
Не все сервера такое поддерживают. Примерно так:
Код:
<!-- news begin -->
<!--#include file="news.html"-->
<!-- news end -->
 


Тот же самый инклюд в ПХП, только для тех кто не умеет в языки веб-программирования.


Вообще все эти HTML на коленке в блокноте это какой-то прошлый век.
Есть куча CMS, тот же Вордпресс или Тильда на крайний случай.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:41.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter