Partilhar: WhatsApp
aulify · Sebenta
UC · Unidade de Competência · UC00625

Sebenta · Instalar e configurar um CMS com base de dados (UC00625)

WordPress do zero — servidor local, MySQL, temas, plugins, loja online e segurança
—h · — pontos crédito Curso: T. Inform. Gestão ↗ Referencial oficial SNQ
Índice

Introdução

Esta sebenta ensina a construir um website profissional com um CMS, do primeiro clique até uma loja online a funcionar. Usamos o WordPress, o sistema de gestão de conteúdos mais usado do mundo (cerca de 43% de todos os sites), gratuito e com um ecossistema imenso de temas e plugins. Tudo o que aprenderes — servidor, base de dados, painel de administração, temas, plugins, e-commerce, segurança — é transferível para qualquer outro CMS.

O percurso é o de um profissional real: primeiro montamos um ambiente de trabalho local (o site corre no teu computador), depois planeamos o site, construímo-lo com tema e plugins, acrescentamos uma loja, e por fim tratamos de segurança, backups, acessibilidade e proteção de dados. No fim, deves conseguir entregar um site completo a um cliente.

Objetivos de aprendizagem (referencial): instalar um CMS numa máquina local ou servidor web; criar e gerir a base de dados; planear a estrutura de páginas; criar, editar e remover páginas, menus, conteúdos e artigos; configurar temas, plugins e uma loja online; e garantir segurança, backups, acessibilidade e conformidade legal.

1. O que é um CMS e como funciona um site dinâmico

Um CMS (Content Management System, Sistema de Gestão de Conteúdos) é um software que permite criar e gerir um website sem programar tudo de raiz. A ideia-chave é a separação de responsabilidades:

Site estático vs site dinâmico

Um site estático é um conjunto de ficheiros HTML fixos: o que está no ficheiro é o que o visitante vê. Simples, mas para mudar uma vírgula é preciso editar o código.

Um site dinâmico (como o WordPress) gera as páginas no momento. Quando alguém abre loja.pt/sobre, acontece isto:

Browser → pedido → Servidor web (Apache)
                      → corre PHP (WordPress)
                        → pergunta à base de dados (MySQL): "dá-me a página Sobre"
                        ← conteúdo
                      ← HTML já montado
Browser ← página pronta

Por isso um CMS precisa de três tecnologias a trabalhar juntas — o stack:

Peça Papel
Apache servidor web: recebe os pedidos
PHP linguagem que gera as páginas
MySQL / MariaDB base de dados: guarda o conteúdo

O WordPress são ficheiros PHP que assentam neste stack. Para desenvolver, instalamos tudo de uma vez com o XAMPP.

2. Servidor local com XAMPP

Antes de pôr um site online, desenvolve-se localmente — o site corre no próprio computador, no chamado localhost. É rápido, gratuito e sem risco.

O XAMPP é um instalador que traz Apache + MariaDB (MySQL) + PHP + phpMyAdmin de uma só vez (Windows, macOS, Linux).

Passo a passo

  1. Descarregar e instalar o XAMPP de apachefriends.org.
  2. Abrir o Painel de Controlo do XAMPP.
  3. Clicar Start no Apache e no MySQL. Ambos devem ficar verdes.
  4. Abrir http://localhost no browser — deve aparecer a página do XAMPP.

Os sites vivem na pasta htdocs (ex.: C:\xampp\htdocs). Cada subpasta é um site:

htdocs/
 └── loja/        →  http://localhost/loja

Erro típico: Apache não arranca

Quase sempre é a porta 80 ocupada (Skype, IIS, outro servidor). Solução: no XAMPP, Config → httpd.conf, mudar Listen 80 para Listen 8080 e aceder a http://localhost:8080.

3. A base de dados

Todo o conteúdo do WordPress — artigos, páginas, utilizadores, definições, comentários — vive em tabelas MySQL. Uma instalação cria cerca de 12 tabelas com o prefixo wp_ (wp_posts, wp_users, wp_options, …).

Conceitos de base de dados que precisas de dominar:

Gerimos a base de dados com o phpMyAdmin, uma interface web para o MySQL, em http://localhost/phpmyadmin.

