[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fF_EP9o4b1vZxEQXtnI3MO2jpqNX_-YlJAn5G9RIck5A":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":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":37,"analysis":141,"fingerprints":328},"auto-schedule-posts","Auto-Schedule Posts","3.6","David Miller","https:\u002F\u002Fprofiles.wordpress.org\u002Fdavidjmillerorg\u002F","\u003Cp>Auto-Schedule posts catches posts as they are published and holding them until the previously set criteria are met for the proper publication time.\u003C\u002Fp>\n\u003Cp>You can set publication between certain hours, limit publication to certain days, and specify a minimum time period between posts.\u003C\u002Fp>\n","Auto-Schedule Posts allows users to separate their writing schedule from their publishing schedule - write when you want and have posts publish at the &hellip;",50,20368,80,2,"2013-02-07T01:31:00.000Z","3.3.2","2.3","",[20,21,22,23],"auto-schedule","multi-author","posts","scheduling","http:\u002F\u002Fplugins.davidjmiller.org\u002Fauto-schedule-posts\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fauto-schedule-posts.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":33,"avg_security_score":26,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},"davidjmillerorg",60,30,84,"2026-04-04T11:03:52.849Z",[38,61,83,102,121],{"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":18,"tags":53,"homepage":57,"download_link":58,"security_score":59,"vuln_count":14,"unpatched_count":27,"last_vuln_date":60,"fetched_at":29},"publish-to-schedule","Publish to Schedule","4.5.8","alexbenfica","https:\u002F\u002Fprofiles.wordpress.org\u002Falexbenfica\u002F","\u003Cp>Looking for a way to streamline your WordPress blog post scheduling? Look no further than Publish to Schedule!\u003C\u002Fp>\n\u003Cp>Publish to Schedule is a powerful and flexible WordPress scheduling plugin that lets you automate your blog post publishing process. With just a few simple configurations, you can set up a schedule that works for you, ensuring that your content is consistently published on the days and times you choose.\u003C\u002Fp>\n\u003Cp>With the ability to set specific days of the week, number of posts per day, and time intervals for scheduling, Publish to Schedule takes the guesswork out of post publishing. And if you ever need to make adjustments, the plugin provides clear and detailed information in the publish box, allowing you to easily modify dates and times as needed.\u003C\u002Fp>\n\u003Cp>Publish to Schedule is perfect for bloggers who want to focus on creating great content, without the hassle of manual scheduling. And with its easy-to-use interface, even those with little technical knowledge can quickly get up and running.\u003C\u002Fp>\n\u003Cp>So if you’re looking to take your blog to the next level, download Publish to Schedule today and see the difference it can make for your content creation process.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Support the Development:\u003C\u002Fstrong> If you find this plugin useful, please consider \u003Ca href=\"https:\u002F\u002Fwww.buymeacoffee.com\u002FFQNxAqVUTo\" rel=\"nofollow ugc\">making a donation\u003C\u002Fa> to support ongoing development and maintenance.\u003C\u002Fp>\n","Automate your WordPress post scheduling with Publish to Schedule. Set rules for days and times to publish posts automatically, saving you time and ens &hellip;",5000,76130,86,23,"2025-12-04T02:47:00.000Z","6.9.4","2.8",[54,55,22,56,23],"automation","post-scheduler","productivity","https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fpublish-to-schedule\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpublish-to-schedule.zip",99,"2023-02-27 00:00:00",{"slug":62,"name":63,"version":64,"author":65,"author_profile":66,"description":67,"short_description":68,"active_installs":69,"downloaded":70,"rating":71,"num_ratings":72,"last_updated":73,"tested_up_to":74,"requires_at_least":75,"requires_php":18,"tags":76,"homepage":81,"download_link":82,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"content-scheduler","Content Scheduler","2.0.5","Paul Kaiser","https:\u002F\u002Fprofiles.wordpress.org\u002Ffreakingid\u002F","\u003Cp>Content Scheduler lets you control when content automatically expires, what to do with that content when it expires, and optionally provide notification to site contributors when the content expired.\u003C\u002Fp>\n\u003Ch4>Expiration Options\u003C\u002Fh4>\n\u003Cp>You control what happens upon expiration, including:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Change status to Pending, Draft, or Private\u003C\u002Fli>\n\u003Cli>Add custom text to beginning or end of Post title\u003C\u002Fli>\n\u003Cli>Unstick  sticky Posts\u003C\u002Fli>\n\u003Cli>Change Categories\u003C\u002Fli>\n\u003Cli>Add and remove Tags\u003C\u002Fli>\n\u003Cli>Move to the Trash\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Notification Options\u003C\u002Fh4>\n\u003Cp>Content Scheduler can also notify you:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>When expiration occurs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This reminder helps you keep content fresh, providing a reminder that content is out of date and needs updated or replaced. Content Scheduler lets you use notification tools without making any changes to content upon expiration, if you’d like.\u003C\u002Fp>\n","Schedule content to automatically expire and change at a certain time, and notify people of expiration.",200,30319,48,8,"2014-12-26T16:01:00.000Z","4.1.0","2.9",[77,78,79,23,80],"expire","expire-posts","expiring","sticky","http:\u002F\u002Fpaulekaiser.com\u002Fwordpress-plugins\u002Fcontent-scheduler\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontent-scheduler.2.0.5.zip",{"slug":84,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":33,"downloaded":91,"rating":92,"num_ratings":93,"last_updated":94,"tested_up_to":51,"requires_at_least":95,"requires_php":18,"tags":96,"homepage":99,"download_link":100,"security_score":101,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"posts-to-do-list","Posts To-Do List","1.4.4","Stefano","https:\u002F\u002Fprofiles.wordpress.org\u002Fste_95\u002F","\u003Cp>Most people who run a multi-author blog need to tell their writers what post they should write. And so administrators send emails with a URL of the post source, the keyword for the post, any notes accompanying that. And sometimes a user notices a post that is worth writing and he wants to tell the other writers, so they have to email the administrator who will tell the other users and everyone will kill themselves in the end. The Posts To-Do List plugin allows you to get rid of that rigmarole.\u003C\u002Fp>\n\u003Cp>By a convenient box in the posts editing page, \u003Cstrong>everyone will be able to share the posts they think are worth writing. You have this little box, where you put the URL of the page where you read that great post, and the plugin will fetch the title by itself. You will then be able to change the retrieved title, suggest a keyword and add other notes, set a priority and assign the post to some user of the blog.\u003C\u002Fstrong> And if you want to leave everything blank but the title field, leaving a suggestion that anyone can catch and deepen… well, you can!\u003C\u002Fp>\n\u003Cp>No more emails to tell “You do this and that, use this keyword and don’t forget that…”. Everything can be down inside WordPress. Not only by the administrator, but by any logged in user.\u003C\u002Fp>\n\u003Cp>You, as the administrator, want everything in the power of your hand? No problem, you can \u003Cstrong>decide what user roles can add new posts to the to-do list and what user roles can delete already added items.\u003C\u002Fstrong> You want your users to stick to the post you assigned to them? You can hide the posts you have assigned to other users from their view. From a \u003Cstrong>simple stats page\u003C\u002Fstrong> it will be immediately clear how many posts you have already assigned and how many of them are still to do, so that it will be easy to understand how much your writers have done and how many posts you have still to assign. Almost every action is powered by AJAX, so that no page reloads are needed and you do not even notice it is happening, it just works.\u003C\u002Fp>\n","Share post ideas with writers, suggest them writing topics and keep track of the posts ideas with a to-do list.",10971,94,7,"2025-12-06T05:07:00.000Z","3.0",[21,97,22,98],"post-management","to-do-list","https:\u002F\u002Fwww.thecrowned.org\u002Fwordpress-plugin-posts-to-do-list","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fposts-to-do-list.1.4.5.zip",100,{"slug":103,"name":104,"version":105,"author":106,"author_profile":107,"description":108,"short_description":109,"active_installs":34,"downloaded":110,"rating":111,"num_ratings":112,"last_updated":113,"tested_up_to":114,"requires_at_least":6,"requires_php":18,"tags":115,"homepage":119,"download_link":120,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"automatic-post-publishing-scheduler","Automatic Post Publishing Scheduler","2.1.6","Will Brubaker","https:\u002F\u002Fprofiles.wordpress.org\u002Fwillthewebmechanic\u002F","\u003Cp>This plugin allows you to gain very precise control over when posts are published to your site.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Allows the creation of any number of time slots for post publishing\u003C\u002Fli>\n\u003Cli>Admin users are able to allow or disallow publishing on any given day(s) of the week through a simple interface\u003C\u002Fli>\n\u003Cli>Further control is allowed by specifying dates that will be explicitly allowed (or disallowed) for publishing, thereby overriding the weekday setting – as an example, if your publishing schedule allows for publishing on Tuesday, but a major holiday falls on Tuesday and you don\\’t want publishing to take place on that particular Tuesday, simply specify it in the easy-to-use interface.\u003C\u002Fli>\n\u003Cli>Any admin\u002Feditor user can publish a post ‘NOW’ by clicking the “publish now” link in the posts screen.\u003C\u002Fli>\n\u003Cli>Any admin\u002Feditor user can alter the scheduled date by using the quick-edit screen.\u003C\u002Fli>\n\u003Cli>Normal users (authors, etc) can alter the scheduled time\u002Fdate of their posts, but the defined time slots will still be respected.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Additional Information\u003C\u002Fh3>\n\u003Ch4>Known Issues:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>At this time, even though duplicate time slots are allowed, they are not working. For best results, avoid duplicating time slots.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>To Do List\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Improvements to UI\u003C\u002Fli>\n\u003Cli>Code optimization and constant improvement\u003C\u002Fli>\n\u003Cli>More features\n\u003Cul>\n\u003Cli>Allow custom post types to be assigned to the schedule\u003C\u002Fli>\n\u003Cli>Display upcoming time slots in the post editor and allow post authors to select their time slot\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Make the plugin internationalization friendly\u003C\u002Fli>\n\u003Cli>Use local date\u002Ftime format settings when outputting dates\u002Ftimes\u003C\u002Fli>\n\u003Cli>User customization of the pop-up message that is displayed when a post is scheduled.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Your feature request here.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Credits\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Your name could be here\u003C\u002Fstrong> make a contribution today! (see the FAQ for suggestions of how you can help with the development)\u003C\u002Fli>\n\u003C\u002Ful>\n","Schedule posts LIKE A BOSS!! Define time slots for publishing and forget about it.",13764,96,4,"2016-01-25T00:27:00.000Z","4.4.34",[116,117,22,118,23],"admin","author","publishing","http:\u002F\u002Fwww.willthewebmechanic.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fautomatic-post-publishing-scheduler.2.1.6.zip",{"slug":122,"name":123,"version":124,"author":125,"author_profile":126,"description":127,"short_description":128,"active_installs":129,"downloaded":130,"rating":101,"num_ratings":131,"last_updated":132,"tested_up_to":51,"requires_at_least":133,"requires_php":134,"tags":135,"homepage":139,"download_link":140,"security_score":101,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"easy-bulk-date-editor","Easy Bulk Date Editor","1.3.1","Andre Moura","https:\u002F\u002Fprofiles.wordpress.org\u002Fandremoura\u002F","\u003Cp>Easy Bulk Date Editor is a lightweight WordPress admin plugin that allows editors and administrators to bulk edit post publication dates with precision and control.\u003C\u002Fp>\n\u003Cp>The plugin was designed to avoid common performance pitfalls of bulk actions by loading posts incrementally and applying changes only to the selected rows.\u003C\u002Fp>\n\u003Ch3>Key Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Bulk edit post publication dates\u003C\u002Fli>\n\u003Cli>Shift dates forward or backward by days and\u002For hours\u003C\u002Fli>\n\u003Cli>Filter posts before editing:\n\u003Cul>\n\u003Cli>By category\u003C\u002Fli>\n\u003Cli>By author\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Paginated loading (25 posts per page) for improved database performance\u003C\u002Fli>\n\u003Cli>Uses native WordPress date and time formats\u003C\u002Fli>\n\u003Cli>Safe AJAX-based operations with nonce validation\u003C\u002Fli>\n\u003Cli>No front-end impact — admin-only tool\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How It Works\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Choose how you want to filter posts (by category or author)\u003C\u002Fli>\n\u003Cli>Load posts in manageable pages of 25 items\u003C\u002Fli>\n\u003Cli>Select the posts you want to edit\u003C\u002Fli>\n\u003Cli>Adjust individual dates or apply bulk shifts\u003C\u002Fli>\n\u003Cli>Save changes securely\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Pagination ensures the plugin remains fast and reliable even on large sites with thousands of posts.\u003C\u002Fp>\n","Bulk edit WordPress post dates safely and efficiently, now with filtering by category or author and paginated loading for better performance.",10,294,1,"2026-01-01T22:34:00.000Z","5.8","7.2",[136,137,22,23,138],"bulk-edit","dates","wordpress-admin","https:\u002F\u002Fwordpress.andremoura.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-bulk-date-editor.1.3.1.zip",{"attackSurface":142,"codeSignals":229,"taintFlows":287,"riskAssessment":317,"analyzedAt":327},{"hooks":143,"ajaxHandlers":178,"restRoutes":179,"shortcodes":180,"cronEvents":181,"entryPointCount":27,"unprotectedCount":27},[144,149,153,157,161,164,167,171,174],{"type":145,"name":146,"callback":147,"priority":129,"file":148,"line":35},"action","wpmu_new_blog","new_blog_asp","auto-schedule-posts.php",{"type":145,"name":150,"callback":151,"priority":27,"file":148,"line":152},"init","asp_post_status",101,{"type":145,"name":154,"callback":155,"file":148,"line":156},"asp_pulse","drip_publish",116,{"type":145,"name":158,"callback":159,"priority":131,"file":148,"line":160},"pending_to_publish","auto_schedule",118,{"type":145,"name":162,"callback":159,"priority":131,"file":148,"line":163},"draft_to_publish",119,{"type":145,"name":165,"callback":159,"priority":131,"file":148,"line":166},"private_to_publish",120,{"type":145,"name":168,"callback":169,"priority":131,"file":148,"line":170},"future_to_publish","future_schedule",121,{"type":145,"name":172,"callback":159,"priority":131,"file":148,"line":173},"new_to_publish",122,{"type":145,"name":175,"callback":176,"file":148,"line":177},"admin_menu","auto_schedule_posts_option_menu",285,[],[],[],[182,184,186,188,190,192,194,196,198,200,202,204,205,207,209,211,213,215,217,219,221,223,225,227],{"hook":154,"callback":154,"file":148,"line":183},69,{"hook":154,"callback":154,"file":148,"line":185},70,{"hook":154,"callback":154,"file":148,"line":187},71,{"hook":154,"callback":154,"file":148,"line":189},72,{"hook":154,"callback":154,"file":148,"line":191},73,{"hook":154,"callback":154,"file":148,"line":193},74,{"hook":154,"callback":154,"file":148,"line":195},75,{"hook":154,"callback":154,"file":148,"line":197},76,{"hook":154,"callback":154,"file":148,"line":199},77,{"hook":154,"callback":154,"file":148,"line":201},78,{"hook":154,"callback":154,"file":148,"line":203},79,{"hook":154,"callback":154,"file":148,"line":13},{"hook":154,"callback":154,"file":148,"line":206},363,{"hook":154,"callback":154,"file":148,"line":208},364,{"hook":154,"callback":154,"file":148,"line":210},365,{"hook":154,"callback":154,"file":148,"line":212},366,{"hook":154,"callback":154,"file":148,"line":214},367,{"hook":154,"callback":154,"file":148,"line":216},368,{"hook":154,"callback":154,"file":148,"line":218},369,{"hook":154,"callback":154,"file":148,"line":220},370,{"hook":154,"callback":154,"file":148,"line":222},371,{"hook":154,"callback":154,"file":148,"line":224},372,{"hook":154,"callback":154,"file":148,"line":226},373,{"hook":154,"callback":154,"file":148,"line":228},374,{"dangerousFunctions":230,"sqlUsage":231,"outputEscaping":250,"fileOperations":27,"externalRequests":27,"nonceChecks":27,"capabilityChecks":131,"bundledLibraries":286},[],{"prepared":129,"raw":93,"locations":232},[233,236,239,242,244,246,248],{"file":148,"line":234,"context":235},34,"$wpdb->get_var() with variable interpolation",{"file":148,"line":237,"context":238},42,"$wpdb->query() with variable interpolation",{"file":148,"line":240,"context":241},192,"$wpdb->get_results() with variable interpolation",{"file":148,"line":243,"context":238},232,{"file":148,"line":245,"context":238},263,{"file":148,"line":247,"context":238},356,{"file":148,"line":249,"context":241},432,{"escaped":27,"rawEcho":251,"locations":252},16,[253,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284],{"file":148,"line":254,"context":255},348,"raw output",{"file":148,"line":257,"context":255},353,{"file":148,"line":259,"context":255},359,{"file":148,"line":261,"context":255},376,{"file":148,"line":263,"context":255},390,{"file":148,"line":265,"context":255},395,{"file":148,"line":267,"context":255},404,{"file":148,"line":269,"context":255},408,{"file":148,"line":271,"context":255},459,{"file":148,"line":273,"context":255},460,{"file":148,"line":275,"context":255},469,{"file":148,"line":277,"context":255},492,{"file":148,"line":279,"context":255},497,{"file":148,"line":281,"context":255},577,{"file":148,"line":283,"context":255},579,{"file":148,"line":285,"context":255},580,[],[288,307],{"entryPoint":289,"graph":290,"unsanitizedCount":305,"severity":306},"auto_schedule_posts_options_page (auto-schedule-posts.php:296)",{"nodes":291,"edges":302},[292,297],{"id":293,"type":294,"label":295,"file":148,"line":296},"n0","source","$_SERVER (x3)",298,{"id":298,"type":299,"label":300,"file":148,"line":263,"wp_function":301},"n1","sink","echo() [XSS]","echo",[303],{"from":293,"to":298,"sanitized":304},false,3,"medium",{"entryPoint":308,"graph":309,"unsanitizedCount":27,"severity":316},"\u003Cauto-schedule-posts> (auto-schedule-posts.php:0)",{"nodes":310,"edges":313},[311,312],{"id":293,"type":294,"label":295,"file":148,"line":296},{"id":298,"type":299,"label":300,"file":148,"line":263,"wp_function":301},[314],{"from":293,"to":298,"sanitized":315},true,"low",{"summary":318,"deductions":319},"The \"auto-schedule-posts\" plugin v3.6 exhibits a mixed security posture.  While the absence of known CVEs and a lack of critical taint analysis findings are positive indicators, the code analysis reveals significant areas for concern, particularly around output escaping and the handling of SQL queries.  The plugin boasts a seemingly small attack surface with no identified AJAX handlers, REST API routes, or shortcodes lacking authentication. However, this is undermined by the complete absence of output escaping for any of the identified output points, which presents a substantial risk of cross-site scripting (XSS) vulnerabilities. Additionally, while a majority of SQL queries use prepared statements, a non-trivial percentage do not, potentially leaving the plugin vulnerable to SQL injection if the unsanitized inputs are not handled with extreme care in those specific queries. The presence of 24 cron events, while not inherently insecure, warrants careful review to ensure no unintended side effects or vulnerabilities are introduced through scheduled tasks.\n\nDespite the lack of historical vulnerabilities, the current code analysis suggests a need for significant improvement in secure coding practices, especially concerning output sanitization and the consistent use of prepared statements for all SQL operations. The absence of nonce checks is a missed opportunity for further securing operations, though the lack of direct entry points like AJAX or shortcodes mitigates this to some extent. The plugin's strength lies in its apparent lack of historical issues and its limited direct attack surface. However, the identified output escaping and SQL query practices create a substantial risk that overshadows these strengths. A proactive approach to addressing these code-level weaknesses is strongly recommended to prevent future security incidents.",[320,322,325],{"reason":321,"points":72},"0% output escaping",{"reason":323,"points":324},"SQL queries without prepared statements",5,{"reason":326,"points":305},"No nonce checks","2026-03-16T22:03:19.782Z",{"wat":329,"direct":338},{"assetPaths":330,"generatorPatterns":333,"scriptPaths":334,"versionParams":335},[331,332],"\u002Fwp-content\u002Fplugins\u002Fauto-schedule-posts\u002Fcss\u002Fasp-styles.css","\u002Fwp-content\u002Fplugins\u002Fauto-schedule-posts\u002Fjs\u002Fasp-admin.js",[],[332],[336,337],"auto-schedule-posts\u002Fcss\u002Fasp-styles.css?ver=","auto-schedule-posts\u002Fjs\u002Fasp-admin.js?ver=",{"cssClasses":339,"htmlComments":341,"htmlAttributes":344,"restEndpoints":346,"jsGlobals":347,"shortcodeOutput":350},[340],"asp-notice",[342,343],"\u003C!-- The WordPress Query class. -->","\u003C!-- .post-edit-link -->",[345],"data-postid",[],[348,349],"asp_admin_ajax_object","asp_params",[]]