README.md 7.74 KB
Newer Older
Lester Chan's avatar
EOL    
Lester Chan committed
1
# WP-Polls
Lester Chan's avatar
Lester Chan committed
2
Contributors: GamerZ  
Lester Chan's avatar
Lester Chan committed
3
Donate link: https://lesterchan.net/site/donation/  
Lester Chan's avatar
Lester Chan committed
4
Tags: poll, polls, polling, vote, booth, democracy, ajax, survey, post, widget  
Lester's avatar
Lester committed
5
Requires at least: 4.0  
Lester Chan's avatar
Lester Chan committed
6
Tested up to: 4.7  
7
Stable tag: 2.73.3  
Lester Chan's avatar
EOL    
Lester Chan committed
8
9
10
11
12
13

Adds an AJAX poll system to your WordPress blog. You can also easily add a poll into your WordPress's blog post/page.

## Description
WP-Polls is extremely customizable via templates and css styles and there are tons of options for you to choose to ensure that WP-Polls runs the way you wanted. It now supports multiple selection of answers.

Lester Chan's avatar
Lester Chan committed
14
15
16
### Build Status
[![Build Status](https://travis-ci.org/lesterchan/wp-polls.svg?branch=master)](https://travis-ci.org/lesterchan/wp-polls)

Lester Chan's avatar
EOL    
Lester Chan committed
17
### Development
Lester Chan's avatar
Lester Chan committed
18
[https://github.com/lesterchan/wp-polls](https://github.com/lesterchan/wp-polls "https://github.com/lesterchan/wp-polls")
Lester Chan's avatar
EOL    
Lester Chan committed
19
20

### Translations
Lester Chan's avatar
Lester Chan committed
21
[http://dev.wp-plugins.org/browser/wp-polls/i18n/](http://dev.wp-plugins.org/browser/wp-polls/i18n/ "http://dev.wp-plugins.org/browser/wp-polls/i18n/")
Lester Chan's avatar
EOL    
Lester Chan committed
22
23

### Credits
Lester Chan's avatar
Lester Chan committed
24
* Plugin icon by [Freepik](http://www.freepik.com) from [Flaticon](http://www.flaticon.com)
Lester Chan's avatar
EOL    
Lester Chan committed
25
26

### Donations
Lester's avatar
-m    
Lester committed
27
I spent most of my free time creating, updating, maintaining and supporting these plugins, if you really love my plugins and could spare me a couple of bucks, I will really appreciate it. If not feel free to use it without any obligations.
Lester Chan's avatar
EOL    
Lester Chan committed
28
29

## Changelog
30
### Version 2.73.3
31
* NEW: Added sort by votes casted to poll answers.
32
33
* FIXED: Do not display poll option is not respected when poll is closed.

Lester Chan's avatar
Lester Chan committed
34
### Version 2.73.2
Lester Chan's avatar
Lester Chan committed
35
* NEW: Bump WordPress 4.7
Lester Chan's avatar
Lester Chan committed
36
37
* FIXED: Change cron to hourly instead of twice daily.

Lester Chan's avatar
Lester Chan committed
38
39
### Version 2.73.1
* FIXED: Allow local IP
Lester's avatar
Lester committed
40
41
* FIXED: XSS on Poll bar option. Props [Netsparker Web Application Security Scanner](https://www.netsparker.com/)
* FIXED: Stricter Poll pptions check
Lester Chan's avatar
Lester Chan committed
42
 
Lester's avatar
Lester committed
43
44
45
46
### Version 2.73
* NEW: Display Poll Questions at the top of the Poll Logs table
* FIXED: Remove slashes

47
48
49
50
### Version 2.72
* NEW: Use translate.wordpress.org to translate the plugin
* FIXED: SQL Injection fixes. Props [Jay Dansand](https://github.com/jaydansand)
* FIXED: Use $wpdb->insert(), $wpdb->update() and $wpdb->delete() as much as possible
Lester's avatar
Lester committed
51
* FIXED Remove poll_archive_show option from UI
52

Lester's avatar
Lester committed
53
### Version 2.71
Lester's avatar
Lester committed
54
* FIXED: Use wp_kses_post() to get filter always bad tags
Lester's avatar
Lester committed
55

56
### Version 2.70
57
* NEW: Add wp_polls_vote_poll_success action hook
Lester's avatar
Lester committed
58
59
60
* NEW: Add wp_polls_add_poll, wp_polls_update_poll, wp_polls_delete_poll action hooks
* FIXED: PHP Notices
* FIXED: Removed not needed wp_print_scripts
Lester's avatar
Lester committed
61
* FIXED: Use esc_attr() and esc_textarea() instead of htmlspecialchars(). Props [Govind Singh](https://in.linkedin.com/pub/govind-singh/21/1a9/bab)
62

Lester Chan's avatar
EOL    
Lester Chan committed
63
64
65
66
67
68
69
70
71
## Installation

1. Open `wp-content/plugins` Folder
2. Put: `Folder: wp-polls`
3. Activate `WP-Polls` Plugin
4. Go to `WP-Admin -> WP-Polls`

### General Usage (Without Widget)
1. Open `wp-content/themes/<YOUR THEME NAME>/sidebar.php`
Lester Chan's avatar
Lester Chan committed
72
2. Add:
Lester Chan's avatar
Lester Chan committed
73
<code>
Lester Chan's avatar
Lester Chan committed
74
75
76
77
78
79
80
81
82
&lt;?php if (function_exists('vote_poll') && !in_pollarchive()): ?&gt;
&nbsp;&nbsp;&lt;li&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;h2&gt;Polls&lt;/h2&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;ul&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;li&gt;&lt;?php get_poll();?&gt;&lt;/li&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/ul&gt;
&nbsp;&nbsp;&nbsp;&nbsp;&lt;?php display_polls_archive_link(); ?&gt;
&nbsp;&nbsp;&lt;/li&gt;
&lt;?php endif; ?&gt;
Lester Chan's avatar
Lester Chan committed
83
84
</code>

Lester Chan's avatar
EOL    
Lester Chan committed
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
* To show specific poll, use `<?php get_poll(2); ?>` where 2 is your poll id.
* To show random poll, use `<?php get_poll(-2); ?>`
* To embed a specific poll in your post, use `[poll id="2"]` where 2 is your poll id.
* To embed a random poll in your post, use `[poll id="-2"]`
* To embed a specific poll's result in your post, use `[poll id="2" type="result"]` where 2 is your poll id.

### General Usage (With Widget)
1. Go to `WP-Admin -> Appearance -> Widgets`.
2. You can add the Polls Widget by clicking on the 'Add' link besides it.
3. After adding, you can configure the Polls Widget by clicking on the 'Edit' link besides it.
4. Click 'Save Changes'.
5. Scroll down for instructions on how to create a Polls Archive.

## Upgrading

1. Deactivate `WP-Polls` Plugin
2. Open `wp-content/plugins` Folder
3. Put/Overwrite: `Folder: wp-polls`
4. Activate `WP-Polls` Plugin
5. Go to `WP-Admin -> Polls -> Polls Templates` and restore all the template variables to `Default`
6. Go to `WP-Admin -> Appearance -> Widgets` and re-add the Poll Widget

## Upgrade Notice

N/A

## Screenshots

1. Admin - All Poll
2. Admin - Manage Polls
3. Admin - Poll Options
4. Admin - Poll Templates
5. Admin - Poll Widget
6. Admin - Uninstall Poll
7. Poll - Single Poll Answer
8. Poll - Mutiple Poll Answers
9. Poll - Results
10. Poll - Archive

## Frequently Asked Questions


### How To Add A Polls Archive?
1. Go to `WP-Admin -> Pages -> Add New`.
2. Type any title you like in the post's title area.
3. If you ARE  using nice permalinks,  after typing the title, WordPress will generate the permalink to the page. You will see an 'Edit' link just beside the permalink.
4. Click 'Edit' and type in `pollsarchive` in the text field and click 'Save'.
5. Type `[page_polls]` in the post's content area.
6. Click 'Publish'.

* If you ARE NOT using nice permalinks, you need to go to `WP-Admin -> Polls -> Poll Options` and under `Poll Archive -> Polls Archive URL`, you need to fill in the URL to the Polls Archive Page you created above.

137
### Why doesn't my poll's answers add up to 100%?
Lester Chan's avatar
Add ;    
Lester Chan committed
138
* It is because of rounding issues. To make it always round up to 100%, the last poll's answer will get the remainding percentage added to it. To enable this feature, add this to your theme's functions.php: `add_filter( 'wp_polls_round_percentage', '__return_true' );`
139

Lester Chan's avatar
EOL    
Lester Chan committed
140
### How Does WP-Polls Load CSS?
Lester Chan's avatar
Lester Chan committed
141
142
* WP-Polls will load `polls-css.css` from your theme's directory if it exists.
* If it doesn't exists, it will just load the default `polls-css.css` that comes with WP-Polls.
Lester Chan's avatar
EOL    
Lester Chan committed
143
144
145
146
147
148
149
150
151
152
153
154
* This will allow you to upgrade WP-Polls without worrying about overwriting your polls styles that you have created.

### Why In Internet Explorer (IE) The poll's Text Appear Jagged?
* To solve this issue, Open poll-css.css
* Find: `/* background-color: #ffffff; */`
* Replace: `background-color: #ffffff;` (where #ffffff should be your background color for the poll.)

### How Do I Have Individual Colors For Each Poll's Bar?
* Courtesy Of [TreedBox.com](http://treedbox.com "TreedBox.com")
* Open poll-css.css
* Add to the end of the file:

Lester Chan's avatar
Lester Chan committed
155
<code>
Lester Chan's avatar
Lester Chan committed
156
157
158
159
160
161
162
163
164
165
166
.wp-polls-ul li:nth-child(01) .pollbar{ background:#8FA0C5}
.wp-polls-ul li:nth-child(02) .pollbar{ background:#FF8}
.wp-polls-ul li:nth-child(03) .pollbar{ background:#ff8a3b}
.wp-polls-ul li:nth-child(04) .pollbar{ background:#a61e2a}
.wp-polls-ul li:nth-child(05) .pollbar{ background:#4ebbff}
.wp-polls-ul li:nth-child(06) .pollbar{ background:#fbca54}
.wp-polls-ul li:nth-child(07) .pollbar{ background:#aad34f}
.wp-polls-ul li:nth-child(08) .pollbar{ background:#66cc9a}
.wp-polls-ul li:nth-child(09) .pollbar{ background:#98CBCB}
.wp-polls-ul li:nth-child(10) .pollbar{ background:#a67c52}
.wp-polls-ul li .pollbar{ transition: background 0.7s ease-in-out }
Lester Chan's avatar
Lester Chan committed
167
.wp-polls-ul li .pollbar:hover{ background:#F00 }
Lester Chan's avatar
Lester Chan committed
168
</code>
Lester Chan's avatar
EOL    
Lester Chan committed
169
170
171
172

### Polls Stats (Outside WP Loop)

### To Display Total Polls
Lester Chan's avatar
Lester Chan committed
173
* Use:
Lester Chan's avatar
EOL    
Lester Chan committed
174
<code>
Lester Chan's avatar
Lester Chan committed
175
176
&lt;?php if (function_exists('get_pollquestions')): ?&gt;
&nbsp;&nbsp;&lt;?php get_pollquestions(); ?&gt;
Lester Chan's avatar
Lester Chan committed
177
&lt;?php endif; ?&gt;
Lester Chan's avatar
EOL    
Lester Chan committed
178
179
180
</code>

### To Display Total Poll Answers
Lester Chan's avatar
Lester Chan committed
181
* Use:
Lester Chan's avatar
EOL    
Lester Chan committed
182
<code>
Lester Chan's avatar
Lester Chan committed
183
184
&lt;?php if (function_exists('get_pollanswers')): ?&gt;
&nbsp;&nbsp;&lt;?php get_pollanswers(); ?&gt;
Lester Chan's avatar
Lester Chan committed
185
&lt;?php endif; ?&gt;
Lester Chan's avatar
EOL    
Lester Chan committed
186
187
188
</code>

### To Display Total Poll Votes
Lester Chan's avatar
Lester Chan committed
189
* Use:
Lester Chan's avatar
EOL    
Lester Chan committed
190
<code>
Lester Chan's avatar
Lester Chan committed
191
192
&lt;?php if (function_exists('get_pollvotes')): ?&gt;
&nbsp;&nbsp;&lt;?php get_pollvotes(); ?&gt;
Lester Chan's avatar
Lester Chan committed
193
&lt;?php endif; ?&gt;
Lester Chan's avatar
EOL    
Lester Chan committed
194
195
196
</code>

### To Display Total Poll Voters
Lester Chan's avatar
Lester Chan committed
197
* Use:
Lester Chan's avatar
EOL    
Lester Chan committed
198
<code>
Lester Chan's avatar
Lester Chan committed
199
200
&lt;?php if (function_exists('get_pollvoters')): ?&gt;
&nbsp;&nbsp;&lt;?php get_pollvoters(); ?&gt;
Lester Chan's avatar
Lester Chan committed
201
&lt;?php endif; ?&gt;
Lester Chan's avatar
EOL    
Lester Chan committed
202
</code>