[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$frg8N-XxG7jrViDOmqg-YwjJrwNOEi1dVcx1rYXEzRag":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":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":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":36,"analysis":146,"fingerprints":270},"mass-page-remover","Mass Page Remover","1.7","wesg","https:\u002F\u002Fprofiles.wordpress.org\u002Fwesg\u002F","\u003Cp>Mass Page Remover does exactly what the name implies: it makes it very easy to remove as many pages as you want.\u003C\u002Fp>\n\u003Cp>The plugin works as an admin panel. The form contains a start page ID and an end page ID as well as an input for specific IDs.\u003C\u002Fp>\n\u003Cp>Please provide feedback on the blog post so that I can improve the plugin further.\u003C\u002Fp>\n\u003Cp>For a complete list of the changes from each version, please visit \u003Ca href=\"http:\u002F\u002Fwww.wesg.ca\u002F2008\u002F06\u002Fwordpress-plugin-mass-page-maker\u002F#changelog\" rel=\"nofollow ugc\">the plugin homepage\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>For examples and tips on using the plugin, please check \u003Ca href=\"http:\u002F\u002Fwww.wesg.ca\u002F2008\u002F06\u002Fwordpress-plugin-mass-page-maker\u002F#usage\" rel=\"nofollow ugc\">the examples\u003C\u002Fa> on the plugin homepage.\u003C\u002Fp>\n\u003Cp>Be sure to check out my other plugins at \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fprofile\u002Fwesg\" rel=\"ugc\">my WordPress profile\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>USAGE\u003C\u002Fh4>\n\u003Col>\n\u003Cli>After activating the plugin, navigate to the admin panel interface, where the options can be entered to remove the required number of pages or posts.\u003C\u002Fli>\n\u003Cli>View the page list at the bottom to see which pages you want to remove.\u003C\u002Fli>\n\u003C\u002Fol>\n","Mass Page Remover makes it easy to remove multiple pages at once.",20,26960,0,"2011-03-15T02:15:00.000Z","3.0.5","2.8","",[19,20,21,22,23],"delete","mass","multiple","page","post","http:\u002F\u002Fwww.wesg.ca\u002F2008\u002F07\u002Fwordpress-plugin-mass-page-remover\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmass-page-remover.1.7.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":26,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},3,330,30,84,"2026-04-04T22:06:07.920Z",[37,60,83,104,126],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":45,"downloaded":46,"rating":47,"num_ratings":48,"last_updated":49,"tested_up_to":50,"requires_at_least":51,"requires_php":52,"tags":53,"homepage":56,"download_link":57,"security_score":47,"vuln_count":58,"unpatched_count":13,"last_vuln_date":59,"fetched_at":28},"multiple-post-passwords","Multiple Post Passwords","1.1.4","Andreas Münch","https:\u002F\u002Fprofiles.wordpress.org\u002Fandreasmuench\u002F","\u003Cp>This is a simple Plugin that lets you set multiple passwords for your password protected posts and pages.\u003C\u002Fp>\n\u003Cp>On posts\u002Fpages with password protection it will show an extra Metabox with a field to input additional passwords, one in each line.\u003C\u002Fp>\n\u003Cp>Note that if you just changed a post\u002Fpage to password protection you have to save once so that the extra field appears.\u003C\u002Fp>\n\u003Ch4>Expire passwords\u003C\u002Fh4>\n\u003Cp>You can also make passwords expire after x hours when being used. You can find the settings under Settings -> Multiple Post Passwords.\u003C\u002Fp>\n\u003Cp>Note that the actual deletion of the passwords is triggered by a cronjob which is run every 30 minutes. So even if you set your expiry time to very short, it may still take 30 minutes until the password really expires.\u003C\u002Fp>\n\u003Cp>Also note that the expiration only works for the additional passwords, not for the standard WordPress page\u002Fpost password.\u003C\u002Fp>\n\u003Ch4>Using lots of passwords on one page\u003C\u002Fh4>\n\u003Cp>If you are using lots of passwords on one page and the password check takes a long time, you should activate the alternative password check in the settings to speed up the password check.\u003C\u002Fp>\n","Set multiple passwords for your protected pages so you can give them to different users.",2000,24287,100,11,"2026-01-17T16:46:00.000Z","6.8.5","4.7.0","5.6",[21,22,54,23,55],"password","protected","https:\u002F\u002Fwww.andreasmuench.de\u002Fwordpress\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmultiple-post-passwords.1.1.4.zip",1,"2023-11-28 00:00:00",{"slug":61,"name":62,"version":63,"author":64,"author_profile":65,"description":66,"short_description":67,"active_installs":68,"downloaded":69,"rating":70,"num_ratings":71,"last_updated":72,"tested_up_to":73,"requires_at_least":52,"requires_php":74,"tags":75,"homepage":81,"download_link":82,"security_score":47,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"wp-create-multiple-posts-pages","WP Create Multiple Posts & Pages","2.0.3","Sajjad Hossain Sagor","https:\u002F\u002Fprofiles.wordpress.org\u002Fsajjad67\u002F","\u003Cp>This plugin adds feature to create multiple posts \u002F pages at once with empty content and given title or empty title.\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Bulk Add Posts: Create multiple posts at once.\u003C\u002Fli>\n\u003Cli>Bulk Add Pages: Quickly add multiple pages in one go.\u003C\u002Fli>\n\u003Cli>Set Post Status: Choose the publication status for each post or page.\u003C\u002Fli>\n\u003Cli>Assign Post Author: Select the author for the new content.\u003C\u002Fli>\n\u003Cli>Assign Categories: Apply categories to posts effortlessly.\u003C\u002Fli>\n\u003Cli>Custom Post Types (CPT) Support: Compatible with custom post types.\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily Create Multiple WordPress Posts & Pages At Once With a Single Click.",1000,20761,96,10,"2025-12-08T15:47:00.000Z","6.9.4","8.0",[76,77,78,79,80],"create-page","create-post","edit-post","multiple-page","multiple-post","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-create-multiple-posts-pages\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-create-multiple-posts-pages.2.0.3.zip",{"slug":84,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":91,"downloaded":92,"rating":47,"num_ratings":93,"last_updated":94,"tested_up_to":50,"requires_at_least":95,"requires_php":96,"tags":97,"homepage":102,"download_link":103,"security_score":47,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"auto-delete-post","Auto Delete Post – Ultimate plugin for deleting a post automatically","1.1.8","Shahadat Hossain","https:\u002F\u002Fprofiles.wordpress.org\u002Fpalashwpdev\u002F","\u003Cp>Auto Delete Post is a comprehensive WordPress plugin that automatically deletes posts, pages, and custom post types after a specified time. Set a deletion date and time when publishing content, and the plugin will automatically remove it when the specified time arrives. Perfect for time-sensitive content, temporary posts, or automatically cleaning up outdated material.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key Features:\u003C\u002Fstrong>\u003Cbr \u002F>\n*   Schedule automatic deletion for any post, page, or custom post type\u003Cbr \u002F>\n*   Choose between moving posts to trash or permanent deletion\u003Cbr \u002F>\n*   Support for all public post types in WordPress\u003Cbr \u002F>\n*   Dedicated settings page to configure which post types to include\u003Cbr \u002F>\n*   Custom meta box on post edit screen to set deletion time\u003Cbr \u002F>\n*   Quick edit functionality for bulk scheduling\u003Cbr \u002F>\n*   Custom column showing scheduled deletion times\u003Cbr \u002F>\n*   Real-time reliable deletion processing\u003Cbr \u002F>\n*   Automatic removal of deletion schedule when posts are restored from trash\u003Cbr \u002F>\n*   Set post redirection option trying to visit deleted post\u002Fpage\u003C\u002Fp>\n","Auto Delete Post is a comprehensive WordPress plugin that automatically deletes posts, pages, and custom post types after a specified time.",300,4829,7,"2025-11-23T19:13:00.000Z","5.2","7.2",[84,98,99,100,101],"delete-custom-post-type","delete-page","delete-post","scheduled-deletion","https:\u002F\u002Fwordpress.org\u002Fplugin\u002Fauto-delete-post","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fauto-delete-post.1.1.8.zip",{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":112,"downloaded":113,"rating":114,"num_ratings":31,"last_updated":115,"tested_up_to":116,"requires_at_least":117,"requires_php":118,"tags":119,"homepage":124,"download_link":125,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"multi-favicons","Multi Favicons","1.2","qualityeye","https:\u002F\u002Fprofiles.wordpress.org\u002Fqualityeye\u002F","\u003Cp>This simple plugin allows you to add custom favicons to multiple pages and posts.  You are no longer restricted to having one sitewide favicon.\u003C\u002Fp>\n","Add different favicons to any pages or posts in WordPress.",200,2987,94,"2018-12-12T12:54:00.000Z","5.0.25","4.8","5.3",[120,121,122,123],"favicons","favicons-on-each-page","favicons-on-each-post","multiple-favicons","https:\u002F\u002Fcustomrequest.com\u002Fmulti-favicons","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmulti-favicons.zip",{"slug":127,"name":128,"version":129,"author":130,"author_profile":131,"description":132,"short_description":133,"active_installs":47,"downloaded":134,"rating":47,"num_ratings":135,"last_updated":136,"tested_up_to":137,"requires_at_least":138,"requires_php":17,"tags":139,"homepage":144,"download_link":145,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"adjustly-nextpage","Adjustly Nextpage","0.1","PSDCovers","https:\u002F\u002Fprofiles.wordpress.org\u002Fpsdcovers\u002F","\u003Cp>Developed internally for our Adjustly theme, this plugin allows authors to create multi-page posts and pages to the WordPress Visual and HTML toolbar. This is not a post-to-post navigation feature, this is specifically about adding page breaks to a single, very long page\u002Fpost. We did not create any new features with this plugin, it simply brings back an existing feature to the toolbar.\u003C\u002Fp>\n\u003Ch4>Try the Demo\u003C\u002Fh4>\n\u003Cp>If you’re interested in seeing what a default installation of Adjustly Nextpage has to offer, we have a verbose sample post located here.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fwww.psdcovers.com\u002Fadjustly-nextpage\u002F\" rel=\"nofollow ugc\">http:\u002F\u002Fwww.psdcovers.com\u002Fadjustly-nextpage\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Cp>Usage is identical to adding the more separator and looks as follows:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!--nextpage-->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>That’s it.  WordPress already has support for treating this as a page break when viewing the article and will add a page navigation tool at the end of each page or post. In fact, \u003Ccode>\u003C!--nextpage-->\u003C\u002Fcode> has been around for at least 4 years and has been commented out in wp-admin\u002Fquicktags.js since at least version 1.5.1\u003C\u002Fp>\n\u003Cp>WordPress knows your article is not really 2 or more individual pages so your entire page\u002Fpost is still edited as a single, very long post, on the backend.  You will not be jumping from section to section, nothing changes with regards to how you currently edit pages and posts.\u003C\u002Fp>\n\u003Ch4>Notes\u003C\u002Fh4>\n\u003Cp>None yet.\u003C\u002Fp>\n\u003Ch3>Troubleshooting\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Hey, I have 3.3+ installed but it’s not working!\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>If you can’t see any pagination tools at the end of your post then it’s likely that your theme was not made to accomodate this feature.  The fix is easy, add the following code to your single.php file inside your theme:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php wp_link_pages( array( 'before' => '\u003Cdiv class=\"page-link\">' . __( 'Pages:', 'adjustly' ), 'after' => '\u003C\u002Fdiv>' ) ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Add this code just prior to the comments_template() code or move it around to see where it suits you best.  You may want to add the name of your theme to the code (remove “adjustly” and put your theme name in its place).\u003C\u002Fp>\n\u003Cp>You will aslo have to add the above code to page.php as well (code is identical).\u003C\u002Fp>\n","Enables existing Wordpress functionality to allow page breaks in your posts and pages.",10418,2,"2012-03-07T20:21:00.000Z","3.3.2","3.3",[140,141,79,142,143],"multi-page","multipage","split-page","split-post","http:\u002F\u002Fwww.psdcovers.com\u002Fadjustly-nextpage\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadjustly-nextpage.zip",{"attackSurface":147,"codeSignals":159,"taintFlows":187,"riskAssessment":253,"analyzedAt":269},{"hooks":148,"ajaxHandlers":155,"restRoutes":156,"shortcodes":157,"cronEvents":158,"entryPointCount":13,"unprotectedCount":13},[149],{"type":150,"name":151,"callback":152,"file":153,"line":154},"action","admin_menu","remove_mass_page","mass-page-remover.php",297,[],[],[],[],{"dangerousFunctions":160,"sqlUsage":161,"outputEscaping":170,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":186},[],{"prepared":58,"raw":31,"locations":162},[163,166,168],{"file":153,"line":164,"context":165},54,"$wpdb->get_col() with variable interpolation",{"file":153,"line":167,"context":165},55,{"file":153,"line":169,"context":165},153,{"escaped":13,"rawEcho":93,"locations":171},[172,174,176,178,180,182,184],{"file":153,"line":70,"context":173},"raw output",{"file":153,"line":175,"context":173},103,{"file":153,"line":177,"context":173},172,{"file":153,"line":179,"context":173},177,{"file":153,"line":181,"context":173},179,{"file":153,"line":183,"context":173},235,{"file":153,"line":185,"context":173},237,[],[188,234],{"entryPoint":189,"graph":190,"unsanitizedCount":232,"severity":233},"mass_page_remove_admin (mass-page-remover.php:87)",{"nodes":191,"edges":225},[192,196,201,205,207,209,214,217,221],{"id":193,"type":194,"label":195,"file":153,"line":114},"n0","source","$_POST",{"id":197,"type":198,"label":199,"file":153,"line":70,"wp_function":200},"n1","sink","echo() [XSS]","echo",{"id":202,"type":194,"label":203,"file":153,"line":204},"n2","$_GET",160,{"id":206,"type":198,"label":199,"file":153,"line":177,"wp_function":200},"n3",{"id":208,"type":194,"label":203,"file":153,"line":112},"n4",{"id":210,"type":198,"label":211,"file":153,"line":212,"wp_function":213},"n5","get_results() [SQLi]",219,"get_results",{"id":215,"type":194,"label":216,"file":153,"line":114},"n6","$_POST['first_page']",{"id":218,"type":219,"label":220,"file":153,"line":114},"n7","transform","→ remove_query()",{"id":222,"type":198,"label":223,"file":153,"line":167,"wp_function":224},"n8","get_col() [SQLi]","get_col",[226,228,229,230,231],{"from":193,"to":197,"sanitized":227},false,{"from":202,"to":206,"sanitized":227},{"from":208,"to":210,"sanitized":227},{"from":215,"to":218,"sanitized":227},{"from":218,"to":222,"sanitized":227},4,"high",{"entryPoint":235,"graph":236,"unsanitizedCount":232,"severity":233},"\u003Cmass-page-remover> (mass-page-remover.php:0)",{"nodes":237,"edges":247},[238,239,240,241,242,243,244,245,246],{"id":193,"type":194,"label":195,"file":153,"line":114},{"id":197,"type":198,"label":199,"file":153,"line":70,"wp_function":200},{"id":202,"type":194,"label":203,"file":153,"line":204},{"id":206,"type":198,"label":199,"file":153,"line":177,"wp_function":200},{"id":208,"type":194,"label":203,"file":153,"line":112},{"id":210,"type":198,"label":211,"file":153,"line":212,"wp_function":213},{"id":215,"type":194,"label":216,"file":153,"line":114},{"id":218,"type":219,"label":220,"file":153,"line":114},{"id":222,"type":198,"label":223,"file":153,"line":167,"wp_function":224},[248,249,250,251,252],{"from":193,"to":197,"sanitized":227},{"from":202,"to":206,"sanitized":227},{"from":208,"to":210,"sanitized":227},{"from":215,"to":218,"sanitized":227},{"from":218,"to":222,"sanitized":227},{"summary":254,"deductions":255},"The \"mass-page-remover\" plugin v1.7 exhibits a mixed security posture.  While it has no recorded CVEs and a seemingly small attack surface (zero AJAX, REST, shortcodes, or cron events), the static analysis reveals significant concerns within its codebase.  Specifically, all identified output is unescaped, meaning sensitive data could be exposed to cross-site scripting (XSS) attacks. Furthermore, the taint analysis indicates two high-severity flows with unsanitized paths, suggesting potential for arbitrary file access or manipulation if these paths are user-controlled. The presence of SQL queries, with a substantial portion not using prepared statements, also raises concerns about SQL injection vulnerabilities, though the taint analysis didn't specifically flag these as high severity in this instance.  The absence of nonce and capability checks across all potential entry points (even though none were identified) is a weakness in secure development practice.  The plugin's lack of vulnerability history is positive, but it does not negate the critical findings from the code analysis.",[256,259,262,264,267],{"reason":257,"points":258},"Unescaped output detected",8,{"reason":260,"points":261},"High severity unsanitized paths in taint analysis",12,{"reason":263,"points":71},"SQL queries not using prepared statements",{"reason":265,"points":266},"Missing capability checks",5,{"reason":268,"points":266},"Missing nonce checks","2026-03-16T22:52:27.211Z",{"wat":271,"direct":277},{"assetPaths":272,"generatorPatterns":273,"scriptPaths":274,"versionParams":275},[],[],[],[276],"mass-page-remover\u002Fmass-page-remover.php?ver=",{"cssClasses":278,"htmlComments":283,"htmlAttributes":304,"restEndpoints":320,"jsGlobals":321,"shortcodeOutput":322},[279,280,281,282],"wrap","icon32","postbox","widefat",[284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303],"\u003C!-- plugin function -->","\u003C!--function to actually add to the database -->","\u003C!--start timer for time feedback -->","\u003C!-- merge the two values -->","\u003C!--find real pages within the range -->","\u003C!-- page_revisions -->","\u003C!--add the individual pages to be removed -->","\u003C!-- do the actual deleting -->","\u003C!--stop program timer -->","\u003C!--return informative messages -->","\u003C!--function to display the admin panel -->","\u003C!--load translations -->","\u003C!--look for the hidden post data to know that the form was submitted -->","\u003C!--print the result of the MySQL query in the pretty banner -->","\u003C!--the rest is just form data for submission -->","\u003C!--this little doodad makes the lines alternate color -->","\u003C!-- pagination -->","\u003C!-- listing end -->","\u003C!--determine how to display the page list -->","\u003C!--get the pages from the database -->",[305,306,307,308,309,310,311,312,313,314,315,316,317,318,319],"id=\"message\"","class=\"updated fade\"","id=\"icon-tools\"","class=\"icon32\"","id=\"poststuff\"","id=\"grabit\"","class=\"gbx-group\"","class=\"postbox\"","class=\"inside\"","id=\"changelog\"","class=\"page-numbers current\"","class=\"page-numbers\"","class=\"widefat\"","id=\"mass-page-remover-admin-page\"","id=\"mass-page-remove-form\"",[],[],[]]