[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$feT322dzZ6g4pOwgcuMxFlU7rkfksmf1xzvdz8fGsPac":3,"$fMJE2taKxL4zkujpl33NjEvy8RBqKJJ3pCCP7ozuam0o":243,"$fAyfhF6coUEXSHlBlrrU-qGxnyb7GMWsG6vPkzNk8zg0":247},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"discovery_status":30,"vulnerabilities":31,"developer":32,"crawl_stats":28,"alternatives":39,"analysis":137,"fingerprints":224},"pending-status","Pending Status","1.0.4","Room 34 Creative Services, LLC","https:\u002F\u002Fprofiles.wordpress.org\u002Froom34\u002F","\u003Cp>\u003Cstrong>Pending Status\u003C\u002Fstrong> is a super-simple solution for WordPress sites that need very basic workflow functionality. It’s easy to set up and doesn’t overload your site with unnecessary features.\u003C\u002Fp>\n\u003Cp>If you have Contributors who can create, but not publish, their own content on your site, Pending Status notifies you of any pending posts that are ready to review. By default, all users with the Administrator or Editor role will see a \u003Cstrong>Pending Status\u003C\u002Fstrong> box on the Dashboard, showing the counts of pending posts, with a convenient link to the list of pending posts for that post type.\u003C\u002Fp>\n\u003Cp>Optionally, you can also identify one or more Administrators\u002FEditors to receive email notifications whenever a post is saved with “pending” status. The subject and message of the email are fully editable, and a direct edit link for the post is included in the body of the email.\u003C\u002Fp>\n\u003Cp>Pending Status works with \u003Cem>all\u003C\u002Fem> publicly queryable post types: Posts, Pages, and even Custom Post Types created by third party plugins (e.g. WooCommerce, The Events Calendar, etc.), or your own custom code.\u003C\u002Fp>\n","Get notified when your site has posts pending review.",100,3756,2,"2025-04-24T17:36:00.000Z","6.8.5","4.9","7.0.0",[19,20,21,22,23],"notifications","pending","pending-review","post-status","workflow","https:\u002F\u002Froom34.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpending-status.1.0.4.zip",92,0,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":34,"total_installs":35,"avg_security_score":26,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"room34",10,13590,138,73,"2026-05-19T19:44:38.331Z",[40,61,80,101,119],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":48,"downloaded":49,"rating":11,"num_ratings":50,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":54,"tags":55,"homepage":59,"download_link":60,"security_score":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"publishpress-statuses","PublishPress Statuses – Custom Post Status and Workflow","1.2.4","PublishPress","https:\u002F\u002Fprofiles.wordpress.org\u002Fpublishpress\u002F","\u003Cp>Have you ever wanted to label a WordPress post something other than “Draft” or “Pending Review”? The \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fstatuses\u002F\" rel=\"nofollow ugc\">PublishPress Statuses\u003C\u002Fa> plugin can help.\u003C\u002Fp>\n\u003Cp>PublishPress Statuses allows you to create additional statuses for your posts. For example, you can add statuses such as “In Progress”, “Needs Work”, or “Rejected”. You can also control which users can move posts to each status.\u003C\u002Fp>\n\u003Ch3>Why Use PublishPress Statuses?\u003C\u002Fh3>\n\u003Cp>WordPress provides you with only two statuses for your post: “Draft” or “Pending Review”. This means that before your content is published it can only be labeled as “Draft” or “Pending Review”.\u003C\u002Fp>\n\u003Cp>Those statuses are too limiting for many publishers. For example, what label should you use for content that is assigned to a writer? What label should you use for a post that needs work, or has been rejected? With the PublishPress Statuses plugin, you can add new statuses that accurately describe the stages of your publishing process.\u003C\u002Fp>\n\u003Cp>There are two types of statuses:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Pre-Publication Statues\u003C\u002Fstrong>: For posts that are unpublished.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Visibility Statuses\u003C\u002Fstrong>: For posts that are published.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Pre-Publication Statuses\u003C\u002Fh3>\n\u003Cp>Go to the “Statuses” area in your WordPress site and you’ll six different statuses. This is the \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fmain-workflow\u002F\" rel=\"nofollow ugc\">main workflow\u003C\u002Fa>. Every post on your site must use this workflow. However, with PublishPress Statuses, you can move, rearrange and add to this workflow.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Draft\u003C\u002Fstrong>: This is the WordPress default status and can not be modified. \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Pitch\u003C\u002Fstrong>: This is a new status. You can use this status to indicate the post is just an idea.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Assigned\u003C\u002Fstrong>: This is a new status. You can use this status to show the post has been given to a writer.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>In Progress\u003C\u002Fstrong>: This is a new status. You can use this status to if the post is being worked on.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Approved\u003C\u002Fstrong>: This is a new status. You can use this status to when the post has been accepted and it ready for publication.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Pending Review\u003C\u002Fstrong>: This is a core WordPress status and can not be modified.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fstart-statuses\u002F\" rel=\"nofollow ugc\">Click here to see how to create and use statuses\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>In addition to the default workflow, PublishPress Statuses allows you to create \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Falternate-workflow\u002F\" rel=\"nofollow ugc\">alternate workflows\u003C\u002Fa>. These statuses are for content that is not on a direct path to publication. Examples of these alternate workflows include “Deferred”, “Needs Work” and “Rejected”.\u003C\u002Fp>\n\u003Ch3>Custom Permissions for Pre-Published Statuses\u003C\u002Fh3>\n\u003Cp>PublishPress Statuses allows to decide which users can move content to which statuses. Go to “Statuses” then “Settings” and click the “Roles” tab. This allows you to choose which user roles can move a post to this status.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fstatuses-options\u002F\" rel=\"nofollow ugc\">See how control access to statuses\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>You can take this further and decide who assign, edit, and delete content in each status. This is possible if you also use the PublishPress Permissions Pro plugin.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fextended-capabilities-statuses\u002F\" rel=\"nofollow ugc\">Click here to see add advanced capabilities to statuses\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Visibility Statuses\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fcustom-visibility-statuses\u002F\" rel=\"nofollow ugc\">Visibility Statuses\u003C\u002Fa> allow you to control who can access published content on your WordPress site.\u003C\u002Fp>\n\u003Cp>The PublishPress Statuses plugin integrates with the \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpermissions\u002F\" rel=\"nofollow ugc\">PublishPress Permissions Pro\u003C\u002Fa> plugin. This integration allows you to create custom visibility statuses and control who can access the content on the front of your WordPress site.\u003C\u002Fp>\n\u003Cp>We call this feature “Custom Visibility Statuses” because WordPress has three core visibility statuses:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Scheduled\u003C\u002Fstrong>: This post is scheduled for future publication.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Published\u003C\u002Fstrong>: This post is available to general public.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Private\u003C\u002Fstrong>: This post is published for users logged in to your WordPress site.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Using PublishPress Statuses and PublishPress Permissions Pro together, you can add your own custom visibility statuses.\u003C\u002Fp>\n\u003Ch3>Custom Permissions for Visibility Statuses\u003C\u002Fh3>\n\u003Cp>The PublishPress Statuses plugin integrates with the PublishPress Permissions Pro plugins and PublishPress Capabilities Pro plugins. These allow you to control capabilities for each visibility status. You can decide who can assign, read, edit and delete content in each status.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fknowledge-base\u002Fcustom-capabilities-visibility-statuses\u002F\" rel=\"nofollow ugc\">See how control access to visibility statuses\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>You can take this further and decide who assign, edit, and delete content in each status. This is possible if you also use the PublishPress Permissions Pro plugin.\u003C\u002Fp>\n\u003Ch3>Join PublishPress and get the Pro plugins\u003C\u002Fh3>\n\u003Cp>The Pro versions of the PublishPress plugins are well worth your investment. The Pro versions have extra features and faster support. \u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpricing\u002F\" rel=\"nofollow ugc\">Click here to join PublishPress\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Join PublishPress and you’ll get access to these Pro plugins:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fauthors\" rel=\"nofollow ugc\">PublishPress Authors Pro\u003C\u002Fa> allows you to add multiple authors and guest authors to WordPress posts.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fblocks\" rel=\"nofollow ugc\">PublishPress Blocks Pro\u003C\u002Fa> has everything you need to build professional websites with the WordPress block editor.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fcapabilities\" rel=\"nofollow ugc\">PublishPress Capabilities Pro\u003C\u002Fa> is the plugin to manage your WordPress user roles, permissions, and capabilities.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fchecklists\" rel=\"nofollow ugc\">PublishPress Checklists Pro\u003C\u002Fa> enables you to define tasks that must be completed before content is published.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Ffuture\" rel=\"nofollow ugc\">PublishPress Future Pro\u003C\u002Fa> is the plugin for scheduling changes to your posts.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpermissions\" rel=\"nofollow ugc\">PublishPress Permissions Pro\u003C\u002Fa>  is the plugin for restricted content and advanced WordPress permissions.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fpublishpress\" rel=\"nofollow ugc\">PublishPress Planner Pro\u003C\u002Fa> is the plugin for managing and scheduling WordPress content.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Frevisions\" rel=\"nofollow ugc\">PublishPress Revisions Pro\u003C\u002Fa> allows you to update your published pages with teamwork and precision.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fseries\" rel=\"nofollow ugc\">PublishPress Series Pro\u003C\u002Fa> enables you to group content together into a series.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fshortlinks\" rel=\"nofollow ugc\">PublishPress Shortlinks Pro\u003C\u002Fa> allows you to create custom URLs for your posts and external links. \u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpublishpress.com\u002Fstatuses\" rel=\"nofollow ugc\">PublishPress Statuses Pro\u003C\u002Fa> enables you to create additional publishing steps for your posts.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Together, these plugins are a suite of powerful publishing tools for WordPress. If you need to create a professional workflow in WordPress, with moderation, revisions, permissions and more, then you should try PublishPress.\u003C\u002Fp>\n\u003Ch3>Bug Reports\u003C\u002Fh3>\n\u003Cp>Bug reports for PublishPress Statuses are welcomed in our \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpublishpress\u002Fpublishpress-statuses\" rel=\"nofollow ugc\">repository on GitHub\u003C\u002Fa>. Please note that GitHub is not a support forum, and that issues that are not properly qualified as bugs will be closed.\u003C\u002Fp>\n","The PublishPress Statuses plugin allows you to create additional statuses for your posts. You can use each status to create publishing workflows.",1000,38992,4,"2026-04-09T18:14:00.000Z","6.9.4","5.5","7.2.5",[56,57,21,58,23],"archived-status","custom-statuses","status-manager","https:\u002F\u002Fpublishpress.com\u002Fstatuses","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpublishpress-statuses.1.2.4.zip",{"slug":62,"name":63,"version":64,"author":65,"author_profile":66,"description":67,"short_description":68,"active_installs":34,"downloaded":69,"rating":27,"num_ratings":27,"last_updated":70,"tested_up_to":71,"requires_at_least":72,"requires_php":73,"tags":74,"homepage":77,"download_link":78,"security_score":79,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"simple-post-alerts","Simple Post Alerts","0.1","Alex Phelps","https:\u002F\u002Fprofiles.wordpress.org\u002Falexphelps3\u002F","\u003Cp>Simple Post Alerts\u003Cbr \u002F>\nAllows users to easily get alerts for new posts pending review and published.\u003C\u002Fp>\n\u003Ch4>How it works\u003C\u002Fh4>\n\u003Cp>Go to your user profile and you’ll see two new settings for pending review and published posts. You can also manage these settings for other users. Each time there is a new post that matches your settings you’ll get a simple email notification with a link.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>Note – users who cannot publish posts don’t see the setting for posts pending review.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n","Allows users to easily get alerts for new posts pending review and published.",1292,"2015-08-17T00:41:00.000Z","4.2.39","4.0","",[21,75,76],"post-alerts","post-notifications","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fsimple-post-alerts","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-post-alerts.zip",85,{"slug":81,"name":82,"version":83,"author":84,"author_profile":85,"description":86,"short_description":87,"active_installs":48,"downloaded":88,"rating":89,"num_ratings":90,"last_updated":91,"tested_up_to":92,"requires_at_least":93,"requires_php":73,"tags":94,"homepage":99,"download_link":100,"security_score":79,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"pending-submission-notifications","Pending Submission Notifications","1.2","razvanh","https:\u002F\u002Fprofiles.wordpress.org\u002Frazvanh\u002F","\u003Cp>This enables email notifications of pending review submissions. By default the email goes to the admin email set on your Settings page.\u003C\u002Fp>\n\u003Cp>You can set the email(s) that should receive these notifications Under Settings>Pending Submission Notifications. You can add multiple email addresses, using commas to separate them.\u003C\u002Fp>\n\u003Cp>When a submission is approved by an admin, an email notification is sent to the contributor.\u003C\u002Fp>\n\u003Cp>For more info visit http:\u002F\u002Flifeofadesigner.com\u002F\u003C\u002Fp>\n","Email notifications for pending review content submission.",22619,72,12,"2018-02-21T17:05:00.000Z","4.9.29","4.6",[95,19,96,97,98],"email-notification","pending-notification","pending-submissions","submit-for-review","http:\u002F\u002Flifeofadesigner.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpending-submission-notifications.1.2.1.zip",{"slug":102,"name":103,"version":104,"author":105,"author_profile":106,"description":107,"short_description":108,"active_installs":109,"downloaded":110,"rating":109,"num_ratings":111,"last_updated":112,"tested_up_to":15,"requires_at_least":113,"requires_php":73,"tags":114,"homepage":73,"download_link":118,"security_score":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"contributor-notifications","Contributor Notifications","0.5","Web Guy","https:\u002F\u002Fprofiles.wordpress.org\u002Fwebguyio\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwebguyio\u002Fsupport\" rel=\"nofollow ugc\">💬 Ask Question\u003C\u002Fa> | \u003Ca href=\"mailto:webguywork@gmail.com\" rel=\"nofollow ugc\">📧 Email Me\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>An incredibly simple and lightweight solution for alerting you of new pending posts from contributors and alerting contributors when their submissions are either approved or declined.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Sends email to admin if new post pending\u003C\u002Fli>\n\u003Cli>Sends email to author if pending post approved\u003C\u002Fli>\n\u003Cli>Sends email to author if pending post declined\u003C\u002Fli>\n\u003C\u002Ful>\n","An incredibly simple and lightweight solution for alerting you of new pending posts from contributors and alerting contributors when their submissions &hellip;",80,2278,1,"2026-01-21T13:39:00.000Z","5.0",[115,116,19,20,117],"contributors","emails","posts","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontributor-notifications.zip",{"slug":120,"name":121,"version":122,"author":123,"author_profile":124,"description":125,"short_description":126,"active_installs":127,"downloaded":128,"rating":27,"num_ratings":27,"last_updated":129,"tested_up_to":130,"requires_at_least":131,"requires_php":132,"tags":133,"homepage":135,"download_link":136,"security_score":79,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"wp-unpublish","WP Unpublish","1.1.1","Alexandre Froger","https:\u002F\u002Fprofiles.wordpress.org\u002Ffrogerme\u002F","\u003Cp>Consider the 8 default post statuses that WordPress uses by default:\u003Cbr \u002F>\n* \u003Cstrong>Publish\u003C\u002Fstrong>: Viewable by everyone. (publish)\u003Cbr \u002F>\n* \u003Cstrong>Future\u003C\u002Fstrong>: Scheduled to be published in a future date. (future)\u003Cbr \u002F>\n* \u003Cstrong>Draft\u003C\u002Fstrong>: Incomplete post viewable by anyone with proper user role. (draft)\u003Cbr \u002F>\n* \u003Cstrong>Pending\u003C\u002Fstrong>: Awaiting a user with the publish_posts capability (typically a user assigned the Editor role) to publish. (pending)\u003Cbr \u002F>\n* \u003Cstrong>Private\u003C\u002Fstrong>: Viewable only to WordPress users at Administrator level. (private)\u003Cbr \u002F>\n* \u003Cstrong>Trash\u003C\u002Fstrong>: Posts in the Trash are assigned the trash status. (trash)\u003Cbr \u002F>\n* \u003Cstrong>Auto-Draft\u003C\u002Fstrong>: Revisions that WordPress saves automatically while you are editing. (auto-draft)\u003Cbr \u002F>\n* \u003Cstrong>Inherit\u003C\u002Fstrong> – Used with a child post (such as Attachments and Revisions) to determine the actual status from the parent post. (inherit)\u003C\u002Fp>\n\u003Cp>A typical publishing workflow would be:\u003Cbr \u002F>\n    Auto-Draft > \u003Ccode>Draft\u003C\u002Fcode> > \u003Ccode>Pending\u003C\u002Fcode> > \u003Ccode>Future\u003C\u002Fcode> > \u003Ccode>Publish\u003C\u002Fcode>\u003Cbr \u002F>\nBut what then? \u003Ccode>Trash\u003C\u002Fcode>? \u003Ccode>Private\u003C\u002Fcode>? These seem inadapted.\u003C\u002Fp>\n\u003Cp>This is where the \u003Cstrong>Unpublished\u003C\u002Fstrong> (unpublish) post status provided by this plugin comes into play.\u003Cbr \u002F>\nIt allows content publishers to assign a dedicated status to content they desire not to be published, and avoid assigning a semantically inaccurate status.\u003C\u002Fp>\n","WP Unpublish adds a post status \"Unpublished\" to your WordPress Posts (Classic Editor).",40,2269,"2020-02-21T02:43:00.000Z","5.0.25","4.9.5","7.0",[22,134,23],"publication","https:\u002F\u002Fgithub.com\u002Ffroger-me\u002Fwp-unpublish","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-unpublish.zip",{"attackSurface":138,"codeSignals":172,"taintFlows":193,"riskAssessment":220,"analyzedAt":223},{"hooks":139,"ajaxHandlers":168,"restRoutes":169,"shortcodes":170,"cronEvents":171,"entryPointCount":27,"unprotectedCount":27},[140,146,150,153,156,159,164],{"type":141,"name":142,"callback":143,"priority":34,"file":144,"line":145},"action","init","email_default_strings","class-pending-status.php",23,{"type":141,"name":147,"callback":148,"priority":34,"file":144,"line":149},"admin_menu","admin_page",26,{"type":141,"name":151,"callback":151,"priority":34,"file":144,"line":152},"admin_enqueue_scripts",29,{"type":141,"name":154,"callback":154,"priority":34,"file":144,"line":155},"save_post",32,{"type":141,"name":157,"callback":157,"priority":34,"file":144,"line":158},"wp_dashboard_setup",35,{"type":141,"name":160,"callback":161,"file":162,"line":163},"plugins_loaded","r34ps_plugins_loaded","pending-status.php",51,{"type":141,"name":165,"callback":166,"file":162,"line":167},"admin_notices","r34ps_deferred_admin_notices",109,[],[],[],[],{"dangerousFunctions":173,"sqlUsage":174,"outputEscaping":176,"fileOperations":27,"externalRequests":27,"nonceChecks":111,"capabilityChecks":111,"bundledLibraries":192},[],{"prepared":111,"raw":27,"locations":175},[],{"escaped":177,"rawEcho":178,"locations":179},24,6,[180,182,185,187,189,190],{"file":144,"line":109,"context":181},"raw output",{"file":183,"line":184,"context":181},"functions.php",30,{"file":183,"line":186,"context":181},41,{"file":188,"line":34,"context":181},"templates\\admin\\r34ps-admin.php",{"file":188,"line":79,"context":181},{"file":188,"line":191,"context":181},97,[],[194,212],{"entryPoint":195,"graph":196,"unsanitizedCount":27,"severity":211},"admin_page_callback (class-pending-status.php:54)",{"nodes":197,"edges":208},[198,203],{"id":199,"type":200,"label":201,"file":144,"line":202},"n0","source","$_POST['r34ps_notification_recipients']",59,{"id":204,"type":205,"label":206,"file":144,"line":202,"wp_function":207},"n1","sink","update_option() [Settings Manipulation]","update_option",[209],{"from":199,"to":204,"sanitized":210},true,"low",{"entryPoint":213,"graph":214,"unsanitizedCount":27,"severity":211},"\u003Cclass-pending-status> (class-pending-status.php:0)",{"nodes":215,"edges":218},[216,217],{"id":199,"type":200,"label":201,"file":144,"line":202},{"id":204,"type":205,"label":206,"file":144,"line":202,"wp_function":207},[219],{"from":199,"to":204,"sanitized":210},{"summary":221,"deductions":222},"The \"pending-status\" plugin version 1.0.4 demonstrates a generally good security posture based on the static analysis.  The absence of any recorded CVEs and the clean taint analysis results are significant strengths, indicating no known critical vulnerabilities and no identified insecure data flows within the analyzed code. The plugin also adheres to several WordPress security best practices, including using prepared statements for its single SQL query, performing nonce checks, and implementing capability checks.  Furthermore, the plugin exhibits strong output escaping, with 80% of its outputs being properly escaped. The limited attack surface with no apparent entry points without authentication is also a positive indicator.",[],"2026-03-16T20:45:21.796Z",{"wat":225,"direct":232},{"assetPaths":226,"generatorPatterns":228,"scriptPaths":229,"versionParams":230},[227],"\u002Fwp-content\u002Fplugins\u002Fpending-status\u002Fassets\u002Fadmin-style.css",[],[],[231],"pending-status\u002Fassets\u002Fadmin-style.css?ver=",{"cssClasses":233,"htmlComments":235,"htmlAttributes":237,"restEndpoints":239,"jsGlobals":240,"shortcodeOutput":242},[234],"r34ps-admin-notice",[236],"\u003C!-- Placeholder for dashboard widget -->",[238],"data-dismiss=\"alert\"",[],[241],"r34ps",[],{"error":210,"url":244,"statusCode":245,"statusMessage":246,"message":246},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fpending-status\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":248,"versions":249},5,[250,256,263,270,277],{"version":6,"download_url":25,"svn_tag_url":251,"released_at":28,"has_diff":252,"diff_files_changed":253,"diff_lines":28,"trac_diff_url":254,"vulnerabilities":255,"is_current":210},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fpending-status\u002Ftags\u002F1.0.4\u002F",false,[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fpending-status%2Ftags%2F1.0.3&new_path=%2Fpending-status%2Ftags%2F1.0.4",[],{"version":257,"download_url":258,"svn_tag_url":259,"released_at":28,"has_diff":252,"diff_files_changed":260,"diff_lines":28,"trac_diff_url":261,"vulnerabilities":262,"is_current":252},"1.0.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpending-status.1.0.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fpending-status\u002Ftags\u002F1.0.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fpending-status%2Ftags%2F1.0.2&new_path=%2Fpending-status%2Ftags%2F1.0.3",[],{"version":264,"download_url":265,"svn_tag_url":266,"released_at":28,"has_diff":252,"diff_files_changed":267,"diff_lines":28,"trac_diff_url":268,"vulnerabilities":269,"is_current":252},"1.0.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpending-status.1.0.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fpending-status\u002Ftags\u002F1.0.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fpending-status%2Ftags%2F1.0.1&new_path=%2Fpending-status%2Ftags%2F1.0.2",[],{"version":271,"download_url":272,"svn_tag_url":273,"released_at":28,"has_diff":252,"diff_files_changed":274,"diff_lines":28,"trac_diff_url":275,"vulnerabilities":276,"is_current":252},"1.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpending-status.1.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fpending-status\u002Ftags\u002F1.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fpending-status%2Ftags%2F1.0.0&new_path=%2Fpending-status%2Ftags%2F1.0.1",[],{"version":278,"download_url":279,"svn_tag_url":280,"released_at":28,"has_diff":252,"diff_files_changed":281,"diff_lines":28,"trac_diff_url":28,"vulnerabilities":282,"is_current":252},"1.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpending-status.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fpending-status\u002Ftags\u002F1.0.0\u002F",[],[]]