Executando include em arquivos HTML
Um dos recursos implementados em linguagens de programação é a possibilidade de um programa A (em execução) poder 'carregar' um outro programa B.
Isso permite o reaproveitamento de código, uma vez que o programa B pode também ser referenciado por outros programas (além do programa A).
Entretanto, este recurso computacional não está presente na HTML.
Então, para projetar e 'montar' interfaces que tenham regiões de menus, usando <DIV>...</DIV> é necessário REPLICAR todos os comandos que montam os menus em TODOS os arquivos que formam as páginas do site que se quer desenvolver.
EXCETO... Será que para todas as situações de tecnologia existe o EXCETO???
Bem, para esta situação, existe sim!
É possível fazer o INCLUDE funcionar em HTML, PORÉM (Ah! Porém!...), é necessário que o usuário que vai fazer a operação seja administrador do ambiente do servidor, onde estão 'rodando' os serviços que constituem um Servidor Internet, para, neste servidor poder editar arquivos de configuração de alguns serviços.
Nesta página, apresenta-se a configuração que deve ser alterada no arquivo de configuração do Servidor de Página APACHE.
Usando Apache SSI para implementar o INCLUDE de arquivos.
Apache, um servidor web super comum, pode fazer 'includes'.
Você faz assim (no código HTML):
<body>
<!--#include file="./header.html" -->
Content
<!--#include file="./footer.html" -->
</body>
Este segmento de código indica dois arquivo (header.html e footer.html) que DEVEM estar no mesmo diretório onde está o arquivo com o segmento de código apresentado.
Mas você precisa da configuração correta do Apache para permitir a execução de 'include file'.
Procure onde está o arquivo httpd.conf no seu sistema de arquivos. O local onde está este arquivo DEPENDE da instalação do Apache no seu computador.
Ache e edite como administrador este arquivo.
Procure a linha com o seguinte texto:
<IfModule mime_module>
Nesta sessão do arquivo de configuração do Apache é possível indicar quais tipos de arquivos podem ser 'incluídos'.
O padrão é que seja possível executar 'includes' em arquivos .shtml.
Edite as linhas:
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
E simplesmente retire o 's' do .shtml deixando as linhas assim:
AddType text/html .html
AddOutputFilter INCLUDES .html
Observe:
- O arquivo foi editado com um usuário administrador do ambiente.
- Depois de gravada a alteração o Servidor de página deve reiniciado.
Esta alteração realmente coloca uma possibilidade de programação modular com reaproveitamento de código muito boa para o Servidor de páginas.
PORÉM, poucos administradores de servidores de páginas sabem fazer estas alterações e outras vezes não fazem por conta do temor de alterarem "as configurações seguras" do servidor.
Por isso, se você tiver certeza de que o seu hospedeiro de site pode e vai fazer estas alterações no servidor, então use esta solução.
Agora, se você não tem esta certeza, não use este recurso.