WP Manifestindependent plugin directory
manifest / utilities / plugin-voting

Sistema de Votação

Plugin de votação simples.

★ 0stars

Install

Download source zip No release zip yet

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/nelclassico/plugin-voting/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Sistema de Votação - Plugin WordPress

Um plugin WordPress completo e profissional para gerenciar eleições, candidatos e votações online com segurança e auditoria.

Características

✅ Gerenciamento de Eleições

  • Criar eleições com datas de início e fim
  • Ativar/desativar eleições
  • Múltiplos cargos por eleição

✅ Gerenciamento de Candidatos

  • Adicionar candidatos com foto e biografia
  • Número de candidato customizável
  • Campos de exibição configuráveis

✅ Sistema de Votação Seguro

  • Interface intuitiva para votação
  • Suporte a múltiplos votos por cargo
  • Validação de voto duplicado
  • Confirmação antes de submeter

✅ Relatórios e Resultados

  • Ranking de candidatos em tempo real
  • Visualização de resultados por cargo
  • Exportação de dados

✅ Segurança

  • Validação de CPF brasileiro
  • Proteção contra voto duplicado
  • Auditoria de votos com IP
  • Nonces do WordPress para proteção CSRF
  • Verificação de permissões

Requisitos

  • WordPress 5.0+
  • PHP 7.4+
  • MySQL 5.7+
  • Usuário com permissão de administrador

Instalação

Método 1: Upload do Plugin

  1. Faça download do arquivo wp-voting-plugin.zip
  2. No painel do WordPress, vá para Plugins > Adicionar Novo
  3. Clique em Enviar Plugin
  4. Selecione o arquivo ZIP e clique em Instalar Agora
  5. Após a instalação, clique em Ativar Plugin

Método 2: FTP

  1. Descompacte o arquivo wp-voting-plugin.zip
  2. Envie a pasta wp-voting-plugin para /wp-content/plugins/ via FTP
  3. No painel do WordPress, vá para Plugins e ative o plugin

Como Usar

Para Administradores

  1. Acessar o Painel

    • No menu lateral do WordPress, clique em Votação
    • Você verá as opções: Eleições, Resultados e Configurações
  2. Criar uma Eleição

    • Clique em Eleições
    • Clique em Nova Eleição
    • Preencha o título, descrição e datas
    • Clique em Criar Eleição
  3. Criar Cargos

    • Selecione a eleição
    • Clique em Gerenciar Cargos
    • Clique em Novo Cargo
    • Preencha os dados e clique em Criar Cargo
  4. Adicionar Candidatos

    • Selecione o cargo
    • Clique em Gerenciar Candidatos
    • Clique em Novo Candidato
    • Preencha os dados (incluindo foto) e clique em Criar Candidato
  5. Ativar Eleição

    • Na lista de eleições, clique em Ativar
    • Os membros podem começar a votar
  6. Visualizar Resultados

    • Clique em Resultados
    • Selecione a eleição
    • Veja o ranking dos candidatos

Para Membros

  1. Completar Perfil

    • Use o shortcode [wp_voting_profile] em uma página
    • Adicione seu CPF (obrigatório)
    • Salve as alterações
  2. Votar

    • Use o shortcode [wp_voting] em uma página
    • Selecione os candidatos desejados
    • Confirme e submeta seus votos
  3. Ver Resultados

    • Use o shortcode [wp_voting_results] em uma página
    • Visualize o ranking dos candidatos

Shortcodes

[wp_voting]

Exibe a interface de votação. Requer que o usuário esteja logado e tenha completado seu perfil.

[wp_voting]

[wp_voting_results]

Exibe os resultados da votação.

[wp_voting_results]

[wp_voting_profile]

Exibe o formulário de perfil do membro.

[wp_voting_profile]

Estrutura do Banco de Dados

O plugin cria as seguintes tabelas:

  • wp_voting_elections - Eleições
  • wp_voting_positions - Cargos
  • wp_voting_candidates - Candidatos
  • wp_voting_votes - Votos
  • wp_voting_members - Dados de membros
  • wp_voting_audit_log - Log de auditoria

API REST

O plugin fornece endpoints REST para integração:

Eleições

  • GET /wp-json/wp-voting/v1/elections - Listar eleições
  • POST /wp-json/wp-voting/v1/elections - Criar eleição

Cargos

  • GET /wp-json/wp-voting/v1/positions?election_id=1 - Listar cargos
  • POST /wp-json/wp-voting/v1/positions - Criar cargo

Candidatos

  • GET /wp-json/wp-voting/v1/candidates?position_id=1 - Listar candidatos
  • POST /wp-json/wp-voting/v1/candidates - Criar candidato

Votos

  • POST /wp-json/wp-voting/v1/votes - Registrar voto

Resultados

  • GET /wp-json/wp-voting/v1/results?election_id=1 - Obter resultados

Validações

CPF

  • Validação automática de CPF brasileiro
  • Formato aceito: 123.456.789-00 ou 12345678900
  • CPF duplicado não é permitido

Votação

  • Membro deve estar registrado (ter CPF)
  • Eleição deve estar ativa
  • Dentro do período de votação
  • Mínimo 1 voto obrigatório
  • Máximo de votos definido por cargo
  • Não é permitido votar duas vezes no mesmo candidato

Segurança

  • Validação de CPF brasileiro
  • Proteção contra voto duplicado
  • Controle de acesso por role (admin/user)
  • Nonces do WordPress para proteção CSRF
  • Auditoria de votos com IP
  • Sanitização de entrada
  • Escapagem de saída

Troubleshooting

Problema: Shortcode não funciona

Solução:

  • Verifique se o plugin está ativado
  • Certifique-se de que o usuário está logado (para [wp_voting])
  • Verifique se o shortcode está digitado corretamente

Problema: Erro ao criar eleição

Solução:

  • Verifique se você tem permissão de administrador
  • Certifique-se de que a data de início é anterior à data de término
  • Verifique se o banco de dados tem espaço disponível

Problema: Membro não consegue votar

Solução:

  • Verifique se o membro completou seu perfil com CPF
  • Verifique se a eleição está ativa
  • Verifique se estamos dentro do período de votação
  • Verifique se o membro já votou neste candidato

Problema: Banco de dados não foi criado

Solução:

  • Desative e reative o plugin
  • Verifique se o usuário do banco de dados tem permissão para criar tabelas
  • Verifique os logs de erro do WordPress

Suporte

Para dúvidas ou problemas, entre em contato com o desenvolvedor do plugin.

Changelog

v1.0.0 (2024)

  • ✨ Lançamento inicial
  • ✅ Sistema de eleições completo
  • ✅ Votação segura
  • ✅ Relatórios em tempo real
  • ✅ Auditoria de votos
  • ✅ API REST

Licença

GPL v2 ou posterior


Desenvolvido com ❤️ para sistemas de votação seguros e transparentes