Drupal (CMS)

Definição

Drupal é um framework modular e um sistema de gerenciamento de conteúdo (CMS) escrito em PHP. Da mesma forma que os sistemas de gerenciamento de conteúdo mais modernos, o Drupal permite criar e organizar conteúdo, manipular a aparência, automatizar tarefas administrativas, e definir permissões e papéis para usuários e colaboradores.

Por ser desenvolvido em PHP, o Drupal é independente de sistema operacional, no entanto requer um servidor HTTP compatível com PHP e um Servidor de Banco de Dados para funcionar.

O Drupal é comumente descrito como um Framework de Gerenciamento de Conteúdo, pois além de oferecer as funcionalidades básicas de um CMS ele também implementa uma série de APIs robustas e apresenta uma estrutura modular que facilita o desenvolvimento de módulos extensivos.

Esta característica é tão marcante, que a comunidade de desenvolvedores é bem expressiva.

Leia mais em Wikipedia.


Leia antes


Aqui faço minhas anotações sobre a instalação e utilização do Drupal. Não sei se a forma como faço é a melhor ou mais correta, mas é assim que tenho feito até agora. Não pretendo que este material seja um tutorial muito menos definitivo. Portanto caso deseje utilizá-lo sinta-se a vontade, mas lembre-se de que NÃO HÁ NENHUMA GARANTIA.

Como é um material de consulta rápida, muitas coisas não foram detalhadas o que podem torná-lo obscuro para alguns. Caso deseje mais explicações sobre alguma etapa, por favor, utilize o formulário de contato e tenha paciência em aguardar uma resposta.

Se a sua pressa for grande, abaixo sugiro alguns links que devem fazer parte dos seus favoritos:

Instalação

Como eu faço uma instalação, separada em tópicos:

Começando

Instalação feita no sistema operacional Linux distribuição Kubuntu 9.04. Neste exemplo o release utilizado foi "drupal-6.10", o domínio será "novosite", a última tradução disponível era "drupal-6.4-pt-br-translations" e o usuário do sistema será "pinguim".

Os arquivos foram baixados no diretório "/home/pinguim/downloads/". Todas as operações no terminal são realizadas como usuário "root".

Dica: Primeiro faço uma instalação e configuração em um computador local e depois envio para o servidor.

Instalação do core

Baixar o a última versão em http://drupal.org
Estando no DocumentRoot do Apache descompacte o arquivo da pasta em que foi gravado.
tar xvzf /home/pinguim/downloads/drupal-6.10.tar.gz

Renomeie a pasta
mv drupal-6.10 novosite

Altere o dono e grupo do diretório recursivamente
chown -R pinguim. novosite/

Mudar o dono e grupo para o usuário apache em "defaults"
cd novosite/sites/
chown -R www-data. default

Criar o arquivo settings.php
cd default
cp -af default.settings.php settings.php

Criar os diretórios "themes" e "modules" e mudar dono e grupo
cd ../all
mkdir themes modules
chown -R pinguim. modules/ themes/

Instalação da tradução para o português

Baixe a tradução para português em http://traducao.drupal-br.org fazendo os seguintes passos:

  • No menu Navegação selecione exportar
  • Na seção Source data no campo Projeto: digite Drupal clique em Escolher projeto
  • Em Release selecione a última versão disponível
  • Na seção Format escolha as opções:
    • Tipo: -> Tradução
    • Format: -> Drupal 6 package format

E clique em Exportar

Estando no diretório novosite, descompacte a tradução
tar xvzf /home/pinguim/downloads/drupal-6.4-pt-br-translations.tgz

Mude o dono e grupo para o usuário apache de todos os arquivos terminados em ".po" (arquivos de tradução)
find -name "*.po" -exec chown www-data. {} \;

Crie o banco de dados e o usuário

Utilizo o phpmyadmin para criar um novo usuário chamado novosite e em Banco de Dados para usuário seleciono Criar Banco de Dados com o mesmo nome e conceder todos os privilégios.

Instalação e configurações iniciais do sistema

