PluginProbe ʕ •ᴥ•ʔ
Post Views Counter / 1.6.1
Post Views Counter v1.6.1
1.7.13 1.7.12 1.7.11 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.2.0 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.2 1.3.2.1 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.7.0 1.7.1 1.7.10 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9
post-views-counter / readme.txt
post-views-counter Last commit date
assets 6 months ago blocks 6 months ago css 6 months ago includes 6 months ago js 6 months ago languages 6 months ago index.php 6 years ago post-views-counter.php 6 months ago readme.txt 6 months ago
readme.txt
419 lines
1 === Post Views Counter ===
2 Contributors: dfactory
3 Tags: counter, postviews, statistics, analytics, pageviews
4 Requires at least: 6.3.0
5 Requires PHP: 7.4.0
6 Tested up to: 6.9
7 Stable tag: 1.6.1
8 License: MIT License
9 License URI: http://opensource.org/licenses/MIT
10
11 Post Views Counter allows you to collect and display how many times a post, page, or other content has been viewed in a simple, fast and reliable way.
12
13 == Description ==
14
15 Post Views Counter allows you to collect and display how many times a post, page, or other content has been viewed in a simple, fast and reliable way.
16
17 [Post Views Counter](https://postviewscounter.com/) gives you clear, accurate post view stats — right inside WordPress. No external tools. No bloat. Just the numbers you need to see what’s working.
18
19 = Key Benefits =
20
21 Clarity, speed, and control:
22
23 - **Clear, Focused Metrics** — You get a clear picture of how your posts are performing.
24 - **Made for WordPress** — Runs entirely in your site. No GA, no third-party pipes; accurate counts in your Dashboard.
25 - **Privacy-first** — Data lives on your server, with controls that respect visitors’ rights and privacy regulations.
26 - **Works at scale** — Minimal overhead, no external scripts, Multisite-ready.
27 - **Display anywhere** — Automatically show counts, or place them exactly where you want via blocks or shortcode.
28
29 = Features =
30
31 Practical features that matter:
32
33 - Count & display views for **any post type** you select.
34 - Three counting modes: **PHP, JavaScript, REST API**
35 - Dashboard post views **stats widget**
36 - Sortable Post Views **admin column**
37 - Exclude bots, logged-in users, specific roles, or IPs
38 - Manually adjust a post’s views when needed.
39 - Query and **order content by views** (developer-friendly)
40 - Custom REST API endpoints
41 - Option to set count interval
42 - One-click data import from **WP-PostViews**, **Statify** and **Page Views Count**
43 - Post views **display position**, automatic or manual via shortcode
44 - **Multisite** compatibile
45 - **WPML/Polylang** compatible; translation-ready (.pot)
46
47 = Post Views Counter Pro =
48
49 More capability without extra complexity:
50
51 - **Fast AJAX counting** for more accurate data.
52 - **Caching optimization** that guarantees performance even under heavy traffic.
53 - **Reports**: Views by Date, Post, Author to spot winners, trends, and top contributors.
54 - Customizable **Views Period** (e.g., last 7/30 days) to control the views count timeframe.
55 - **Export to CSV/XML** to download and share data.
56 - **Integrations** for ordering by views in popular builders (e.g., **Elementor Pro, Divi, GenerateBlocks**).
57
58 [Learn more about Pro →](https://postviewscounter.com/pricing/)
59
60 == Installation ==
61
62 1. Install Post Views Counter either via the WordPress.org plugin directory, or by uploading the files to your server
63 2. Activate the plugin through the 'Plugins' menu in WordPress
64 3. Go to the Post Views Counter settings and set your options.
65
66 For many frequently asked questions check the [Post Views Counter Docs](https://postviewscounter.com/documentation/).
67
68 = Why use Post Views Counter vs Google Analytics? =
69
70 Post Views Counter gives you clean, per-post view counts inside WordPress — fast, cache-friendly, and privacy-first, with data that stays on your server. Google Analytics might be an overkill when you just need accurate post/page views for editorial decisions.
71
72 = Can I use Post Views Counter alongside Google Analytics? =
73
74 Of course — many sites use both. Post Views Counter handles on-site, per-post view counts inside WordPress (no third-party scripts), while Google Analytics covers marketing funnels and acquisition.
75
76 = Is Post Views Counter GDPR compliant? =
77
78 Post Views Counter runs entirely inside WordPress with no third-party scripts and keeps data on your server — aligning with GDPR-style expectations.
79
80 = How do I get support? =
81
82 If you’re using the free version, please post your question in the WordPress.org support forum.
83
84 If you’ve purchased Post Views Counter Pro, your license includes one year of updates and premium support. You can contact us directly through our dedicated support channel available after logging into your account at [Post Views Counter](https://postviewscounter.com/), and our team will get back to you.
85
86 == Screenshots ==
87
88 1. screenshot-1.png
89 2. screenshot-2.png
90
91 == Changelog ==
92
93 = 1.6.1 =
94 * Tweak: Switch to Vite build system for improved development workflow.
95 * Fix (Pro): Fixed empty user agent handling in Fast AJAX mode.
96 * Tweak: Additional UI improvements for settings pages.
97
98 = 1.6.0 =
99 * New: Dedicated import framework with provider-aware analysis/reporting and strategy selector.
100 * New: Option to import views from Statify and Page Views Count plugins.
101 * New (Pro): Additional import strategies (skip existing, keep higher count, fill empty-only).
102 * New: Plugin Status panel now surfaces detected PVC database tables for easier troubleshooting.
103 * Tweak: Settings UI reorganized with refreshed copy, clearer visitor exclusion controls, and a polished Other tab experience.
104 * Tweak: Menu placement option moved to Display settings and mirrored for backward compatibility.
105
106 = 1.5.9 =
107 * New: Admin column modal chart with post views data
108 * New: Extended admin column modal with yearly and weekly views data (Pro)
109 * New: Admin column modal chart for terms and users (Pro)
110
111 = 1.5.8 =
112 * Tweak: Updated default value for object cache flushing interval
113 * Tweak: Treat empty or missing user agent as bot
114
115 = 1.5.7 =
116 * New: Count visits by referrer (Pro)
117 * Prevent duplicate AJAX calls in REST API mode
118 * Fix: Major improvements for FastAjax handling (Pro)
119 * Fix: Major object cache support improvements (Pro)
120 * Fix: Apply crawler/bot check filter for REST API endpoints
121 * Tweak: Remove unused storage and mutator methods
122
123 = 1.5.6 =
124 * New: Count visits by device, browser and OS (Pro)
125 * New: Count visits by browser language (Pro)
126 * New: Traffic Information dashboard widget (Pro)
127 * New: HTTP request improvements for caching and security (Pro)
128 * New: Client size bot detection (Pro)
129 * Tweak: Fix and simplify post views shortcode for loops
130 * Tweak: Adjust the post views display in Gutenberg editor
131 * Tweak: Check db query results and log error
132
133 = 1.5.5 =
134 * New: Count Time option to store the views in GMT or Local time (Pro)
135 * New: Reports extended with Author Posts and Author Archive (Pro)
136 * New: Counting Jet Engine Profile Builder user profiles as archive view (Pro)
137 * Tweak: Improved logic for Admin Display and Admin Edit
138 * Tweak: Settings UI improvements
139
140 = 1.5.4 =
141 * New: Caching compatibility option (Pro)
142
143 = 1.5.3 =
144 * Tweak: WordPress 6.8 compatibility
145 * Tweak: Move admin column options to Display settings
146 * Tweak: Added pvc_current_scheme_color filter hook to adjust chart colors
147
148 = 1.5.2 =
149 * Tweak: Updated crawlers list
150 * Tweak: Updated Chart.js to 4.4.8
151 * New: Add orderby post_views support to Elementor Pro posts query (Pro)
152 * New: Add orderby post_views support to Divi theme blog module (Pro)
153 * New: Add orderby post_views support to GenerateBlocks query (Pro)
154 * New: Option to exclude AI bots visits from counting (Pro)
155
156 = 1.5.1 =
157 * Fix: Undefined variable $post_type warning in admin columns
158
159 = 1.5.0 =
160 * Fix: Deprecated DateTime dynamic property
161 * Tweak:Implement AJAX queue for saving dashboard user options
162 * Tweak: Update bot detection class
163 * Tweak: Add widget loaded JS event
164 * Tweak: Fix typo in widget tooltip
165 * Tweak: Improve dahboard widgets UI
166 * New: Dashboard widgets revamp (Pro)
167 * New: Added weekly and yearly dashboard widgets navigation (Pro)
168 * New: Added trend (increase/decrease) to dashboard widget charts (Pro)
169 * New: Taxonomy & Terms selection in Views by Post reports (Pro)
170
171 = 1.4.8 =
172 * New: Introducing Post Views block
173 * New: Introducing Most Viewed Posts block
174 * Tweak: Updated Chart.js to 4.4.6
175
176 = 1.4.7 =
177 * New: Dynamic views loading option (Pro)
178 * Fix: Multi-sorting queries with post_views orderby parameter
179
180 = 1.4.6 =
181 * Fix: Bulk posts selection
182 * Fix: Additional SQL queries escaping
183 * Tweak: Call to undefined function is_favicon()
184 * Tweak: Enqueue main script in header instead of footer
185 * Tweak: Better JS error handling
186 * Tweak: Updated Chart.js to 4.4.2
187
188 = 1.4.5 =
189 * Fix: Post views bulk saving security
190 * Tweak: Removed WP Rocket as bot in crawler detection
191
192 = 1.4.4 =
193 * New: Option to enter meta_key for importing the views
194 * New: Revamped Reports for Views by Date, Views by Post and Views by Author (Pro)
195 * New: REST API support for post, site, term and user views (Pro)
196 * New: Views Period option to display views from a selected time period instead of total (Pro)
197 * New: [site-views] shortcode for total site views display (Pro)
198 * Tweak: Improved icon handling
199 * Tweak: Updated crawler detection
200
201 = 1.4.3 =
202 * Tweak: Update languages file
203
204 = 1.4.2 =
205 * New: Option to select position of the plugin menu
206
207 = 1.4.1 =
208 * Fix: Frontpage views not recorded properly
209
210 = 1.4 =
211 * New: Introducing Post Views Counter Pro
212 * New: Fast Ajax views counting mode (Pro)
213 * New: Google AMP support (Pro)
214 * New: Taxonomy term views (Pro)
215 * New: Author archive views (Pro)
216 * New: Cookies/Cookieless data storage option (Pro)
217 * New: Dedicated Reports page (Pro)
218 * New: Exporting views to CSV or XML files (Pro)
219 * Tweak: Improved validation and sanitization
220 * Tweak: Chart.js updated to 4.3.0
221
222 = 1.3.13 =
223 * New: Compatibility with WP 6.2 and PHP 8.2
224 * Fix: Invalid year in seconds
225 * Fix: Possible invalid cookie data in views storage
226 * Fix: Default database prefix
227 * Tweak: Switch from wp_localize_script to wp_add_inline_script
228 * Tweak: Updated bot detection
229
230
231 = 1.3.12 =
232 * Fix: Frontend Javascript rewritten from jQuery to Vanilla JS
233 * Fix: Admin Bar Style loading on every page
234 * Fix: Network initialization process for new sites
235 * Fix: IP address encryption
236 * Fix: REST API endpoints
237 * Fix: Removed couple of deprecated functions
238 * Tweak: Updated chart.js script to version 3.9.1
239 * Tweak: Added SameSite attribute to cookie
240
241 = 1.3.11 =
242 * Fix: Potentailly incorrect counting of post views in edge case db queries
243 * Fix: Possible empty chart in dashboard
244 * Fix: Incorrect saving of dashboard widget user options
245 * Tweak: Updated Chart.js to version 3.7.0
246
247 = 1.3.10 =
248 * Fix: Post views column not working properly
249 * Tweak: Switched to openssl_encrypt method for IP encryption
250 * Tweak: Improved user input escaping
251
252 = 1.3.9 =
253 * Tweak: Remove unnecessary plugin files
254
255 = 1.3.8 =
256 * Tweak: Improved user input escaping
257
258 = 1.3.7 =
259 * Tweak: Implemented internal settings API
260
261 = 1.3.6 =
262 * Fix: Option to hide admin bar chart
263
264 = 1.3.5 =
265 * New: Option to hide admin bar chart
266 * Fix: Small security bug with views label
267 * Tweak: Remove unnecessary CSS on every page
268
269 = 1.3.4 =
270 * New: Post Views stats preview in the admin bar
271 * New: Top Posts data available in the dashboard widget
272 * Tweak: Improved privacy using IP encrypting
273 * Tweak: PHP 8.x compatibility
274
275 = 1.3.3 =
276 * Fix: PHP Notice: Trying to get property 'colors' of non-object
277 * Fix: PHP Notice: register_rest_route was called incorrectly
278
279 = 1.3.2 =
280 * New: Introducing dashboard widget navigation
281 * New: Counter support for Media (attachments)
282 * Tweak: Extended views query for handling complex date/time requests
283
284 = 1.3.1 =
285 * Fix: Gutenberg CSS file missing
286 * Tweak: POT translation file update
287
288 = 1.3 =
289 * New: Gutenberg compatibility
290 * New: Additional options in widgets: post author and display style
291 * Fix: Undefined variables when IP saving enabled
292 * Fix: Check cookie not being triggered in Fast Ajax mode
293 * Fix: Invalid arguments in implode function causing warning
294 * Fix: Thumbnail size option did not show up after thumbnail checkbox was checked
295 * Fix: Saving post (in quick edit mode too) did not update post views
296
297 = 1.2.14 =
298 * Fix: Bulk edit post views count reset issue
299
300 = 1.2.13 =
301 * New: Experimental Fast AJAX counter method (10+ times faster)
302
303 = 1.2.12 =
304 * New: GDPR compatibility with Cookie Notice plugin
305
306 = 1.2.11 =
307 * Tweak: Additional IP expiration checks added as an option
308
309 = 1.2.10 =
310 * New: Additional transient based IP expiration checks
311 * Tweak: Chart.js script update to 2.7.1
312
313 = 1.2.9 =
314 * Fix: WooCommerce products list table broken
315
316 = 1.2.8 =
317 * New: Multisite compatibility
318 * Fix: Undefined index post_views_column on post_views_counter/includes/settings.php
319 * Tweak: Improved user IP handling
320
321 = 1.2.7 =
322 * Fix: Chart data not updating for object cached installs due to missing expire parameter
323 * Fix: Bug preventing hiding the counter based on user role.
324 * Fix: Undefined notice in the admin dashboard request
325
326 = 1.2.6 =
327 * Fix: Hardcoded post_views database table prefix
328
329 = 1.2.5 =
330 * New: REST API counter mode
331 * New: Adjust dashboard chart colors to admin color scheme
332 * Tweak: Dashboard chart query optimization
333 * Tweak: post_views database table optimization
334 * Tweak: Added plugin documentation link
335
336 = 1.2.4 =
337 * New: Advanced crawler detection
338 * Tweak: Chart.js script update to 2.4.0
339
340 = 1.2.3 =
341 * New: IP wildcard support
342 * Tweak: Delete post_views database table on deactivation
343
344 = 1.2.2 =
345 * Fix: Notice undefined variable: post_ids, thanks to [zytzagoo](https://github.com/zytzagoo)
346 * Tweak: Switched translation files storage, from local to WP repository
347
348 = 1.2.1 =
349 * New: Option to display post views on select page types
350 * Tweak: Dashboard widget query optimization
351
352 = 1.2.0 =
353 * New: Dashboard post views stats widget
354 * Fix: A couple of typos in method names
355
356 = 1.1.4 =
357 * Fix: Dashicons link broken.
358 * Tweak: Confirmed WordPress 4.4 compatibility
359
360 = 1.1.3 =
361 * Fix: Duplicated views count in custom post types
362 * Fix: Exclude visitors checkboxes not working
363
364 = 1.1.2 =
365 * Fix: Most viewed posts widget broken
366
367 = 1.1.1 =
368 * Tweak: Enable edit views on new post.
369 * Tweak: Extend WP_Query post data with post_views
370
371 = 1.1.0 =
372 * New: Quick post views edit
373 * New: Bulk post views edit
374 * Tweak: Admin UI improvements
375
376 = 1.0.12 =
377 * New: Italian translation, thanks to [Rene Querin](http://www.q-design.it)
378
379 = 1.0.11 =
380 * New: French translation, thanks to [Theophil Bethel](http://reseau-chretien-gironde.fr/)
381
382 = 1.0.10 =
383 * New: Option to limit post views editing to admins only
384
385 = 1.0.9 =
386 * New: Spanish translation, thanks to [Carlos Rodriguez](http://cglevel.com/)
387
388 = 1.0.8 =
389 * New: Croation translation, thanks to [Tomas Trkulja](http://zytzagoo.net/blog/)
390
391 = 1.0.7 =
392 * New: Possibility to manually set views count for each post
393 * New: Plugin development moved to [dFactory GitHub Repository](https://github.com/dfactoryplugins)
394
395 = 1.0.6 =
396 * New: Object cache support, thanks to [Tomas Trkulja](http://zytzagoo.net/blog/)
397 * New: Hebrew translation, thanks to [Ahrale Shrem](http://atar4u.com/)
398
399 = 1.0.5 =
400 * Tweak: Added number_format_i18n for displayed views count
401 * Tweak: Additional action hook for developers
402
403 = 1.0.4 =
404 * Fix: Possible issue with remove_post_views_count function
405
406 = 1.0.3 =
407 * New: Russian translation, thanks to moonkir
408 * Fix: Remove [post-views] shortcode from post excerpts if excerpt is empty
409
410 = 1.0.2 =
411 * Fix: Pluggable functions initialized too lately
412
413 = 1.0.0 =
414 Initial release
415
416 == Upgrade Notice ==
417
418 = 1.6.1 =
419 Build system improvements. Fixed empty user agent handling in Fast AJAX mode (Pro).