Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/lygia-teixeira/popup-go/archive/refs/heads/main.zipNo built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.
Plugin WordPress para criar pop-ups de imagem com carrossel, link por imagem e segmentação por página. O cadastro usa a Biblioteca de Mídia e não exige editar código nem tema.
Foi criado para atender sites institucionais que precisavam publicar avisos e campanhas de forma rápida. Está em uso em ambiente de produção.
✨ Funcionalidades
- Carrossel de imagens em um mesmo pop-up, com setas e indicadores (dots)
- Link opcional por imagem: cada imagem pode levar a um destino diferente
- Reordenação por arrastar e soltar no painel admin (jQuery UI Sortable)
- Onde exibir: página inicial, todas as páginas ou páginas específicas (multiseleção)
- Vários pop-ups ativos: exibidos em sequência, com intervalo de 5s após o fechamento do anterior
- Imagens responsivas: tamanho dedicado
popup_go_image(900×800, sem corte) comsrcset/sizes - Acessibilidade básica: botões com
aria-label
🔐 Segurança
Por ser um plugin que recebe dados do painel e os imprime no front-end, a entrada e a saída são tratadas explicitamente:
| Risco | Mitigação no código |
|---|---|
| CSRF no salvamento | wp_nonce_field + wp_verify_nonce |
| Edição por usuário sem permissão | current_user_can('edit_post', $post_id) |
| Dados arbitrários nas imagens | só IDs de anexo (intval) são persistidos; URLs vêm de wp_get_attachment_image_src |
| Links maliciosos | esc_url_raw ao salvar, esc_url ao exibir |
| Valor inesperado em "exibir em" | whitelist estrita (home, all, specific) |
| Quebra de ` |