Estrutura geral do SPIP

O SPIP é um CMS único no seu gênero.

Além do seu funcionamento, que podemos qualificar de «data driven», ou seja «orientado pelos dados» (os famosos BOUCLES, ou loops), forneceu sempre em primeira linha, os meios de «customisar», adaptar o seu funcionamento ao gosto e às necessidades específicas do site.

Foi principalmente a possibilidade de fornecer os seus próprios esqueletos (templates), de incorporar fragmentos específicos de PHP e de substituir as funções básicas do «core» (as function xxx_dist() que veremos mais à frente).

Os plugins permitem abrir o SPIP a funcionalidades adicionais sem sobrecarregar o seu núcleo (o «core»). A tendência atual é mesmo de aliviar esse core, transferindo as funcionalidades opcionais para os plugins.

Os diretórios que o constituem permitem separar claramente os elementos de acordo com a sua vida útil, o facto de serem alteráveis e de pertencerem ao que é próprio ou específico do site ou ao código básico. Um dos outros objetivos visados aqui é possibilitar a mutualização do núcleo, onde diversos sites podem compartilhar uma báse de código comum.

Vamos analizar esta nova organização dos diretórios, dos que pertencem ao SPIP aos que são próprios do site, do que permanece constante ao que é passível de mudança.

Distribuição

raíz do site

A raíz foi completamente esvaziada e só contém praticamente o index.php que redireciona para o spip.php, que é agora o único ponto de entrada da parte pública do site.

O SPIP é fornecido com um ficheiro htaccess.txt que pode ser renomeado como .htaccess essencialmente para o URL rewriting.

ecrire/

Este diretório contém o conjunto de ficheiros interpretáveis do lado do servidor (PHP e MySQL) e isso, tanto para a exibição pública (subdiretório public/), quanto para a exibição restrita.

O nome desse diretório é histórico, onde se encontrava anteriormente o código que permite alterar o conteúdo do site. Paradoxalmente, agora é um diretorio imutável, onde nunca mais se deve escrever nada. Numa instalação normal, só contém os scripts fornecidos pela distribuição e é quase imperativo não se fazer nenhuma alteração.

O seu script index.php é o ponto de entrada de ecrire/, a área restrita do site.

dist/ este diretório chama-se squelettes-dist/.

Contém todos os ficheiros fornecidos ao cliente (HTML, Javascript, folhas de estilo, imagens de diversos formatos) bem como os modelos de layout denominados templates. Estes templates são interpretados do lado do servidor, para enviar ao cliente um texto puramente MIME (na maior parte do tempo HTML, mas também RSS, SVG... e mesmo JS).

Estes são os modelos padrão fornecidos com o SPIP, e também não devem ser alterados, mas substituídos, ao serem copiados para squelettes/

Adaptação

config/

Este diretório, criado durante a instalação, contém o script de conexão com a base de dados: connect.php e o script que define o modo dos ficheiro criados pelo servidor: chmod.php.

É também aqui que se colocam as opções universais do site, num ficheiro (a ser criado): mes_options.php [1]

IMG/

Contém todos os documentos originais (em tamanho real) do site. É subdividido em subdiretórios por tipos de documentos.
Na instalação, só contém os documentos de teste para o processamento das imagens.

squelettes/

É aqui que armazenam-se todos os ficheiros: scripts, imagens, formulários... próprios do site, seguindo a mesma estrutura de ecrire/ ou dist/. Por exemplo, para redefinir o sommaire (página principal ou capa) do site, deve-se copiar/adaptar o ficheiro sommaire.html do diretório dist/.

Aqui coloca-se, nomeadamente, o script mes_fonctions.php (a ser criado), que é carregado a cada recálculo de página. Note que pode-se criar um xxx_fonctions.php que será carregado (adicionalmente ao mes_fonctions.php) unicamente quando a página xxx for solicitada (por exemplo: sommaire_fonctions.php).

Na instalação, este diretório não existe, é preciso criá-lo.

plugins/

Este diretório contém os subdiretórios de cada plugin. Por exemplo, o plugin Crayons é colocado em plugins/crayons/.

Temporário

local/

Contém todos os ficheiros (re)calculáveis a partir dos documentos e dados do site.

Trata-se essencialmente dos caches de imagens reduzidas. Também encontram-se aqui os caches calculados de alguns plugins, como «coloration_code».

Os ficheiros deste cache são acessíveis a partir da web.

Este diretório pode ser esvaziado, o que provocará ao seu recálculo.

tmp/

Aqui ficam armazenados os ficheiros temporários como os caches de templates, as sessões, os logs etc.

Contém também o subdiretório dump/ onde ficam arquivadas as cópias de segurança da base de dados.

Ao contrário de local/, os ficheiros deste cache não estão acessíveis a partir da web.

Este diretório pode ser esvaziado a qualquer momento.

Observações

Ver também: Estender o SPIP

Autor Ricardo Porto Publié le :

Traductions : català, English, français, italiano, Nederlands, Português do Brasil