Exemplo resolvido — criar a base de dados

  1. Abrir http://localhost/phpmyadmin.
  2. Separador Bases de dados → escrever loja_wpCriar.
  3. Criar um utilizador dedicado (boa prática de segurança):
  4. Contas de utilizador → Adicionar conta de utilizador.
  5. Nome: loja_user; Host: localhost; palavra-passe forte.
  6. Em Base de dados para a conta, dar todos os privilégios apenas em loja_wp.

Guarda estes três valores — vais precisar deles na instalação: base de dados loja_wp, utilizador loja_user, palavra-passe.

Backup da base de dados

No phpMyAdmin: selecionar a base → Exportar → Executar → descarrega um ficheiro .sql com tudo. Para restaurar: Importar esse ficheiro. A base de dados é o ativo mais valioso do site; faz backups regulares.

⚠️ Nunca uses o utilizador root sem palavra-passe num site real. Um utilizador por base de dados, com privilégios mínimos.

4. Instalar o WordPress

Com a base de dados criada, instalamos o CMS.

Exemplo resolvido — a instalação em 5 minutos

  1. Descarregar o WordPress em pt.wordpress.org (.zip).
  2. Extrair o conteúdo para htdocs/loja.
  3. Abrir http://localhost/loja — arranca o instalador.
  4. Escolher Português (Portugal).
  5. Introduzir os dados da base de dados: nome loja_wp, utilizador loja_user, a palavra-passe, host localhost, prefixo wp_.
  6. Definir o título do site e a conta de administrador (utilizador, palavra-passe forte, email).
  7. Instalar WordPress → entrar em http://localhost/loja/wp-admin.

O ficheiro wp-config.php

O instalador cria o wp-config.php, que contém a ligação à base de dados:

define( 'DB_NAME', 'loja_wp' );
define( 'DB_USER', 'loja_user' );
define( 'DB_PASSWORD', '••••••••' );
define( 'DB_HOST', 'localhost' );
$table_prefix = 'wp_';

É o ficheiro mais sensível do site — contém as palavras-passe. Nunca o partilhes nem o coloques num repositório público.

5. O painel de administração

O WordPress tem dois lados: o backend (/wp-admin, onde geres) e o frontend (o site que o visitante vê). No backend, o menu principal:

Configurações essenciais logo após instalar

Artigos vs Páginas é uma distinção que confunde principiantes: usa Artigos para conteúdo com data (blog); usa Páginas para conteúdo permanente (Sobre, Contactos, Loja).

6. Planear o site — sitemap e wireframe

Um profissional nunca começa a construir às cegas. Antes de tocar no WordPress, planeia-se com duas ferramentas.

O mapa do site (sitemap) é um diagrama em árvore das páginas e da sua hierarquia:

Início
├── Loja
│   ├── Categoria A
│   └── Categoria B
├── Sobre nós
├── Blog
│   └── Artigo
└── Contactos

O wireframe é um esboço do layout de cada página — onde ficam o cabeçalho, o conteúdo, a barra lateral e o rodapé — sem cores nem conteúdo real. Faz-se em papel, no Figma ou no diagrams.net. Estes dois documentos guiam toda a construção e poupam horas de retrabalho.

7. Temas — o design

O tema define o aspeto do site (cores, tipografia, layout) sem tocar no conteúdo. Trocar de tema muda o design mas não apaga os conteúdos.

Erro a evitar: editar diretamente os ficheiros do tema. As atualizações apagam essas alterações. Se precisares mesmo de mexer no código, usa um tema-filho (child theme).

8. Plugins e widgets

Os plugins adicionam funcionalidades ao WordPress. Instalam-se em Plugins → Adicionar → Instalar → Ativar. Plugins úteis:

Plugin Função
Yoast SEO referenciação (SEO)
Contact Form 7 / WPForms formulários
WooCommerce loja online
UpdraftPlus backups
Wordfence segurança

Os widgets são pequenos blocos colocados em áreas fixas (barra lateral, rodapé): pesquisa, últimos artigos, menu.

