Mini-Projecto · Site WordPress para um cliente
Contexto
Cada par/trio actua como agência: recebe um "cliente" fictício (escola, restaurante, ONG, banda, ginásio) e entrega um site WordPress completo — instalado, com tema personalizado via child theme, plugins, um custom post type e hardening de segurança.
Requisitos
Funcionais
- WordPress instalado (local: LocalWP/Docker/XAMPP).
- Child theme com personalizações de estilo.
- 5+ páginas/posts com conteúdo real do "cliente".
- 1 Custom Post Type relevante ao domínio (ex.: Eventos, Menu, Portfolio).
- Plugins: SEO, formulário de contacto, segurança, backup.
- 1 snippet de código próprio (action ou filter no child theme).
Não-funcionais
- Hardening de segurança aplicado e documentado.
- Backup configurado e testado (restaurar de facto).
- Dossier de entrega ao cliente (como gerir o site).
- Export da BD + ficheiros no Git (ou .zip de entrega).
Fases
Fase 1 · 1h
Briefing
- Escolher cliente e definir requisitos.
- Mapa do site (páginas, CPT, menu).
Briefing + sitemap (1 página).
Fase 2 · 1.5h
Instalação + setup
- WordPress local.
- Configuração inicial (permalinks, idioma, limpeza).
WP a correr + checklist pós-instalação.
Fase 3 · 2.5h
Child theme
- Criar child theme.
- Personalizar cores, tipografia, header/footer.
Child theme activo com identidade do cliente.
Fase 4 · 2h
Conteúdo + CPT
- 5+ páginas/posts com conteúdo real.
- Custom Post Type registado e populado.
Site com conteúdo navegável.
Fase 5 · 2h
Plugins + código
- SEO, contacto, segurança, backup.
- 1 action/filter próprio no child theme.
Plugins configurados + snippet documentado.
Fase 6 · 2h
Hardening + backup
- Aplicar checklist de segurança.
- Configurar e testar restauro de backup.
Relatório de segurança + prova de restauro.
Fase 7 · 1h
Entrega
- Dossier "como gerir o teu site".
- Demo 5 min como se fosse ao cliente.
Dossier + apresentação.
Critérios de avaliação
| Item | Peso |
|---|---|
| Instalação e configuração | 10% |
| Child theme personalizado | 20% |
| Conteúdo + Custom Post Type | 20% |
| Plugins adequados | 15% |
| Código próprio (hook) | 10% |
| Hardening de segurança | 15% |
| Backup testado | 5% |
| Dossier de entrega | 5% |
Reflexão
Em meia página: o que foi mais fácil/difícil comparado com programar de raiz (UC02834)? Quando recomendarias um CMS a um cliente e quando recomendarias código próprio? Que riscos de segurança te preocupam mais num CMS?