[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$frakiOXbZmyKd3MDgroH2C706HkKgpYVDVV3D4M4N6Yg":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":32,"crawl_stats":29,"alternatives":37,"analysis":138,"fingerprints":185},"dp-post-views","DP Post Views Counter","1.2","Denys Popov","https:\u002F\u002Fprofiles.wordpress.org\u002Fdenisatu\u002F","\u003Cul>\n\u003Cli>Author: \u003Ca href=\"https:\u002F\u002Fdenyspopov.com\" rel=\"nofollow ugc\">Denys Popov\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This plugin shows the number of views on the site.\u003C\u002Fp>\n","The plugin show how many people have viewed an article on the site.",60,3506,100,1,"2019-08-12T17:54:00.000Z","5.2.24","4.9.1","5.6",[20,21,22,23,24],"counter","hits","post-views","posts","view","https:\u002F\u002Fdenyspopov.com\u002Fdp-post-views","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdp-post-views.1.2.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":11,"avg_security_score":27,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},"denisatu",30,84,"2026-04-04T05:52:27.052Z",[38,58,83,102,120],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":46,"downloaded":47,"rating":48,"num_ratings":49,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":53,"tags":54,"homepage":56,"download_link":57,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"post-views-stats-counter","Post Views Stats Counter","1.1.7","Kazuki Yanamoto","https:\u002F\u002Fprofiles.wordpress.org\u002Fkazukiyanamoto\u002F","\u003Cp>This plugin will display how many times post and page viewed.\u003C\u002Fp>\n\u003Cp>It`s a simple stat analytics that also shows total view per day, week, month and all days. Those view are showed with titles and permalink.\u003Cbr \u002F>\nSelect only by title to see particular pages.\u003C\u002Fp>\n\u003Cp>You can exclude admin user and login users + you can ignore bots and useragents.\u003C\u002Fp>\n\u003Cp>The another merit is that “Most Popular articles” section can be added on to your widget.\u003C\u002Fp>\n\u003Col>\n\u003Cli>\n\u003Cp>Display how many times post and page viewed\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>View total access per day, week, month, and all days\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Show titles and permalinks as well\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Change view order by date and title\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>You can ignore bots and UserAgents\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Exclude admin user and login users\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>“Most Popular articles” section can be added on to your widget\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n","This plugin will display how many times post and page viewed. It shows total view of access per day, week, month, and all days.",700,22283,80,4,"2023-04-12T05:51:00.000Z","6.2.9","4.6","",[20,21,22,23,55],"postviews","https:\u002F\u002Fglobal-s-h.com\u002Fpvs\u002Fen\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-views-stats-counter.1.1.7.zip",{"slug":59,"name":60,"version":61,"author":62,"author_profile":63,"description":64,"short_description":65,"active_installs":66,"downloaded":67,"rating":13,"num_ratings":68,"last_updated":69,"tested_up_to":70,"requires_at_least":71,"requires_php":72,"tags":73,"homepage":78,"download_link":79,"security_score":80,"vuln_count":81,"unpatched_count":28,"last_vuln_date":82,"fetched_at":30},"wpecounter","WP Views Counter","2.1.3","etruel","https:\u002F\u002Fprofiles.wordpress.org\u002Fetruel\u002F","\u003Cp>\u003Cstrong>WP Views Counter\u003C\u002Fstrong> is a lightweight, high-performance plugin that accurately tracks and displays post, page, and custom post type views — directly in the WordPress admin, via shortcode, or with a Gutenberg block.\u003C\u002Fp>\n\u003Cp>Built for bloggers, marketers, store owners, and developers, it works seamlessly across all post types — including WooCommerce and Easy Digital Downloads — with minimal impact on your site’s speed. No external scripts. No unnecessary bloat.\u003C\u002Fp>\n\u003Cp>This plugin does one job and does it exceptionally well: it tells you which content is getting the most attention.\u003C\u002Fp>\n\u003Ch4>Key Benefits\u003C\u002Fh4>\n\u003Cp>✅ \u003Cstrong>Accurate view counts\u003C\u002Fstrong> in admin columns, shortcode, or block\u003Cbr \u002F>\n✅ \u003Cstrong>Metabox per post\u003C\u002Fstrong> with real-time views and reset button\u003Cbr \u002F>\n✅ \u003Cstrong>Exclude views from logged-in users or specific roles\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ \u003Cstrong>Fully AJAX-powered\u003C\u002Fstrong> — no page reloads or slowdowns\u003Cbr \u002F>\n✅ \u003Cstrong>Works with all post types\u003C\u002Fstrong>, including EDD and WooCommerce\u003Cbr \u002F>\n✅ \u003Cstrong>Block to display popular posts\u003C\u002Fstrong> — no legacy widgets required\u003Cbr \u002F>\n✅ \u003Cstrong>Developer-friendly and fully translatable\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ \u003Cstrong>Import views from other plugins\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Whether you’re optimizing your content strategy or simply want to know what’s working, \u003Cstrong>WP Views Counter\u003C\u002Fstrong> is the simple and effective alternative to bloated analytics plugins.\u003C\u002Fp>\n\u003Cp>📦 Start tracking your most popular content today — with clarity, speed and control.\u003C\u002Fp>\n\u003Cp>💡 Developer-friendly: \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FEtruel-Developments\u002Fwpecounter\u002Fissues\" rel=\"nofollow ugc\">Contribute on GitHub\u003C\u002Fa> — forks and pull requests welcome.\u003C\u002Fp>\n","Fast, lightweight post views counter. Display views in admin, blocks or shortcodes — no tracking scripts required.",2000,41916,5,"2025-12-19T18:09:00.000Z","6.9.4","3.1","7.0",[74,75,76,22,77],"ajax-counter","analytics","popular-posts","views-counter","https:\u002F\u002Fetruel.com\u002Fdownloads\u002Fwpecounter","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwpecounter.2.1.3.zip",98,2,"2025-12-14 00:00:00",{"slug":84,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":13,"downloaded":91,"rating":48,"num_ratings":92,"last_updated":93,"tested_up_to":94,"requires_at_least":95,"requires_php":53,"tags":96,"homepage":100,"download_link":101,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"easy-post-view-counter","Easy Post View Counter","1.2.3","Michael Gertz","https:\u002F\u002Fprofiles.wordpress.org\u002Fmgertz\u002F","\u003Cp>With this plugin you can see how many views a single post has.\u003Cbr \u002F>\nJust link on the All Post link in the left menu\u003Cbr \u002F>\nNo need for adding codes anywhere, just plug’n’play\u003C\u002Fp>\n","With this plugin you can see how many views a single post has.",10991,3,"2015-04-07T06:59:00.000Z","4.1.42","2.7",[97,98,22,55,99],"post-counter","post-hits","view-counter","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Feasy-post-views-counter\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-post-view-counter.1.2.3.zip",{"slug":103,"name":104,"version":105,"author":106,"author_profile":107,"description":108,"short_description":109,"active_installs":13,"downloaded":110,"rating":13,"num_ratings":92,"last_updated":111,"tested_up_to":70,"requires_at_least":112,"requires_php":113,"tags":114,"homepage":118,"download_link":119,"security_score":13,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"init-view-count","Init View Count – AI-Powered, Trending, REST API","1.19.3","Init HTML","https:\u002F\u002Fprofiles.wordpress.org\u002Fbrokensmile2103-1\u002F","\u003Cp>\u003Cstrong>Init View Count\u003C\u002Fstrong> is a fast, clean plugin to track post views without clutter. It:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Uses REST API and JS to count real views\u003C\u002Fli>\n\u003Cli>Prevents duplicate counts with session\u002Flocal storage\u003C\u002Fli>\n\u003Cli>Stores counts in meta keys like \u003Ccode>_init_view_count\u003C\u002Fcode>, \u003Ccode>_init_view_day_count\u003C\u002Fcode>, etc.\u003C\u002Fli>\n\u003Cli>Provides \u003Ccode>[init_view_count]\u003C\u002Fcode> and \u003Ccode>[init_view_list]\u003C\u002Fcode> shortcodes\u003C\u002Fli>\n\u003Cli>Includes \u003Ccode>[init_view_ranking]\u003C\u002Fcode> shortcode with tabbed ranking by time range\u003C\u002Fli>\n\u003Cli>Supports template overrides (like WooCommerce)\u003C\u002Fli>\n\u003Cli>Lightweight. No tracking, no admin bloat.\u003C\u002Fli>\n\u003Cli>Includes REST API to query most viewed posts\u003C\u002Fli>\n\u003Cli>Supports pagination in \u003Ccode>[init_view_list]\u003C\u002Fcode> via the \u003Ccode>page\u003C\u002Fcode> attribute\u003C\u002Fli>\n\u003Cli>Batch view tracking support to reduce REST requests on busy sites\u003C\u002Fli>\n\u003Cli>Optional strict IP-based filtering to block fake view requests posted directly to the REST endpoint\u003C\u002Fli>\n\u003Cli>Includes a Dashboard widget to monitor top viewed posts directly in wp-admin\u003C\u002Fli>\n\u003Cli>Learns site-wide traffic shape (hourly & weekday) via AI-powered smoothing\u003C\u002Fli>\n\u003Cli>Shapes cached and updated efficiently with minimal overhead\u003C\u002Fli>\n\u003Cli>Safe reset action to rebuild patterns automatically\u003C\u002Fli>\n\u003Cli>Fully integrated with Trending Engine v3 for uplift-based scoring\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This plugin is part of the \u003Ca href=\"https:\u002F\u002Fen.inithtml.com\u002Finit-plugin-suite-minimalist-powerful-and-free-wordpress-plugins\u002F\" rel=\"nofollow ugc\">Init Plugin Suite\u003C\u002Fa> — a collection of minimalist, fast, and developer-focused tools for WordPress.\u003C\u002Fp>\n\u003Cp>GitHub repository: \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbrokensmile2103\u002Finit-view-count\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Fbrokensmile2103\u002Finit-view-count\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Highlights\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>REST-first design — no jQuery or legacy Ajax\u003C\u002Fli>\n\u003Cli>View tracking powered by time + scroll detection\u003C\u002Fli>\n\u003Cli>Realtime display with optional animated counters\u003C\u002Fli>\n\u003Cli>Fully theme-compatible with overrideable templates\u003C\u002Fli>\n\u003Cli>Developer-friendly with rich filter support\u003C\u002Fli>\n\u003Cli>Optional \u003Ccode>[init_view_ranking]\u003C\u002Fcode> shortcode for tabbed view by day\u002Fweek\u002Fmonth\u002Ftotal\u003C\u002Fli>\n\u003Cli>Assets are only loaded when needed – perfect for performance-conscious themes\u003C\u002Fli>\n\u003Cli>Fully compatible with headless and SPA frameworks (REST-first + lazy)\u003C\u002Fli>\n\u003Cli>Supports batch mode: delay view requests and send in groups (configurable in settings)\u003C\u002Fli>\n\u003Cli>Includes optional Dashboard widget for quick admin overview of top viewed posts\u003C\u002Fli>\n\u003Cli>AI-powered Traffic Shape Learner – understands your site’s hourly & weekly rhythm\u003C\u002Fli>\n\u003Cli>Auto-integrated with Trending Engine v3 for seasonality-aware uplift detection\u003C\u002Fli>\n\u003Cli>Smart fallbacks (day \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> week \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> month \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> total) ensure rankings never run empty\u003C\u002Fli>\n\u003Cli>Ultra-light: only 1 write per increment + 1 rollup per day, cache-first design\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Shortcodes\u003C\u002Fh3>\n\u003Ch3>[init_view_count]\u003C\u002Fh3>\n\u003Cp>Shows current view count for a post. Only works inside a post loop.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Attributes:\u003C\u002Fstrong>\u003Cbr \u002F>\n– \u003Ccode>field\u003C\u002Fcode>: \u003Ccode>total\u003C\u002Fcode> (default), \u003Ccode>day\u003C\u002Fcode>, \u003Ccode>week\u003C\u002Fcode>, \u003Ccode>month\u003C\u002Fcode> – which counter to display\u003Cbr \u002F>\n– \u003Ccode>format\u003C\u002Fcode>: \u003Ccode>formatted\u003C\u002Fcode> (default), \u003Ccode>raw\u003C\u002Fcode>, or \u003Ccode>short\u003C\u002Fcode> – controls number formatting\u003Cbr \u002F>\n– \u003Ccode>time\u003C\u002Fcode>: \u003Ccode>true\u003C\u002Fcode> to show time diff from post date (e.g. “3 days ago”)\u003Cbr \u002F>\n– \u003Ccode>icon\u003C\u002Fcode>: \u003Ccode>true\u003C\u002Fcode> to display a small SVG icon before the count\u003Cbr \u002F>\n– \u003Ccode>schema\u003C\u002Fcode>: \u003Ccode>true\u003C\u002Fcode> to output schema.org microdata (InteractionCounter)\u003Cbr \u002F>\n– \u003Ccode>class\u003C\u002Fcode>: add a custom CSS class to the outer wrapper\u003C\u002Fp>\n\u003Ch3>[init_view_list]\u003C\u002Fh3>\n\u003Cp>Show list of most viewed posts.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Attributes:\u003C\u002Fstrong>\u003Cbr \u002F>\n– \u003Ccode>number\u003C\u002Fcode>: Number of posts to show (default: 5)\u003Cbr \u002F>\n– \u003Ccode>page\u003C\u002Fcode>: Show a specific page of results (default: 1)\u003Cbr \u002F>\n– \u003Ccode>post_type\u003C\u002Fcode>: Type of post (default: post)\u003Cbr \u002F>\n– \u003Ccode>template\u003C\u002Fcode>: \u003Ccode>sidebar\u003C\u002Fcode> (default), \u003Ccode>full\u003C\u002Fcode>, \u003Ccode>grid\u003C\u002Fcode>, \u003Ccode>details\u003C\u002Fcode> (can be overridden)\u003Cbr \u002F>\n– \u003Ccode>title\u003C\u002Fcode>: Title above list. Set to empty (\u003Ccode>title=\"\"\u003C\u002Fcode>) to hide\u003Cbr \u002F>\n– \u003Ccode>class\u003C\u002Fcode>: Custom class added to wrapper\u003Cbr \u002F>\n– \u003Ccode>orderby\u003C\u002Fcode>: Sort field (default: meta_value_num)\u003Cbr \u002F>\n– \u003Ccode>order\u003C\u002Fcode>: ASC or DESC (default: DESC)\u003Cbr \u002F>\n– \u003Ccode>range\u003C\u002Fcode>: \u003Ccode>total\u003C\u002Fcode>, \u003Ccode>day\u003C\u002Fcode>, \u003Ccode>week\u003C\u002Fcode>, \u003Ccode>month\u003C\u002Fcode>, \u003Ccode>trending\u003C\u002Fcode>\u003Cbr \u002F>\n– \u003Ccode>category\u003C\u002Fcode>: Filter by category slug\u003Cbr \u002F>\n– \u003Ccode>tag\u003C\u002Fcode>: Filter by tag slug\u003Cbr \u002F>\n– \u003Ccode>empty\u003C\u002Fcode>: Message to show if no posts found\u003C\u002Fp>\n\u003Ch3>[init_view_ranking]\u003C\u002Fh3>\n\u003Cp>Show tabbed ranking of most viewed posts. Uses REST API and JavaScript for dynamic loading. Optimized for SPA\u002Fheadless usage.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Attributes:\u003C\u002Fstrong>\u003Cbr \u002F>\n– \u003Ccode>tabs\u003C\u002Fcode>: Comma-separated list of ranges. Available: \u003Ccode>total\u003C\u002Fcode>, \u003Ccode>day\u003C\u002Fcode>, \u003Ccode>week\u003C\u002Fcode>, \u003Ccode>month\u003C\u002Fcode> (default: all)\u003Cbr \u002F>\n– \u003Ccode>number\u003C\u002Fcode>: Number of posts per tab (default: 5)\u003Cbr \u002F>\n– \u003Ccode>class\u003C\u002Fcode>: Custom class for outer wrapper\u003C\u002Fp>\n\u003Cp>This shortcode automatically enqueues required JS and uses skeleton loaders while fetching data.\u003C\u002Fp>\n\u003Ch3>REST API\u003C\u002Fh3>\n\u003Cp>This plugin exposes two REST endpoints to interact with view counts: one for recording views and another for retrieving top posts.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>POST \u002Fwp-json\u002Finitvico\u002Fv1\u002Fcount\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nRecord one or more views. Accepts a single post ID or an array of post IDs.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Parameters:\u003C\u002Fstrong>\u003Cbr \u002F>\n– \u003Ccode>post_id\u003C\u002Fcode> — \u003Cem>(int|array)\u003C\u002Fem> Required. One or more post IDs to increment view count for.\u003C\u002Fp>\n\u003Cp>This endpoint checks if the post is published, belongs to a supported post type, and applies delay\u002Fscroll config (via JavaScript). It updates total and optionally day\u002Fweek\u002Fmonth view counters.\u003C\u002Fp>\n\u003Cp>Note: The number of post IDs processed per request is limited based on the batch setting in plugin options.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>GET \u002Fwp-json\u002Finitvico\u002Fv1\u002Ftop\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nRetrieve the most viewed posts, ranked by view count.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Parameters:\u003C\u002Fstrong>\u003Cbr \u002F>\n– \u003Ccode>range\u003C\u002Fcode> — \u003Cem>(string)\u003C\u002Fem> \u003Ccode>total\u003C\u002Fcode>, \u003Ccode>day\u003C\u002Fcode>, \u003Ccode>week\u003C\u002Fcode>, \u003Ccode>month\u003C\u002Fcode>. Defaults to \u003Ccode>total\u003C\u002Fcode>.\u003Cbr \u002F>\n– \u003Ccode>post_type\u003C\u002Fcode> — \u003Cem>(string)\u003C\u002Fem> Post type to query. Defaults to \u003Ccode>post\u003C\u002Fcode>.\u003Cbr \u002F>\n– \u003Ccode>number\u003C\u002Fcode> — \u003Cem>(int)\u003C\u002Fem> Number of posts to return. Default: \u003Ccode>5\u003C\u002Fcode>.\u003Cbr \u002F>\n– \u003Ccode>page\u003C\u002Fcode> — \u003Cem>(int)\u003C\u002Fem> Pagination offset. Default: \u003Ccode>1\u003C\u002Fcode>.\u003Cbr \u002F>\n– \u003Ccode>fields\u003C\u002Fcode> — \u003Cem>(string)\u003C\u002Fem> \u003Ccode>minimal\u003C\u002Fcode> (id, title, link) or \u003Ccode>full\u003C\u002Fcode> (includes excerpt, thumbnail, type, date, etc.)\u003Cbr \u002F>\n– \u003Ccode>tax\u003C\u002Fcode> — \u003Cem>(string)\u003C\u002Fem> Optional. Taxonomy slug (e.g. \u003Ccode>category\u003C\u002Fcode>).\u003Cbr \u002F>\n– \u003Ccode>terms\u003C\u002Fcode> — \u003Cem>(string)\u003C\u002Fem> Comma-separated term slugs or IDs.\u003Cbr \u002F>\n– \u003Ccode>no_cache\u003C\u002Fcode> — \u003Cem>(bool)\u003C\u002Fem> If \u003Ccode>1\u003C\u002Fcode>, disables transient caching.\u003C\u002Fp>\n\u003Cp>This endpoint supports filtering and caching, and can be extended to support custom output formats.\u003C\u002Fp>\n\u003Ch3>Filters for Developers\u003C\u002Fh3>\n\u003Cp>This plugin provides multiple filters to help developers customize behavior and output in both REST API and shortcode use cases.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_should_count\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nAllow or prevent counting views for a specific post.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> REST \u003Ccode>\u002Fcount\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>bool $should_count\u003C\u002Fcode>, \u003Ccode>int $post_id\u003C\u002Fcode>, \u003Ccode>WP_REST_Request $request\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_meta_key\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nChange the meta key used to read or write view counts.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> REST & Shortcodes\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>string $meta_key\u003C\u002Fcode>, \u003Ccode>int|null $post_id\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_after_counted\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nRun custom logic after view count has been incremented.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> REST \u003Ccode>\u002Fcount\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>int $post_id\u003C\u002Fcode>, \u003Ccode>array $updated\u003C\u002Fcode>, \u003Ccode>WP_REST_Request $request\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_api_top_args\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nCustomize WP_Query arguments used for \u003Ccode>\u002Ftop\u003C\u002Fcode> endpoint.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> REST \u003Ccode>\u002Ftop\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $args\u003C\u002Fcode>, \u003Ccode>WP_REST_Request $request\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_api_top_item\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nModify each item before it’s returned in the \u003Ccode>\u002Ftop\u003C\u002Fcode> response.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> REST \u003Ccode>\u002Ftop\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $item\u003C\u002Fcode>, \u003Ccode>WP_Post $post\u003C\u002Fcode>, \u003Ccode>WP_REST_Request $request\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_api_top_cache_time\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nAdjust cache time (in seconds) for \u003Ccode>\u002Ftop\u003C\u002Fcode> results.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> REST \u003Ccode>\u002Ftop\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>int $ttl\u003C\u002Fcode>, \u003Ccode>WP_REST_Request $request\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_top_post_types\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nCustomize the list of post types returned by the \u003Ccode>\u002Ftop\u003C\u002Fcode> endpoint.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> REST \u003Ccode>\u002Ftop\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $post_types\u003C\u002Fcode>, \u003Ccode>WP_REST_Request $request\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_query_args\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nFilter WP_Query args for \u003Ccode>[init_view_list]\u003C\u002Fcode> shortcode.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> \u003Ccode>[init_view_list]\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $args\u003C\u002Fcode>, \u003Ccode>array $atts\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_empty_output\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nCustomize the HTML output when no posts are found.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> \u003Ccode>[init_view_list]\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>string $output\u003C\u002Fcode>, \u003Ccode>array $atts\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_view_list_atts\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nModify shortcode attributes before WP_Query is run.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> \u003Ccode>[init_view_list]\u003C\u002Fcode>\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $atts\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_default_shortcode\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nCustomize the default shortcode used when auto-inserting view count into post content.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> \u003Ccode>[init_view_count]\u003C\u002Fcode> auto-insert\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>string $shortcode\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_auto_insert_enabled\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nControl whether auto-insert is enabled for a given context.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> \u003Ccode>[init_view_count]\u003C\u002Fcode> auto-insert\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>bool $enabled\u003C\u002Fcode>, \u003Ccode>string $position\u003C\u002Fcode>, \u003Ccode>string $post_type\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_engagement_meta_keys\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nChange the meta keys used to retrieve \u003Ccode>like\u003C\u002Fcode> and \u003Ccode>share\u003C\u002Fcode> counts when calculating engagement quality.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> Engagement algorithm\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $meta_keys\u003C\u002Fcode> (\u003Ccode>likes\u003C\u002Fcode>, \u003Ccode>shares\u003C\u002Fcode>), \u003Ccode>int $post_id\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_trending_post_types\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nOverride the list of post types used by the Trending cron calculation.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> Cron Trending\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $post_types\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ccode>init_plugin_suite_view_count_trending_component_weights\u003C\u002Fcode>\u003C\u002Fstrong>\u003Cbr \u002F>\nAdjust weights for Trending score components.\u003Cbr \u002F>\n\u003Cstrong>Applies to:\u003C\u002Fstrong> Trending algorithm\u003Cbr \u002F>\n\u003Cstrong>Params:\u003C\u002Fstrong> \u003Ccode>array $weights\u003C\u002Fcode> (\u003Ccode>velocity\u003C\u002Fcode>, \u003Ccode>engagement\u003C\u002Fcode>, \u003Ccode>freshness\u003C\u002Fcode>, \u003Ccode>momentum\u003C\u002Fcode>)\u003C\u002Fp>\n\u003Ch3>Template Override\u003C\u002Fh3>\n\u003Cp>To customize output layout, copy any template file into your theme:\u003C\u002Fp>\n\u003Cp>Example: \u003Ccode>your-theme\u002Finit-view-count\u002Fview-list-grid.php\u003C\u002Fcode>\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPLv2 or later.\u003Cbr \u002F>\nYou are free to use, modify, and distribute it under the same license.\u003C\u002Fp>\n","Count post views accurately via REST API with customizable display. Lightweight, fast, and extensible. Includes shortcode with multiple layouts.",1810,"2026-03-04T15:27:00.000Z","5.5","7.4",[22,115,116,117,99],"rest-api","shortcode","trending-posts","https:\u002F\u002Finithtml.com\u002Fplugin\u002Finit-view-count\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Finit-view-count.1.19.3.zip",{"slug":121,"name":122,"version":123,"author":124,"author_profile":125,"description":126,"short_description":127,"active_installs":128,"downloaded":129,"rating":130,"num_ratings":49,"last_updated":131,"tested_up_to":132,"requires_at_least":133,"requires_php":53,"tags":134,"homepage":136,"download_link":137,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"view-post-counter","View Post counter","1.1","ThemesVila","https:\u002F\u002Fprofiles.wordpress.org\u002Fmasumbd\u002F","\u003Cp>This is very simple plugin of view post counter. You can use this plugin into your wordpress theme template very easily Just use a php shortcode.\u003C\u002Fp>\n\u003Cp>This plugin is capability in all wordpress version.\u003C\u002Fp>\n","This is very simple plugin of view post counter",90,8417,96,"2015-07-03T18:06:00.000Z","3.5.2","3.0",[20,21,135,22,24],"post","http:\u002F\u002Fwordpress.org\u002Fplugins\u002Fview-post-counter\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fview-post-counter.zip",{"attackSurface":139,"codeSignals":162,"taintFlows":173,"riskAssessment":174,"analyzedAt":184},{"hooks":140,"ajaxHandlers":156,"restRoutes":157,"shortcodes":158,"cronEvents":161,"entryPointCount":14,"unprotectedCount":28},[141,147,152],{"type":142,"name":143,"callback":144,"file":145,"line":146},"filter","the_content","dppv_post_views","dppv-post-views.php",17,{"type":148,"name":149,"callback":150,"file":145,"line":151},"action","wp_head","dppv_add_view",19,{"type":148,"name":153,"callback":154,"file":145,"line":155},"wp_enqueue_scripts","wp_register_style_script_dppv",20,[],[],[159],{"tag":55,"callback":144,"file":145,"line":160},22,[],{"dangerousFunctions":163,"sqlUsage":164,"outputEscaping":170,"fileOperations":28,"externalRequests":28,"nonceChecks":28,"capabilityChecks":28,"bundledLibraries":172},[],{"prepared":81,"raw":14,"locations":165},[166],{"file":167,"line":168,"context":169},"dppv_check.php",6,"$wpdb->get_results() with variable interpolation",{"escaped":28,"rawEcho":28,"locations":171},[],[],[],{"summary":175,"deductions":176},"The \"dp-post-views\" plugin version 1.2 exhibits a generally strong security posture based on the provided static analysis.  It's commendable that there are no reported dangerous functions, external HTTP requests, file operations, or identified critical or high-severity taint flows.  The code demonstrates good practices by properly escaping all outputs and utilizing prepared statements for the majority of its SQL queries.  The vulnerability history is clean, with zero known CVEs, which suggests a history of secure development or at least a lack of past exploitable issues.  The attack surface appears minimal, with all identified entry points (the single shortcode) not explicitly flagged as unprotected by the analysis, implying some form of implicit or default protection.\n\nHowever, the lack of explicit nonce checks and capability checks across all entry points is a notable concern. While the analysis reports 0 unprotected entry points, the absence of these explicit security mechanisms leaves the shortcode potentially vulnerable to CSRF attacks if not handled internally by WordPress in a secure manner for shortcodes.  Furthermore, the 3 SQL queries, while mostly prepared, still have a portion that is not, representing a potential risk of SQL injection if the unsanitized portion is ever exposed to user-controlled input without proper sanitization.  The taint analysis showing 0 flows is positive but should be considered within the context of the limited scope of analyzed flows.",[177,180,182],{"reason":178,"points":179},"Missing nonce checks",10,{"reason":181,"points":68},"SQL queries not fully prepared",{"reason":183,"points":179},"Missing capability checks","2026-03-16T21:42:59.931Z",{"wat":186,"direct":193},{"assetPaths":187,"generatorPatterns":189,"scriptPaths":190,"versionParams":191},[188],"\u002Fwp-content\u002Fplugins\u002Fdp-post-views\u002Fstylesheet\u002Fstyle.css",[],[],[192],"dp-post-views\u002Fstylesheet\u002Fstyle.css?ver=",{"cssClasses":194,"htmlComments":196,"htmlAttributes":197,"restEndpoints":198,"jsGlobals":199,"shortcodeOutput":200},[195],"dppv_eyes",[],[],[],[],[201,202],"\u003Cimg src='","' class='dppv_eyes' width='100' height='100'>"]