O código do SPIP e a estrutura do site ficam assim claramente separados com, por exemplo, a possibilidade de alterar todo um conjunto de templates de uma única vez.
Os templates padrão: squelettes-dist/
Os templates da distribuição - ou seja, os que são fornecidos por padrão na instalação do SPIP — ficam reunidos num único diretório. Estes ficheiros contêm as informações do layout padrão do site e não devem ser alterados. Você pode examinar o conteúdo deste diretório e partir deste conjunto de templates para adaptar o layout às suas necessidades [1].
Todavia, não deve modificar os templates da distribuição, ou arriscará perder todas as suas modificações a cada atualização do SPIP!
Para evitá-lo, faça uma cópia dos ficheiros que deseja modificar, e coloque-os noutro diretório, como indicado abaixo.
O seu diretório squelettes/
Os templates personalizados devem ser armazenados num diretório chamado squelettes/
(atenção ao «s» final!), que você deve criar na raiz do seu site SPIP.
que vous créerez à la racine de votre site SPIP. Quer você deseje instalar um conjunto completo de templates (obtido em SPIP - Contrib ou de outro local), ou realizar uma ligeira modificação nos templates padrão, coloque os seus templates neste diretório.
Assim, um utilizados que queira criar o seu próprio layout, desenvolverá os seus próprios ficheiros article.html
, rubrique.html
etc. no diretório squelettes/
. Note que não é necessário colocar um conjunto completo de templates neste diretório.
Para exibir as páginas do site, o SPIP procura prioritariamente no diretório squelettes/
; se o SPIP não encontrar um ficheiro .html
de que necessite, irá procurar o da distribuição no diretório squelettes-dist/
.
Assim, se você colocou um único ficheiro no diretório squelettes
, por exemplo, article.html
, o SPIP usará este template para exibir as matérias, e os da dist
para todas as outras páginas do site.
O diretório squelettes/
destina-se a receber todos os ficheiros necessários ao layout do site. Nele, devem ser colocados:
- os templates, ou seja, os ficheiros
.html
com código SPIP; - os ficheiros incluídos nos templates e os modelos ;
- os formulários alterados, num subdiretório
formulaires/
- as folhas de estilo CSS que produzem o design gráfico; personalizá-los permite com efeito variar, às vezes espetacularmente, o design do site, sem intervir nos templates. Ver : «Dê-lhe os seus próprios estilos!»;
- as imagens usadas nos templates;
- o ficheiro
mes_fonctions.php
que contém filtros e variáveis de personalização específicos desse conjunto de templates; - os ficheiros javascript;
- os ficheiros de idioma personalizados (consultar: «Internacionalizar os templates», método dos ficheiros de idiomas), num subdiretório
lang/
; - etc...
Usar outro diretório de templates
É possível armazenar os templates num diretório com o nome da sua preferência, declarando-o no ficheiro mes_options.php
, com a variável de personalização $GLOBALS['dossier_squelettes']
, como explicado na documentação correspondente. O SPIP irá procurar os templates prioritariamente no diretório ali declarado.
Isso permitirá, por exemplo, testar um novo conjunto de templates sem excluir o anterior, ou de gerir dinamicamente diversos conjuntos de templates.
Você pode incidar vários diretórios, usando o caracter :
como separador.
Exemplo: quando $GLOBALS['dossier_squelettes']='sobrecarga:meustemplates:testes
, ostemplates do diretório ’sobrecarga’ são prioritários, seguidos dos de meustemplates
, e dos de testes
.
Prioridade dos diretórios de templates
Vamos ser mais exaustivos e resumamos. Grosso modo, quando o SPIP precisa usar um ficheiro, ele procura-o em diferentes diretórios, na seguinte ordem:
- em primeiro lugar, na lista de diretóriods designados na variável
$GLOBALS['dossier_squelettes']
, se esta estiver definida; - seguidamente, no diretório
squelettes/
situado na raiz do site; - depois, na lista de diretórios da variável
$plugins
; - em seguida, na raiz do site;
- no diretório
squelettes-dist/
; - e finalmente, no diretório
ecrire/
.
«A Grosso modo», pois a isso somam-se algumas subtilezas [2], incluindo uma ordem de prioridade por ficheiro de template, que permite variantes mais específicas: por seção, por ramo ou por idioma, como explicado na [documentação correspondente>3445].
Nota: Na verdade, o mecanismo descrito acima para escolher o lugar de um ficheiro não se aplica somente aos templates, mas também a todo o código do SPIP. No jargão do desenvolvimento, falamos de «sobrecarga do código», a ordem de escolha dos diretórios estando em «SPIP_PATH».
Deste modo, estabelece-se a estrutura e as normas para o desenvolvimento de «plug-ins», extensões de funcionalidades do SPIP para as quais todos os membros da comunidade podem contribuir.
Dessa forma, é possível modificar qualquer característica do comportamento do SPIP. Contudo, atenção para não perder as vantagens das atualizações da distribuição e do suporte da comunidade.