Pelo navegador acesse o endereço http://localhost

Selecione Portuguese, Brazil (Português) e clique em Select language.

Na próxima etapa Configuração do banco de dados preencha os campos da seguinte maneira:

  • Nome do banco de dados: novosite
  • Nome do usuário do banco de dados: novosite
  • Senha do banco de dados: senha-que-cadastrou
  • Então clique em Salvar e proseguir

    Em Configurar o site faça o seguinte:

    • Informações do site
      • Nome do site: "Nome ou título para o site"
      • Endereço de email do site: e-mail do administrador do site
    • Conta do administrado
      • Nome de usuário: Administrador
      • Endereço de e-mail: e-mail do administrador do site
    • Configurações do servidor
      • Fuso horário padrã: ...-0300
      • URLs limpas: Ativado se seu servidor suportar
      • Notificações de atualizações: marque esta opção

    Clique em Salvar e proseguir

    Instalação do Drupal completa
    Parabéns, o Drupal foi instalado com sucesso.

O seu novo site

Feita a instalação, no menu lateral, vamos em Administrar > Configuração do site.

Dicas:

  • Comentarei somente o itens que devo alterar agora. Conforme forem instalados novos módulos mais opções estarão disponíveis.
  • Ao selecionar Administrar você verá a área administrativa. Nela você pode controlar o funcionamento do seu site. Quando desejar clique em esconder descrições para uma melhor visualização

Configuração do site
Configurar as opções básicas do site.

Data e hora

Verifique se as informações estão corretamente configuradas:

  • Fuso horário padrão: -0300
  • Formatação: dd/mm/aaaa

Desempenho

Caso ative a opção Modo de cache: ao instalar novos módulos deverá verificar se não há a seguinte mensagem
Os seguintes módulos são incompatíveis com o modo agressivo de cache e não vão funcionar corretamente: nome_do_módulo.

Procure deixar como estão as configurações caso não tenha certeza de como usar.

Informações do site

Línguas

Desmarque a opção English

Informações do site
Atualize as informações do seu site.

URLs limpas

Ative a opção URLs limpas:. Isso vai depender das configurações do seu servidor.

Gerenciamento de usuários

Após as configurações básicas, leia mais em o seu novo site. vou em Administrar > Gerenciamento de usuários.

Opções de usuário

Essas são as configurações inicias, ao longo do tempo, conforme for instalando novos módulos e criando usuários, será necessário configurar papéis e permissões.
Escolha as opções que melhor atenderem as suas necessidades.

Opções de registro de usuários
Em Cadastro público: marco a opção Apenas um administrador pode criar uma nova conta de usuário.

Assinaturas:
Em Permitir assinaturas: marco a opção Ativado

Construção do site

Agora vamos em Administrar > Construção do site onde controlamos a aparência e funcionamento do seu site.

Módulos

Ativaremos alguns módulos disponíveis por padrão. Conforme na apresentação existem muitos módulos adicionais que estendem as funcionalidades do sistema.

Neste momento temos duas categorias de módulos disponíveis: Núcleo - opcional e Núcleo - obrigatório. Observe que somente a categoria opcional poderá ser alterada.

Marque o campo Ativado para cada módulo que necessitar e depois clique em Salvar configurações.

Módulos que normalmente ativo, isso vai depender da necessida:

  • Aggregator
  • Book
  • Contact
  • Path
  • PHP filter
  • Poll
  • Profile
  • Statistics
  • Tracker
  • Upload

Após clicar em Salvar as configurações aparece "Importando as traduções da interface" e em seguida um resumo das ativadas realizadas pelo sistema.

Se fez alguma alteração em Configuração do site > Desempenho > Modo de cache: verifique se algum dos módulos que ativou não tem incompatibilidade.

Dependendo dos módulos instalados em construção do site estarão disponíveis novos menus para configuração.

Temas

Em Administrar > Construção do site > Temas temos a lista de temas disponíveis por padrão.
Na parte superior da janela temos as abas Lista e Configurar.

