Title: Democracy Poll
Author: Timur Kamaev
Published: <strong>2 de febrero de 2015</strong>
Last modified: 25 de junio de 2026

---

Buscar plugins

![](https://ps.w.org/democracy-poll/assets/icon-256x256.png?rev=2832208)

# Democracy Poll

 Por [Timur Kamaev](https://profiles.wordpress.org/tkama/)

[Descargar](https://downloads.wordpress.org/plugin/democracy-poll.zip)

 * [Detalles](https://es.wordpress.org/plugins/democracy-poll/#description)
 * [Valoraciones](https://es.wordpress.org/plugins/democracy-poll/#reviews)
 * [Desarrollo](https://es.wordpress.org/plugins/democracy-poll/#developers)

 [Soporte](https://wordpress.org/support/plugin/democracy-poll/)

## Descripción

This plugin provides an intuitive and powerful system for creating polls, with features
such as:

 * Customizable single-choice and multiple-choice voting
 * Optional custom answers submitted by visitors
 * Poll end dates
 * Optional restriction of voting to registered users
 * Multiple poll designs
 * And more — see the changelog for details

**Democracy Poll** is compatible with major cache plugins, including W3 Total Cache,
WP Super Cache, Wordfence, Quick Cache, and others.

Designed for ease of use and performance, it offers:

 * A «Quick Edit» button for admins, shown directly above a poll
 * A plugin menu in the admin toolbar
 * Inline poll CSS
 * Conditional JavaScript loading only when a poll is rendered
 * And more — check the changelog for details

### Más información

Democracy Poll is a modern version of the original, well-regarded plugin by the 
same name. Andrew Sutherland introduced the original plugin in 2006, including the
innovative ability for visitors to add their own answers. This version retains the
name and core idea but has been completely rewritten.

**Key features:**

 * Create new polls
 * Cache plugin compatibility (e.g. W3 Total Cache, WP Super Cache)
 * Allow visitors to add their own answers
 * Multiple-choice voting support
 * Automatic poll closing after a specified end date
 * Display random polls
 * Restrict voting to registered users (optional)
 * Quick poll editing for administrators
 * Edit vote counts
 * Allow users to change their votes
 * Voter tracking via IP address, cookies, or WordPress user ID, with optional vote
   clearing
 * Embed polls in posts via `[democracy]` shortcode (visual editor button available)
 * Widget support (optional)
 * Admin bar menu for easy access (optional)
 * Load front-end assets only when a poll is rendered
 * Add custom notes under polls
 * Customize designs via CSS themes

Multisite support has been available since version 5.2.4.

### Usage

### Widget

 1. Go to `WP Admin  Appearance  Widgets` and add the `Democracy Poll` widget
 2. Place it in a sidebar
 3. Configure settings
 4. Done

### Template Code

In your theme file (e.g. `sidebar.php`), add:

    ```
    <?php if ( function_exists( 'democracy_poll' ) ) { ?>
        <div class="sidebar-section">
            <h2>Polls</h2>
            <div class="my-poll">
                <?php democracy_poll(); ?>
            </div>
        </div>
    <?php } ?>
    ```

 * To show a specific poll: `<?php democracy_poll( 3 ); ?>` (replace `3` with your
   poll ID)
 * To embed a specific poll in a post, use `[democracy id="2"]` shortcode.
 * To embed a random poll in a post, use `[democracy]` shortcode.

#### Poll Archive

To show the poll archive:

    ```
    <?php democracy_archives( $hide_active, $before_title, $after_title ); ?>
    ```

## Capturas

[⌊Single vote view⌉⌊Single vote view⌉[

Single vote view

[⌊Single result view⌉⌊Single result view⌉[

Single result view

[⌊Multiple vote view⌉⌊Multiple vote view⌉[

Multiple vote view

[⌊Admin polls list⌉⌊Admin polls list⌉[

Admin polls list

[⌊Admin edit poll⌉⌊Admin edit poll⌉[

Admin edit poll

[⌊Add poll admin page⌉⌊Add poll admin page⌉[

Add poll admin page

[⌊General settings⌉⌊General settings⌉[

General settings

[⌊Theme settings⌉⌊Theme settings⌉[

Theme settings

[⌊Text customization⌉⌊Text customization⌉[

Text customization

## FAQ

### Does this plugin clean itself up after uninstalling?

Yes. Deleting the plugin removes all of its options and data.

## Reseñas

![](https://secure.gravatar.com/avatar/3041d6ea1921dd56968b44eb29eaa3fc2d4f8ee54d3214311bbc73e40095528b?
s=60&d=retro&r=g)

### 󠀁[Unresolved security issue and confusing UX](https://wordpress.org/support/topic/unresolved-security-issue-and-confusing-ux-2/)󠁿

 [clip1492](https://profiles.wordpress.org/clip1492/) 24 de agosto de 2025

I decided not to use this plugin for two reasons: Unresolved vulnerability – A critical
security issue has been reported since 1 years and the author has not addressed 
it nor responded in the support forum, which is concerning. Poor Frontend UX – The
voting flow is unnecessarily complicated. Results are shown before voting (if “show
results” is enabled), and the voting process takes three clicks: first click a “
Vote” button under the results, then select the option, and click again to confirm
the vote. A smoother flow would be letting users vote directly with a single click
on the option, then rewarding them with the results, or a link to reveal them.Because
of these issues, I switched to another popular free plugin, which has not known 
security issues and a straight user experience.

![](https://secure.gravatar.com/avatar/536a0f234e517816fab73a1f39e609c352f574c3803cff282a01472f321e3585?
s=60&d=retro&r=g)

### 󠀁[Perfect for Civic Organizations](https://wordpress.org/support/topic/perfect-for-civic-organizations/)󠁿

 [](https://profiles.wordpress.org/forresthamm/) 19 de mayo de 2025

Easy to operate – thank you for your efforts!

![](https://secure.gravatar.com/avatar/37e5c131432bdc79d75520d216b286862bfbf7cc6c1bfbde69a984b5de5412bf?
s=60&d=retro&r=g)

### 󠀁[Role problem](https://wordpress.org/support/topic/role-problem-2/)󠁿

 [senseart](https://profiles.wordpress.org/senseart/) 11 de mayo de 2025

I have a problem.When trying to create a poll from the «Editor» role, it gives an
error «Low capability to add/edit poll».Even when I check all roles in Settings,
there is still no permission.This happens in the latest versions of the plugin.For
now, I have reverted to version (5.6.0) so that I can work.Does anyone have a similar
problem?My configuration is:WordPress 6.8.1PHP 8.0

![](https://secure.gravatar.com/avatar/ba2e76aa04b013f091ff4d56cbc4c6a1ded3365cb237c45f478f4f03eb752bd3?
s=60&d=retro&r=g)

### 󠀁[thanks for 6.0.4, please address CVE-2024-33920](https://wordpress.org/support/topic/works-as-expected-187/)󠁿

 [bummtschak](https://profiles.wordpress.org/bummtschak/) 28 de abril de 2025

Thanks for the 6.0.4 update. Sadly it does not mention a fix for CVE-2024-33920 
which has been in 6.0.3 and earlier versions. Hope this can be resolved. https://
cve.org/CVERecord?id=CVE-2024-33920

![](https://secure.gravatar.com/avatar/6c8a9e134f21ed1f29135ccdeafec15f848231a77505923575d59428cd6db225?
s=60&d=retro&r=g)

### 󠀁[Great plugin!](https://wordpress.org/support/topic/great-plugin-40290/)󠁿

 [Harald](https://profiles.wordpress.org/harald-geisler/) 17 de marzo de 2025

I wanted to take a moment to express my sincere appreciation for the work you’ve
done creating and maintaining this plugin. It’s clear that a lot of thought and 
effort went into it, and it shows! As a new user, I’m impressed with its range of
options and functionalities—it’s almost everything I was hoping for. Your dedication
to delivering a quality tool is truly commendable! If you accept suggestions for
additional features, I would love to see Panachage and cumulative voting integrated
into the plugin. These enhancements would take its capabilities to the next level.
Thank you once again for this fantastic plugin. Keep up the outstanding work!

![](https://secure.gravatar.com/avatar/cd4bf5ad28b1eb36e0cc0c73fda49a08bb6e024e8ee5e743eb0dca0c8e6080b1?
s=60&d=retro&r=g)

### 󠀁[Great plugin for making a survey](https://wordpress.org/support/topic/great-plugin-for-making-a-survey/)󠁿

 [pagrob](https://profiles.wordpress.org/pagrob/) 8 de enero de 2025

Great plugin for making a survey, simple to use and with many options.

 [ Leer todas las 85 reseñas ](https://wordpress.org/support/plugin/democracy-poll/reviews/)

## Colaboradores y desarrolladores

«Democracy Poll» es un software de código abierto. Las siguientes personas han colaborado
con este plugin.

Colaboradores

 *   [ Timur Kamaev ](https://profiles.wordpress.org/tkama/)

«Democracy Poll» está traducido en 4 idiomas. Gracias a [los traductores](https://translate.wordpress.org/projects/wp-plugins/democracy-poll/contributors)
por sus contribuciones.

[Traduce «Democracy Poll» a tu idioma.](https://translate.wordpress.org/projects/wp-plugins/democracy-poll)

### ¿Interesado en el desarrollo?

[Revisa el código](https://plugins.trac.wordpress.org/browser/democracy-poll/) ,
echa un vistazo al [repositorio SVN](https://plugins.svn.wordpress.org/democracy-poll/)
o suscríbete al [registro de desarrollo](https://plugins.trac.wordpress.org/log/democracy-poll/)
por [RSS](https://plugins.trac.wordpress.org/log/democracy-poll/?limit=100&mode=stop_on_copy&format=rss).

## Registro de cambios

See `COMPAT: ***` messages in the changelog below for any backward compatibility
changes that may require code updates if you use the plugin’s public API or properties
directly in your code.

#### 6.4.0

 * NEW: Added a global setting to sort order for answers on the results screen.
 * FIX: Shortcode `[democracy id=last]` for last poll did not work correctly in 
   some cases. See [request](https://wordpress.org/support/topic/shortcode-to-last-poll-not-working/)
 * FIX: Users with plugin access roles could not create new polls. See [request](https://wordpress.org/support/topic/dempollget_db_data-poll-fails-when-editor-tries-to-add-new-poll-6-1-1/)
 * FIX: There was no way to add custom answer if «Hide vote button» option is on,
   and it is non-multiple poll with the revote option enabled.
 * FIX: Small bug when allowing users to add their own answers.
 * CHG: Max poll height options disabled by default.
 * IMP: Refresh poll edit form UI.
 * IMP: Store votes for all polls in one cookie instead of creating a separate cookie
   per poll.
 * COMPAT: `DemPoll::$dbdata` property removed. Use `DemPoll` props instead.
 * COMPAT: `DemPoll` object renamed to `\DemocracyPoll\Poll`. Old DemPoll class 
   name remains available via PHP class alias, but some public properties were removed/
   changed. So you may need to update your code if you use `DemPoll` or it’s properties
   directly.
 * COMPAT: `Poll_Service` class removed as well as `DemPoll::$service` property.
   Use methods of new `Poll_Cookies`, `Poll_Voting_Service`, `Poll_Logs` instead.
 * COMPAT: Custom HTML returned by the `dem_vote_screen` or `dem_result_screen` 
   filters must include the new `dem_*_js` classes used as JavaScript hooks.

#### 6.3.1

 * FIX: Restored the Text Customization settings page after a previous refactor.
 * CHG: Switched the IP information provider to ipwho.is.
 * IMP: IP information in the logs table now loads through Admin AJAX. Requests 
   are queued to respect the provider rate limit, and the page no longer waits for
   missing IP data.
 * IMP: Added a loading indicator and forced IP information refresh button.
 * IMP: Updated translations and translated all code comments into English.

#### 6.3.0

 * Vote cancellation now requires server-side logs; revoting is disabled when logging
   is disabled.
 * Fixed `CVE-2024-33920`, reported by Patchstack/WPScan (Missing Authorization /
   Broken Access Control):
    - Public `delVoted` could subtract votes using a user-controlled cookie.
    - SQL did not restrict answers to the current `qid`.
 * Fixed admin IDOR via tampering with `POST['dmc_qid']`.
 * Added translations for `fr_FR`, `hi_IN`, and `zh_CN`.

#### 6.2.0

 * CHG: Completely removed the jQuery dependency from the front end.
 * IMP: Improved the vote and revote height animations.
 * IMP: Modernized styles and added CSS variables.
 * IMP: The «Max height» and «Line height» options now support CSS units instead
   of only pixels.
 * CHG: Removed the `show_copyright` and `inline_js_css` options and their related
   logic.
 * CHG: Removed the `disable_js` option and support for using the plugin without
   browser JavaScript. JavaScript is now required for better UX and performance.
 * IMP: Refactored and improved the code, translated comments, and replaced `var`
   with `const` and `let` where appropriate.
 * IMP: Added `package.json` and an ES module-based `gulpfile.js`, extracted several
   functions to `Utils.mjs`, and moved JavaScript and CSS files to `assets`.
 * IMP: Added a Gulp build system and converted JavaScript files to ES6 modules.

#### 6.1.2

 * UPD: Tested up to WP 7.0.

#### 6.1.1

 * FIX: esc_attr() added for inline js to fix possible bugs on some servers.

#### 6.1.0

 * COMPAT: Removed the `DEM_VER` constant; use `DemocracyPoll\plugin()->ver` instead.
 * COMPAT: Removed the `DEMOC_URL` constant; use `DemocracyPoll\plugin()->url` instead.
   Note that the trailing slash was removed.
 * COMPAT: Removed the `DEMOC_PATH` constant; use `DemocracyPoll\plugin()->dir` 
   instead. Note that the trailing slash was removed.
 * COMPAT: Removed the `DEMOC_MAIN_FILE` constant.
 * COMPAT: Significantly refactored `DemPoll` by decomposing it into smaller classes,
   including the new `Poll_Renderer` and `Poll_Service` classes.
 * FIX: PHPStan fixes and improvements.
 * IMP: Updated the POT and PO translation files and added `.l10n.php` files for
   better performance.

#### 6.0.5

 * IMP: Unit tests infrastructure added. Some Helpers methods are now tested.
 * IMP: Added PHP type hints in several parts of the code.
 * NEW: Poll_Answer class added to encapsulate poll answer data and improve code
   readability.
 * DOC: All filters and actions documented.
 * IMP: Other minor improvements.

#### 6.0.4

 * FIX: Init moved to `after_setup_theme` hook.
 * NEW: Added alphabetical answer ordering.
 * IMP: Improved `democracy.js` and refactored part of it to vanilla JavaScript.
 * IMP: Minor CSS refactoring.
 * IMP: Minor improvements.
 * UPD: Tested up to WordPress 6.8.
 * UPD: Updated js-cookie from 2.2.0 to 3.0.5.
 * COMPAT: Requires PHP 7.4+

#### 6.0.3

 * FIX: Poll widget did not work correctly if «select random poll» option was set.

#### 6.0.2

 * FIX: Fatal error with «WordFence» plugin: «Failed opening …/Helpers/wfConfig.
   php».

#### 6.0.1

 * FIX: Short-circuit recursion on plugin object construct for not logged-in users(
   v6.0.0 bug).
 * IMP: Minor improvements.

#### 6.0.0

 * COMPAT: Minimal PHP version requirement set to 7.0.
 * COMPAT: Class `Democracy_Poll` renamed to `Plugin` and moved under namespace.
 * COMPAT: Functions `democr()` and `demopt()` renamed to `\DemocracyPoll\plugin()`
   and `\DemocracyPoll\options()`.
 * COMPAT: Most classes moved under `DemocracyPoll` namespace.
 * FIX: Unable to delete all answers or create a democracy poll without a starting
   answer.
 * FIX: `democracy_shortcode` bug.
 * FIX: Not logged-in user logs now get saved with user_id=0 and IP (not just IP).
 * FIX: `Regenerate_democracy_css` fixes. Empty answer PHP notice fix.
 * IMP: `DemPoll` object improvements: magic properties replaced with real ones.
 * IMP: «Admin» classes refactored.
 * IMP: Admin Pages code refactored.
 * IMP: Classes autoloader implemented.
 * IMP: Huge refactoring, minor code improvements, and decomposition.
 * UPD: Updated `democracy-poll.pot`.

Older changes are available in [changelog.txt](https://plugins.svn.wordpress.org/democracy-poll/trunk/changelog.txt).

## Meta

 *  Versión **6.4.0**
 *  Última actualización **hace 5 días**
 *  Instalaciones activas **7.000+**
 *  Versión de WordPress ** 5.8 o superior **
 *  Probado hasta **7.0**
 *  Versión de PHP ** 7.4 o superior **
 *  Idiomas
 * [Catalan](https://ca.wordpress.org/plugins/democracy-poll/), [Dutch](https://nl.wordpress.org/plugins/democracy-poll/),
   [English (US)](https://wordpress.org/plugins/democracy-poll/), [Persian](https://fa.wordpress.org/plugins/democracy-poll/)
   y [Russian](https://ru.wordpress.org/plugins/democracy-poll/).
 *  [Traducir a tu idioma](https://translate.wordpress.org/projects/wp-plugins/democracy-poll)
 * Etiquetas:
 * [democracy](https://es.wordpress.org/plugins/tags/democracy/)[polls](https://es.wordpress.org/plugins/tags/polls/)
   [review](https://es.wordpress.org/plugins/tags/review/)[survey](https://es.wordpress.org/plugins/tags/survey/)
   [vote](https://es.wordpress.org/plugins/tags/vote/)
 *  [Vista avanzada](https://es.wordpress.org/plugins/democracy-poll/advanced/)

## Valoraciones

 4.6 de 5 estrellas.

 *  [  72 valoraciones de 5 estrellas     ](https://wordpress.org/support/plugin/democracy-poll/reviews/?filter=5)
 *  [  5 valoraciones de 4 estrellas     ](https://wordpress.org/support/plugin/democracy-poll/reviews/?filter=4)
 *  [  3 valoraciones de 3 estrellas     ](https://wordpress.org/support/plugin/democracy-poll/reviews/?filter=3)
 *  [  2 valoraciones de 2 estrellas     ](https://wordpress.org/support/plugin/democracy-poll/reviews/?filter=2)
 *  [  4 valoraciones de 1 estrellas     ](https://wordpress.org/support/plugin/democracy-poll/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/democracy-poll/reviews/#new-post)

[Ver todas las valoraciones](https://wordpress.org/support/plugin/democracy-poll/reviews/)

## Colaboradores

 *   [ Timur Kamaev ](https://profiles.wordpress.org/tkama/)

## Soporte

Problemas resueltos en los últimos dos meses:

     2 de 4

 [Ver el foro de soporte](https://wordpress.org/support/plugin/democracy-poll/)