WordPress plugin intelligence profile

Webxperthub Post Views & Reading Time

Track post views and accumulate total reading time from visitors. Display engagement metrics in your admin dashboard and post list columns.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 7.0
Current version1.1.0
WordPress coverageTested up to WordPress 7.0
Minimum stackWP 5.0 · PHP 7.4
Directory statusactive
Last directory update18 Sept 20261mo ago
Active installationsNewAdoption metric — not a quality score
WordPress.org ratingNo WordPress.org ratings yet
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records Webxperthub Post Views & Reading Time version 1.1.0 as active, updated 1mo ago and tested up to WordPress 7.0.

Overview

About this plugin

Webxperthub Post Views & Reading Time is a lightweight WordPress plugin that automatically tracks how many times each post is viewed and measures the total reading time accumulated from all visitors. Perfect for bloggers, content creators, and site owners who want to understand their audience engagement at a glance.

Key Features:

  • View Tracking – Automatically count the number of unique sessions viewing each post with intelligent bounce filtering
  • Reading Time Analytics – Measure actual time visitors spend reading your posts
  • Admin Dashboard Widget – Beautiful analytics widget showing total views, posts, and cumulative reading time
  • Post List Columns – Display views and reading time directly in the post list for quick reference
  • Smart User Filtering – Automatically excludes administrators, editors, authors, and contributors from view counts to track real visitor engagement
  • Session-based Counting – Prevents artificially inflating counts by tracking views per session, not per page load
  • Security First – Built with WordPress security standards including nonce verification, input sanitization, and proper output escaping
  • Lightweight & Efficient – Minimal database footprint with optimized AJAX requests and prepared statements
  • Zero Configuration – Works automatically after activation, no settings to configure
  • Responsive Design – Dashboard widget looks great on all screen sizes

Shortcodes

Display post views and reading time on your pages and posts using these shortcodes:

Display Post Views:

[webxperthub_post_views] — Shows the total view count for the current post

[webxperthub_post_views id=”123″] — Shows the view count for a specific post (replace 123 with post ID)

[webxperthub_post_views label=”yes”] — Shows view count with “Views:” label

Display Reading Time:

[webxperthub_reading_time] — Shows the total reading time for the current post

[webxperthub_reading_time id=”123″] — Shows the reading time for a specific post (replace 123 with post ID)

[webxperthub_reading_time label=”yes”] — Shows reading time with “Read Time:” label

Examples:

  • [webxperthub_post_views label="yes"] — Output: Views: 1,234
  • [webxperthub_reading_time label="yes"] — Output: Read Time: 5m
  • Display stats for a specific post: [webxperthub_post_views id="42" label="yes"]

These shortcodes can be used in page builders, widgets, or directly in post content to showcase your engagement metrics.

How It Works

View Tracking Process:

1. When a visitor loads a post, JavaScript waits 2 seconds (bounce filter) before sending a tracking request

2. An AJAX request is sent to your WordPress backend

3. The view count for that post is incremented in the post meta

4. SessionStorage records that this post was counted in the current session to prevent duplicates

Reading Time Tracking Process:

1. JavaScript monitors how long a visitor spends on the page

2. Timing begins after the initial 2-second bounce delay

3. Timing ends when the visitor leaves the page or switches browser tabs

4. Only intervals of 3+ seconds are counted (minimum threshold)

5. A maximum of 30-minute intervals are recorded (filters outliers like tabs left open)

6. The accumulated time is added to the post’s total reading time meta

Dashboard Widget:

The admin dashboard displays:

– Total number of published posts

– Sum of all views across all posts

– Cumulative reading time from all visitors (formatted as “X hours Y minutes”)

Post List Columns:

Two new columns in the Posts list show:

– Views: Total view count for each post

– Read Time: Total accumulated reading time (click column header to sort)

Technical Details

Security:

– All AJAX endpoints verify nonces for CSRF protection

– User input is sanitized and validated before use

– Output is properly escaped for display

– User roles are verified to exclude staff accounts

– Only published posts are tracked

Performance:

– Efficient prepared statements for all database queries

– Asynchronous AJAX requests do not block user interaction

– SessionStorage prevents redundant database calls

– Minimal CSS and JavaScript payload

– No external API calls or third-party services

Support

org support forum. When posting, please include:

  • A clear description of your issue
  • Your WordPress version and PHP version
  • A list of your currently active plugins
  • Any error messages from your browser console (press F12)

Credits

Developed by Iftiar Hossain — Webxperthub

License

0-or-later license. You are free to use, modify, and distribute this plugin under the terms of the GNU General Public License.

html

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • post views
  • reading time
  • analytics
  • engagement
  • tracking
Compatibility & maintenance

Compatibility & maintenance

Tested up to WordPress 7.0

Not yet marked as tested with WordPress 7.1. WordPress.org currently lists Tested up to 7.0.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to7.0
Minimum requirementsWordPress 5.0 · PHP 7.4
Update activity18 Sept 20261mo ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

WordPress compatibility7.0.47.0.5
Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.