⚠️ Menos é mais. Cada plugin é código extra — mais lentidão e mais superfície de ataque. Instala só o necessário, de fontes de confiança, e mantém-nos atualizados.

9. Páginas, menus e conteúdos

Seguindo o mapa do site, criam-se os conteúdos:

Cria, edita e remove páginas e artigos conforme o plano. O conteúdo web combina ícones, botões, texto, imagem, vídeo, formulários e mapas — com equilíbrio, sem sobrecarregar.

10. Loja online com WooCommerce

Para vendas online, o plugin WooCommerce transforma o WordPress numa loja completa.

Instalação e configuração

  1. Plugins → Adicionar → WooCommerce → Instalar → Ativar.
  2. O assistente pede: morada da loja, moeda (EUR), tipos de produto, impostos.
  3. São criadas automaticamente as páginas Loja, Carrinho, Finalizar compra e Conta.

Produtos

Em Produtos → Adicionar: nome, descrição, preço, imagem, categoria e stock (SKU e quantidade). Tipos: simples, variável (tamanhos/cores) e virtual/descarregável.

Pagamentos e envios

Em WooCommerce → Definições → Pagamentos, ativam-se os métodos: transferência bancária, à cobrança, e passarelas como Multibanco/MB Way (IfThenPay), PayPal ou Stripe. Em Envios, definem-se zonas e portes.

Testa sempre uma compra completa (adicionar ao carrinho → finalizar → confirmar) antes de abrir a loja ao público.

11. Utilizadores e perfis

O WordPress tem perfis (roles) com privilégios diferentes:

Perfil Pode
Administrador tudo (plugins, temas, utilizadores)
Editor gerir todo o conteúdo
Autor publicar os próprios artigos
Colaborador escrever, mas não publicar
Subscritor ler e gerir o próprio perfil

Regra de ouro: privilégio mínimo — cada pessoa recebe só o que precisa, e há um único administrador. Um editor não deve poder instalar plugins.

12. Segurança, atualizações e backups

A maioria dos sites atacados estava desatualizada. Boas práticas:

13. Acessibilidade, direitos de autor e RGPD

Um site profissional respeita três frentes legais e éticas:

Erros comuns

Glossário

Síntese

Construir um site com um CMS segue sempre a mesma ordem: ambiente (servidor local com XAMPP) → base de dados (phpMyAdmin) → instalar o WordPressplanear (sitemap + wireframe) → temapluginsconteúdos (páginas, menus, media) → loja (WooCommerce) → utilizadores, segurança, backupsacessibilidade, direitos de autor e RGPD. Domina este fluxo no WordPress e adaptas-te a qualquer CMS.

Exercícios resolvidos

1. Ordena os passos: (a) instalar WordPress, (b) criar base de dados, (c) iniciar Apache e MySQL, (d) planear o sitemap.

Resolução: c → b → a → d não; a ordem correta é c (ligar o servidor) → b (criar a BD) → a (instalar o WP) → d. Na prática o planeamento (d) pode até ser o primeiro em papel, mas dentro do ambiente técnico a base de dados vem antes da instalação do WordPress.

2. O Apache não arranca no XAMPP. Qual a causa mais provável e a solução?

Resolução: a porta 80 está ocupada (Skype, IIS). Solução: mudar o Apache para a porta 8080 em httpd.conf e aceder por http://localhost:8080.

3. Precisas de vender t-shirts em vários tamanhos e cores. Que tipo de produto WooCommerce usas e porquê?

Resolução: um produto variável — permite definir atributos (tamanho, cor) e variações com preço/stock próprios, em vez de criar um produto por combinação.

4. Um colega diz "instalei 25 plugins para o site ficar completo". Que lhe respondes?

Resolução: que menos é mais — cada plugin é código extra que abranda o site e aumenta a superfície de ataque. Deve manter só os essenciais (SEO, formulário, loja, backup, segurança), de fontes de confiança e atualizados.

5. Vais atualizar o WordPress e vários plugins de um site em produção. Qual é o primeiro passo?

Resolução: fazer um backup completo (ficheiros + base de dados) e guardá-lo fora do servidor. Se a atualização correr mal, restauras.