Selecione a aba Configurar e altere as Opções globais ao seu gosto.

Ao lado da aba Opções globais tem a aba Garland que o único tema ativo e o padrão. Selecionando Garland as alterações realizadas serão específicas para o tema.

Blocos

Em Administrar > Construção do site > Blocos podemos exibir e posicionar blocos em uma das 5 áreas disponíveis para o tema Garland, sendo estas:

  • Cabeçalho
  • Barra lateral esquerda
  • Conteúdo
  • Barra lateral direita
  • Rodapé
  • Em cada área poderá existir mais de um bloco e posicioná-los não ordem desejada.

Finalizando

Este pode ser considerado o último passo de uma instalação básica.

Em Administrar > Relatórios temos:

Atualizações disponíveis

Na aba Listar você pode encontrar informações sobre novas atualizações para os seus módulos e temas já instalados.

Na aba Configurações em Endereço de e-mail a ser notificado quando houverem novas atualizações: cadastre o e-mail a ser notificado.

Relatório de status

Nesta página você pode ter uma visão geral das configurações do seu site e também de algum problema eventualmente detectado na sua instalação do Drupal.

Tarefas agendadas
Para que o sistema rode automaticamente em busca de Atualizações disponíveis no sistema operacional Linux faça da seguinte forma:

  • Em um terminal digite: sudo apt-get install lynx
  • Depois no diretório /etc edite o arquivo crontab acrescentando a seguinte linha
    0-59/30 * * * * root /usr/bin/lynx -source http://localhost/novosite/cron.php

Obs.: Se a sua instalação local não tem um serviço de SMTP instalado, o que é provável, o sistema não enviará e-mails comunicando a existência de atualizações, mas no site ao entrar na área administrativa verá a seguinte mensagem:
Um ou mais problemas foram detectados na sua instalação do Drupal. Verifique o relatório de status para maiores informações.

Administrar

Construção do site

Controla a aparência e funcionamento do seu site.

Blocos

Atribuir um bloco a uma região, e para controlar a ordem de blocos dentro das regiões.

Módulos

Módulos são extensões que ampliam as funcionalidades do núcleo do Drupal.

Automated Logout

Este módulo adiciona um tempo para logout se o sistema ficar sem operação.

Útil para fechar a conta de usuário automaticamente, caso ele esqueça de sair corretamente e simplesmente feche o navegador, ou fique por um longo período sem atividade.

CAPTCHA - Controle de SPAM

Existem três opções para serem ativadas.

  • CAPTCHA - Base do sistema de controle de SPAM
  • Image CAPTCHA - Fornece uma imagem para a base
  • Text CAPTCHA - Fornece um texto simples para a base

Como eu gosto de imagem para verificação ativo o CAPTCHA e Image CAPTCHA.

Image

Ativo neste módulo dois itens:

  • Image - Permite enviar, redimensionar e ver imagens
  • Image Attach - Permite anexar facilmente nodes de imagens em outros tipos de conteúdo
  • Image Gallery - Permite a ordenação e exibição de galerias de imagens baseado em categorias

Lightbox2

Na seção Outros estará disponível o módulo Lightbox2 é só ativar e clicar em Salvar configurações

Panels

Para instalar o módulo Panels temos que instalar o módulo Chaos tool suite.

No módulo Chaos tool suite ative:
- Chaos tools
- Page manager
- Views content panes (depende do módulo views para ser ativado)

No módulo Panels ative:
- Panel nodes
- Panels

Pathauto

Na seção Outros estará disponível o módulo Pathauto. Este módulo, para ser halitado, tem dependência do módulo Token.

Portanto ative o módulo Token e então Pathauto.

Views

Para habilitar o módulo Views ative:
- Views
- Views UI

Weather

Este módulo exibe a Previsão do Tempo

Depois de instalado vá para Configuração do site em Weather e configure.

URLs alternativas

Com o módulo Pathauto instalado estará disponível a aba Automated alias settings.

Configurações gerais
Para ativar Transliterate prior to creating alias no diretório do módulo Pathauto renomeie o arquivo i18n-ascii.example.txt para i18n-ascii.txt

Node path settings

- Default path pattern (applies to all node types with blank patterns below): conteudo/[title-raw]
- Pattern for all Artigo paths: artigo/[title-raw]

Acrescente respectivamente para todas as linhas menos Pattern for all Página paths: que deverá ficar em branco.

Taxonomy term path settings

- Default path pattern (applies to all vocabularies with blank patterns below): categoria/[vocab-raw]/[catpath-raw]

User-tracker path settings

- Pattern for user-tracker page paths: usuarios/[user-raw]/track

User path settings

- Pattern for user account page paths: usuario/[user-raw

Salvar configurações

Gerenciamento de usuários

Gerencie os usuários de seu site, grupos e o acesso aos recursos do site.

CAPTCHA - Controle de SPAM

Configurando o módulo CAPTCHA

Oções gerais

- Ativo Add CAPTCHA administration links to forms para que o administrador possa habilitar ou não o CAPTCHA durante a criação de um conteúdo.

Em Challenge type per form para todos os form_id seleciono Image (image_captcha) na coluna Challenge type (module).

Em Challenge description substituo por:
Isso garante que uma pessoa, e não um programa automático.

Em Persistence seleciono:
Always add a challenge.

Então pressiono em Salvar

Image CAPTCHA
Faço uma cópia de um arquivo de fonte True Type Font (TTF) para o diretório "sites/all/modules/captcha/image_captcha/fonts".

Em Code settings -> Characters to use in the code: deixo somente esses caracteres:
aAbBCdEeFfGHhijKLMmNPQRrSTtWXYZ23456789

Seleciono Salvar configurações

Na mesma página, agora com a fonte já disponível, em Font settings -> Font selecione a nova fonte.

Em Distortion and noise gosto de configurar assim:
Distortion level: low
Smooth distortion marcado
Add salt and peper noise marcado
Noise level: low

Seleciono Salvar configurações

Permissões

As permissões permitem que você controle o que usuários podem fazer no seu site.

Por exemplo, o módulo contact pode dar permissão para anonymous user ou somente para usuário autenticado ou para os dois.

No caso do Formulário de contato ainda temos que em Construção do site:
Menus -> navegação ativar item Contato e;
Formulário de contato,/strong> criar uma categoria.

Organizar conteúdo

Administra o conteúdo do seu site.

Galerias de imagem

No módulo Imagem habilitando a opção Image Gallery permite a ordenação e exibição de galerias de imagens baseado em categorias.

Na aba Adicionar galeria criamos galerias (que são categorias) e ordenamos no item Superior além de atribuir um Peso para ordená-las.

Tipos de conteúdo

Aṕos a instalação do Drupal, para cada tipo de conteúdo existente ou um novo tipo, faço as alterações necessárias.

Em Administrar > Tipo de contéudo temos duas abas:

  • Listar - Lista todos os tipos de documentos existentes no sistema
  • Novo tipo de documento - Criar um novo tipo de documento

Novo tipo de documento

Essas configurações valem para criar ou alterar um documento existente.

Identificação

  • Nome - Defina um novo sugestivo para o usśario identificar o tipo de documento
  • Tipo - Identificador para o sistema

Configuração do formulário de envio

  • Rótulo do campo "título": *
  • Rótulo do campo "corpo": - Observe que não tem o asterisco, portanto, não é obrigatório, mas é uma boa maneira rotular o campo para o usuário
  • Número mínimo de palavras:
  • Explicações ou regras para envio:

Configurações de workflow

  • Opções padrão:
  • Suporte a Multi-idomas: - Em Administrar > Configuração do site > Idiomas desativamos o idioma Inglês
  • Anexos:< - Em Administrar > Configuração do site > Administrar › Módulos ativamos o módulo Upload. É necessário ainda que em permissões seja ativado no módulo upload a opção enviar arquivos

Relatórios

Veja relatórios do sistema, logs e outras informações de estado.