[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fXkZamxvAvNSXKYLIu-gtd7pDI_IucW5BQayeQSv1LCY":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":38,"analysis":134,"fingerprints":201},"yd-fast-page-update","YD *FAST* Page update","0.2.0","Yann at WP&Co","https:\u002F\u002Fprofiles.wordpress.org\u002Fydubois\u002F","\u003Ch4>Drastically reduce page updating time!\u003C\u002Fh4>\n\u003Cp>This WordPress plugin \u003Cstrong>optimizes page management routines\u003C\u002Fstrong>, it accelerates page saving time by bypassing the very heavy process of rebuilding all the rewriterules of your pretty-permalink enabled blogs each time anything on a page is changed.\u003C\u002Fp>\n\u003Cp>When using WordPress as a CMS, it is not unusual to deal with web sites that have a lot of hierarchical pages.\u003Cbr \u002F>\nWhen reaching a few hundred pages and using custom or pretty SEO-aware permalinks, page updates become \u003Cstrong>VERY\u003C\u002Fstrong> slow.\u003C\u002Fp>\n\u003Cp>Eventually, when reaching about 1000 pages, page management becomes quite tedious and time-consuming, because any change in a page takes a few minutes to be saved (during which the site usually comes to a halt because of heavy database load and table lock)\u003Cbr \u002F>\nwhen script or database max request times are finally reached, it becomes impossible to modify anything in a page.\u003C\u002Fp>\n\u003Cp>The reason is that \u003Cstrong>rewrite rules for \u003Cem>all\u003C\u002Fem> the blog’s pages are rebuilt everytime something is changed and saved in a page\u003C\u002Fstrong>, even if the url structure has no reason to change at all.\u003C\u002Fp>\n\u003Cp>(This is an aknowledged weakness of WordPress, that has been featured on the TRAC development list for a few years already)\u003C\u002Fp>\n\u003Cp>This very short and simple plugin tries to fix this problem for most page updates:\u003Cbr \u002F>\nRewriterules structure will get rebuilt only if the name of the page, or its parent attachment are changed, resulting in tremendous acceleration of the whole updating process.\u003C\u002Fp>\n\u003Cp>Since version 0.2.0 you can decide for yourself when to force flushing of page address rewriterules, or when to completely disable rules flushing.\u003Cbr \u002F>\nPlease take notice that if you disable the rules flushing, your new page addresses will not work until you force a bulk rules flush.\u003C\u002Fp>\n\u003Cp>Expect hundred-fold improvement in page update delay in the admin for a 1000+ pages blog.\u003Cbr \u002F>\n(from over a minute to less than 10 seconds on one of my 2000+ page blog)\u003C\u002Fp>\n\u003Cp>By further \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fattachment\u002Fticket\u002F10852\u002F10852_get_page_children.diff\" rel=\"nofollow ugc\">patching your wp-includes\u002Fpost.php core file\u003C\u002Fa>\u003Cbr \u002F>\naccording to \u003Ca href=\"https:\u002F\u002Fcore.trac.wordpress.org\u002Fticket\u002F10852\" rel=\"nofollow ugc\">WP trac Ticket #10852\u003C\u002Fa>, you will possibly get even better performances.\u003C\u002Fp>\n\u003Cp>\u003Cem>(btw. I have another improvement of wp-includes\u002Fpost.php that I could not yet figure out how to build into a plugin that makes me gain a few more seconds on each save.)\u003C\u002Fem>\u003C\u002Fp>\n\u003Ch4>Possible caveat\u003C\u002Fh4>\n\u003Cp>This plugin chooses to bypass an important core function of the WordPress administration workflow for the sake of speed.\u003Cbr \u002F>\nBe aware that on some specific environments, this could cause unwanted side-effects, such as bad page linking or url permalink structure.\u003C\u002Fp>\n\u003Cp>The plugin has however been tested on a 2000+ page medium-loaded site (around 1000 visitors\u002Fday) with 50 popular plugins installed and works perfectly for that purpose.\u003C\u002Fp>\n\u003Cp>Your own mileage may vary.\u003C\u002Fp>\n\u003Ch4>Active support\u003C\u002Fh4>\n\u003Cp>Drop me a line on my \u003Ca href=\"http:\u002F\u002Fwww.yann.com\u002Fen\u002Fwp-plugins\u002Fyd-fast-page-update\" title=\"Yann Dubois' FAST page update plugin for WordPress\" rel=\"nofollow ugc\">YD FAST page update support site\u003C\u002Fa> to report bugs or successful implementations, ask for a specific feature or improvement, or just tell me how you’re using the plugin.\u003C\u002Fp>\n\u003Ch4>Description en Français :\u003C\u002Fh4>\n\u003Cp>Ce plug-in WordPress accélère d’un facteur 100 ou plus le temps de sauvegarde ou mise à jour des pages hiérarchiques d’un blog WordPress comprenant un très grand nombre de pages (plusieurs centaines).\u003C\u002Fp>\n\u003Cp>En effet, dès qu’on atteint quelques centaines de pages sur un blog orienté CMS, si on utilise des url “propres” compatibles avec l’optimisation du référencement (SEO), le temps de mise à jour des pages commence à prendre plusieurs minutes.\u003Cbr \u002F>\nL’administration des pages devient finalement impossible à cause d’une surcharge de la base de données ou de délais d’exécution trop importants.\u003C\u002Fp>\n\u003Cp>Ce plugin règle le problème en évitant de reconstruire toute la structure des liens de toutes les pages du site si le nom de la page ou sa page de rattachement hiérarchique n’ont pas changé.\u003C\u002Fp>\n\u003Cp>Le plugin peut fonctionner avec n’importe quelle langue ou jeu de caractères compatible avec WordPress.\u003C\u002Fp>\n\u003Cp>Pour toute aide ou information en français, laissez-moi un commentaire sur le \u003Ca href=\"http:\u002F\u002Fwww.yann.com\u002Fen\u002Fwp-plugins\u002Fyd-fast-page-update\" title=\"Yann Dubois' FAST page update plugin for WordPress\" rel=\"nofollow ugc\">site de support du plugin YD FAST page update\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Funding Credits\u003C\u002Fh4>\n\u003Cp>Original development of this plugin has been paid for by \u003Ca href=\"http:\u002F\u002Fwww.nogent-citoyen.fr\" title=\"Nogent Citoyen\" rel=\"nofollow ugc\">Nogent Citoyen\u003C\u002Fa>. Please visit their site!\u003C\u002Fp>\n\u003Cp>Le développement d’origine de ce plugin a été financé par \u003Ca href=\"http:\u002F\u002Fwww.nogent-citoyen.com\" title=\"Nogent Citoyen\" rel=\"nofollow ugc\">Nogent Citoyen\u003C\u002Fa>. Allez visiter leur site !\u003C\u002Fp>\n\u003Ch4>Translation\u003C\u002Fh4>\n\u003Cp>If you want to contribute to a translation of this plugin’s documentation, please drop me a line by e-mail or leave a comment on the plugin’s page.\u003C\u002Fp>\n\u003Ch3>Revisions\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>0.1.0 Original beta version.\u003C\u002Fli>\n\u003Cli>0.2.0 Added manual rules flush control.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>To Do\u003C\u002Fh3>\n\u003Cp>Test. Final release.\u003C\u002Fp>\n\u003Ch3>Did you like it?\u003C\u002Fh3>\n\u003Cp>Drop me a line on http:\u002F\u002Fwww.yann.com\u002Fen\u002Fwp-plugins\u002Fyd-fast-page-update\u003C\u002Fp>\n\u003Cp>And… \u003Cem>please\u003C\u002Fem> rate this plugin –>\u003C\u002Fp>\n","Speed-up page updating, when using custom permalinks and a lot of pages.",10,6344,0,"2010-05-20T16:03:00.000Z","2.9.2","2.9.1","",[19,20,21,22,23],"admin","administration","blogs","cms","wordpress","http:\u002F\u002Fwww.yann.com\u002Fen\u002Fwp-plugins\u002Fyd-fast-page-update","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fyd-fast-page-update.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"ydubois",14,180,88,30,86,"2026-04-04T08:55:58.226Z",[39,63,84,102,118],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":49,"num_ratings":50,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":17,"tags":54,"homepage":59,"download_link":60,"security_score":61,"vuln_count":50,"unpatched_count":13,"last_vuln_date":62,"fetched_at":28},"aapanel-wp-toolkit","aapanel WP Toolkit","1.2","aapanel","https:\u002F\u002Fprofiles.wordpress.org\u002Faapanel\u002F","\u003Cp>Allows you to manage WordPress remotely on aapanel, one-click login, and some features will be coming in the future.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This file is part of aapanel WP Toolkit.\u003C\u002Fp>\n\u003Cp>aapanel WP Toolkit is free software: you can redistribute it and\u002For modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.\u003C\u002Fp>\n\u003Cp>aapanel WP Toolkit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\u003C\u002Fp>\n\u003Cp>You should have received a copy of the GNU General Public License along with ManageWP Worker. If not, see \u003Ca href=\"https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002F\u003C\u002Fa>.\u003C\u002Fp>\n","A better way to manage dozens of WordPress websites.",1000,3914,100,1,"2025-07-29T02:40:00.000Z","6.8.5","3.0",[20,55,56,57,58],"automatic","login","manage-wordpress","remote","https:\u002F\u002Fwww.aapanel.com\u002Fnew\u002Ffeature\u002Fwp.html","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Faapanel-wp-toolkit.1.2.zip",98,"2025-07-17 16:21:33",{"slug":64,"name":65,"version":66,"author":67,"author_profile":68,"description":69,"short_description":70,"active_installs":71,"downloaded":72,"rating":49,"num_ratings":73,"last_updated":74,"tested_up_to":75,"requires_at_least":76,"requires_php":77,"tags":78,"homepage":80,"download_link":81,"security_score":82,"vuln_count":50,"unpatched_count":13,"last_vuln_date":83,"fetched_at":28},"slash-admin","Slash Admin","3.8.3","Giorgos Sarigiannidis","https:\u002F\u002Fprofiles.wordpress.org\u002Fgsarig\u002F","\u003Cp>Slash Admin gathers some common functions that you probably need in most of your websites. The plugin lets you change various different options in a WordPress website, keeps them active even if you switch your theme and helps you create a friendlier Admin Panel for you and your editors.\u003C\u002Fp>\n\u003Cp>If you are lost with the many options, here’s a presentation of the plugin’s \u003Ca href=\"https:\u002F\u002Fwww.gsarigiannidis.gr\u002Fslash-admin-best-features\u002F\" rel=\"nofollow ugc\">best features\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>\u003Cem>Frontend\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Option to point to a static splash page.\u003C\u002Fli>\n\u003Cli>Option to convert email addresses characters to HTML entities to block spam bots.\u003C\u002Fli>\n\u003Cli>Show EU Cookie Law consent message (check screenshots about available options). Since v.3.0 it also supports WPML for different message per language.\u003C\u002Fli>\n\u003Cli>Add a “Loading” animation which hides itself when the page is fully loaded\u003C\u002Fli>\n\u003Cli>Enqueue your own Google Web Fonts, with option to load it locally for better performance and privacy\u003C\u002Fli>\n\u003Cli>Get rid of the word “Category:” in front of the Archive title (usually needed if your theme uses the_archive_title()).\u003C\u002Fli>\n\u003Cli>Add excerpt support to pages.\u003C\u002Fli>\n\u003Cli>Enable the use of shortcodes in widgets.\u003C\u002Fli>\n\u003Cli>Display a warning for users of old versions of Internet Explorer (IE8 or older). Yes, sadly there are still people who use Internet Explorer 8…\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Administration\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Insert Google Analytics tracking code (so as you don’t have to remember re-entering it in case you switch themes in the future)\u003C\u002Fli>\n\u003Cli>Hide Site Health from everyone except from a selected Admin (\u003Ca href=\"https:\u002F\u002Fwww.gsarigiannidis.gr\u002Fhow-to-hide-wordpress-site-health-from-everyone-but-you\u002F\" rel=\"nofollow ugc\">read more\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>Hide ACF options from everyone except from the selected Admin\u003C\u002Fli>\n\u003Cli>Since WordPress 5.2 there is a built-in feature that detects when a plugin or theme causes a fatal error on your site, and notifies you with this automated email. By default, it will be sent to the admin email. Slash Admin allows you to override it (you can also add multiple recipients if you like). \u003Ca href=\"https:\u002F\u002Fwww.gsarigiannidis.gr\u002Fhow-to-hide-wordpress-site-health-from-everyone-but-you\u002F\" rel=\"nofollow ugc\">Read more\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Change the address that receives the Plugin and Theme auto-update email notifications\u003C\u002Fli>\n\u003Cli>Make WordPress respect the order of the tags you insert in a post (\u003Ca href=\"https:\u002F\u002Fwww.gsarigiannidis.gr\u002Fwordpress-post-tags-order\" rel=\"nofollow ugc\">read more\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>Limit the number of revisions that WordPress keeps for each post (keeps the database cleaner)\u003C\u002Fli>\n\u003Cli>Prevent Post Updates and Deletion After a Set Period. Useful if you have many editors or in cases where an editor’s account is compromised, adding spam code to the posts (by disallowing editing of older posts you limit the damage)\u003C\u002Fli>\n\u003Cli>Enable Jetpack development mode\u003C\u002Fli>\n\u003Cli>Move Jetpack share and like buttons\u003C\u002Fli>\n\u003Cli>Maintenance mode. If checked, non-Admins will not be able to acess the WordPress backend and they will see a customizable message instead. Useful if you want to perform some maintenance work to your website and you don’t want your Editors to add or modify the content before you finish. Admins are not affected and they can always login as usual.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Login screen\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Add your custom logo at the WordPress log-in screen\u003C\u002Fli>\n\u003Cli>Make the login screen logo (custom or default) linking to your website’s homepage instead of wordpress.org\u003C\u002Fli>\n\u003Cli>After login, redirect users at the homepage instead of their profile page\u003C\u002Fli>\n\u003Cli>Disable the Admin Bar for all users except Administrators. Applies only to the front-end. It’s useful if you want your site to be visible only to logged-in users (e.g. during developement phase), but you don’t want them to access the dashboard or get confused with the admin bar\u003C\u002Fli>\n\u003Cli>Add your custom CSS to the login screen to completely change its appearance\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Non-admins\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Hide unnecessary options from the Admin menu for non admins (so editors won’t get overwhelmed with options that have no meaning for the current website).\u003C\u002Fli>\n\u003Cli>Disable tags and categories\u003C\u002Fli>\n\u003Cli>Hide specific pages from non admins. For example, you might not want your editors to have access to the static frontpage, the blog page or pages that you use as page templates.\u003C\u002Fli>\n\u003Cli>Allow editors to manage Menus and Widgets and access some other appearance settings previously acessible only to admins (for example, you might want to give your client the option to modify the website’s menu, but you would rather avoid making him\u002Fher an administrator).\u003C\u002Fli>\n\u003Cli>Hide notices about updating WordPress and other plugins for all users except from Admins (sometimes clients get confused with those notices and think that there is something wrong with the website).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>White label backend\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Change the “Howdy” message at the top right corner of the admin (both backend and logged-in frontend)\u003C\u002Fli>\n\u003Cli>Change the default footer text at the admin\u003C\u002Fli>\n\u003Cli>Replace the WordPress logo at the top left corner of the admin bar with your own (both backend and logged-in frontend)\u003C\u002Fli>\n\u003Cli>Replace the default Welcome message at the Dashboard with your own\u003C\u002Fli>\n\u003Cli>Add a Dashboard Widget to provide general or commercial information to your clients (for example: your contact info or links to support documentation)\u003C\u002Fli>\n\u003Cli>Add your own custom CSS for the Admin area\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Performance\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Disable Emojis\u003C\u002Fli>\n\u003Cli>Disable wp-embed script from the frontend or load it conditionally\u003C\u002Fli>\n\u003Cli>DNS prefetching notifies the client that there are assets we’ll need later from a specific URL (outside our website’s domain) so the browser can resolve the DNS as quickly as possible.\u003C\u002Fli>\n\u003Cli>Link prefetching and prerendering. Link prefetching is a browser mechanism, which utilizes browser idle time to download or prefetch documents that the user might visit in the near future. A web page provides a set of prefetching hints to the browser, and after the browser is finished loading the page, it begins silently prefetching specified documents and stores them in its cache. When the user visits one of the prefetched documents, it can be served up quickly out of the browser’s cache. Prerendering downloads and renders the entire page and hides it from the user until it is requested, therefore, it should be used with caution.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Shortcodes\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>If you manually include email addresses in your posts, you should consider disguising them in order to “fool” e-mail harvesters (check FAQ for details).\u003C\u002Fli>\n\u003Cli>Show a telephone number in a way that it is clickable. When clicked, if you are on a mobile device it opens the phone’s dialer and if you are on a desktop computer it prompts to make a call via a related program (e.g. Skype).\u003C\u002Fli>\n\u003Cli>If you develop your site on localhost or on a temporary URL, you might want to avoid absolute URLs inside posts and pages. That way you don’t need to update your links after migrating to your actual domain (check FAQ for details). \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Development functions\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Using \u003Ccode>slash_dump()\u003C\u002Fcode> instead of \u003Ccode>var_dump()\u003C\u002Fcode> will wrap the output in \u003Ccode>\u003Cpre>\u003C\u002Fpre>\u003C\u002Fcode> tags, for better readability. \u003Ccode>slash_admin_dump()\u003C\u002Fcode> does the same thing, only this time the output is only visible to admins (can be handy if you want to debug a live site).\u003C\u002Fli>\n\u003Cli>Show warnings if the site is on air and debug mode is still on and if the site is on localhost and debug mode is off. Also, show warning if the website is on air and you have chosen to hide it from Search Engines.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Notifications\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>Slash Admin displays the following notifications:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>A list with the users who logged in during the past 15 minutes (except from you, obviously)\u003C\u002Fli>\n\u003Cli>A warning when debug mode is enabled (you should enable it when developing, but disable it when the site goes live)\u003C\u002Fli>\n\u003Cli>A warning when your site is hidden from search engines\u003C\u002Fli>\n\u003C\u002Ful>\n","Dozens of settings aiming at creating a friendlier administration environment for both Administrators and Editors.",500,27689,9,"2024-03-01T12:59:00.000Z","6.4.8","5.0","7.0",[19,20,79,56,23],"dashboard","http:\u002F\u002Fwordpress.org\u002Fplugins\u002Fslash-admin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fslash-admin.3.8.3.zip",84,"2024-04-23 00:00:00",{"slug":85,"name":86,"version":87,"author":88,"author_profile":89,"description":90,"short_description":91,"active_installs":92,"downloaded":93,"rating":94,"num_ratings":50,"last_updated":95,"tested_up_to":96,"requires_at_least":53,"requires_php":17,"tags":97,"homepage":100,"download_link":101,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"content-management-system-dashboard","CMS Dashboard","2.0","3pointross","https:\u002F\u002Fprofiles.wordpress.org\u002F3pointross\u002F","\u003Cp>Improve the usability of your WordPress CMS system. This plug-in creates a dashboard widget with clearly labeled large buttons of the most common tasks one would perform when using wordpress as a content management system.\u003C\u002Fp>\n\u003Cp>I have found that particularly when handing a WordPress CMS over to less than tech-savvy clients, there is often confusion on how to perform some of the more simple tasks simply because the WordPress side menu can be overwhelming. This plugin creates a simple to use dashboard interface that will let clients easily post, edit, manage users and change widgets with out having to do any hunting or searching.\u003C\u002Fp>\n","Improve the usability of your Wordpress CMS system. This plug-in creates a dashboard widget with clearly labeled large buttons of the most common task &hellip;",300,23105,80,"2010-09-07T19:39:00.000Z","3.0.5",[19,20,98,22,99],"client","pages","http:\u002F\u002Fworkshop.37designs.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontent-management-system-dashboard.zip",{"slug":103,"name":104,"version":105,"author":106,"author_profile":107,"description":108,"short_description":109,"active_installs":92,"downloaded":110,"rating":94,"num_ratings":111,"last_updated":112,"tested_up_to":113,"requires_at_least":53,"requires_php":17,"tags":114,"homepage":116,"download_link":117,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"lock-pages","Lock Pages","0.3.1","Steve Taylor","https:\u002F\u002Fprofiles.wordpress.org\u002Fgyrus\u002F","\u003Cp>NOTE: This plugin is not tested with Gutenberg, and we have no near-term plans to do so. If using WP > 5.0, use the Classic Editor if there are problems.\u003C\u002Fp>\n\u003Cp>NOTE: This plugin was originally designed to only lock pages, and only later added custom post type functionality. Hence the name, and sometimes the terminology will say “pages” when it means “any post type”.\u003C\u002Fp>\n\u003Cp>Sometimes some pages or other posts are too important to allow them to be casually moved about or deleted by site editors. An editor may think nothing of renaming a page’s slug, or deleting a page to replace it with something similar, perhaps unaware of effects on SEO. Also, certain pages might be essential to keep in place because of a site’s structure, or because of aspects of a custom theme.\u003C\u002Fp>\n\u003Cp>This plugin lets administrators “lock” any or all pages, and any post of any post type. “Locking” here basically means preventing non-admins from:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Editing the item’s slug\u003C\u002Fli>\n\u003Cli>Changing the item’s parent\u003C\u002Fli>\n\u003Cli>Changing the item’s template\u003C\u002Fli>\n\u003Cli>Deleting the item\u003C\u002Fli>\n\u003Cli>Changing the item’s status\u003C\u002Fli>\n\u003Cli>Changing the item’s password protection\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Locking is implemented by preventing the actual database update being performed as well as, where possible, having the interface element for that field removed. Where possible interface elements are removed via WP filters on the server; otherwise, jQuery is used on the client.\u003C\u002Fp>\n\u003Cp>NOTE: Currently, I’ve been unable to get this working with the Quick Edit functionality. As a stop-gap measure, which is only in place because it seems to be better than nothing, the Quick Edit link is removed for users who can’t edit locked pages. I know, it’s not great. But until I work out how to selectively block Quick Editing, I’m assuming a locked page should be locked. Users can always edit the other fields via the normal edit page.\u003C\u002Fp>\n\u003Cp>Go to GitHub for \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgyrus\u002FLock-Pages\" rel=\"nofollow ugc\">development code\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fgyrus\u002FLock-Pages\u002Fissues\" rel=\"nofollow ugc\">issue tracking\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Known issues\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Quick Edit presents problems. I’ve worked out how to create hidden fields in the Quick Edit box, and to put the values in the hidden div, but I can’t work out how to dynamically populate the fields with the values, so the old values can be used if necessary on saving. For now Quick Edit is blocked for users who can’t edit locked pages.\u003C\u002Fli>\n\u003Cli>Although I’ve fixed the lock_parent function so it allows uploaded files to be attached to a locked page, it still prevents media already in the library from being attached when inserted.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Ideas\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Include the locking checkbox for admins in the Quick Edit form.\u003C\u002Fli>\n\u003Cli>On the settings screen, use a drop-down for selecting which capability is needed for editing locked page elements.\u003C\u002Fli>\n\u003Cli>Implement a system to deal with descendants, e.g. an option to lock all descendants of a locked page or not.\u003C\u002Fli>\n\u003C\u002Ful>\n","Lock Pages prevents specified pages (or all pages), posts, or custom post types from having their slug, parent, status or password edited, or from bei &hellip;",17843,2,"2018-12-19T15:28:00.000Z","4.9.29",[19,20,22,115,99],"page","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Flock-pages\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flock-pages.0.3.1.zip",{"slug":119,"name":120,"version":121,"author":122,"author_profile":123,"description":124,"short_description":125,"active_installs":126,"downloaded":127,"rating":13,"num_ratings":13,"last_updated":128,"tested_up_to":52,"requires_at_least":76,"requires_php":17,"tags":129,"homepage":17,"download_link":133,"security_score":49,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"wpcommand","WP Command and Control Plugin","2.3.6","supersoju","https:\u002F\u002Fprofiles.wordpress.org\u002Fsupersoju\u002F","\u003Cp>The WP Command and Control WordPress Plugin works with \u003Ca href=\"http:\u002F\u002Fwww.wpcommandcontrol.com\u002F\" rel=\"nofollow ugc\">WP Command and Control\u003C\u002Fa> to remotely manage all your WordPress sites. WP Command and Control is currently in private beta, please visit \u003Ca href=\"http:\u002F\u002Fwww.wpcommandcontrol.com\u002F\" rel=\"nofollow ugc\">WP Command and Control\u003C\u002Fa> to join the annoucement list.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Track each of your WordPress installs version and plugin info.\u003C\u002Fli>\n\u003Cli>Manually or automatically update any or all of your WordPress core installs or plugins.\u003C\u002Fli>\n\u003Cli>Schedule automated off-site backups\u003C\u002Fli>\n\u003Cli>Schedule automated plugin updates\u003C\u002Fli>\n\u003Cli>Generate plugin and core update reports for each of your sites\u003C\u002Fli>\n\u003Cli>Automatically add a new WordPress site to your WP Command and Control account just by activting the plugin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Support\u003C\u002Fh4>\n\u003Cp>You can email us at support@wpcommandcontrol.com for support.\u003C\u002Fp>\n","WP Command and Control allows you to manage multiple WordPress installs from a single dashboard.",20,13131,"2025-08-01T15:13:00.000Z",[130,131,119,132],"multiple-wordpress","remote-administration","wpcontrol","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwpcommand.2.3.6.zip",{"attackSurface":135,"codeSignals":161,"taintFlows":168,"riskAssessment":195,"analyzedAt":200},{"hooks":136,"ajaxHandlers":157,"restRoutes":158,"shortcodes":159,"cronEvents":160,"entryPointCount":13,"unprotectedCount":13},[137,143,148,152,154],{"type":138,"name":139,"callback":140,"file":141,"line":142},"action","admin_menu","yd_register_rewrite_bypass","yd-fast-page-update.php",43,{"type":138,"name":144,"callback":145,"priority":146,"file":141,"line":147},"save_post","yd_save_post_hook",5,47,{"type":138,"name":149,"callback":150,"priority":146,"file":141,"line":151},"pre_post_update","yd_get_prev_post_data",48,{"type":138,"name":139,"callback":153,"file":141,"line":49},"yd_fpu_register_custom_box",{"type":138,"name":144,"callback":155,"priority":13,"file":141,"line":156},"yd_save_fpu_data",120,[],[],[],[],{"dangerousFunctions":162,"sqlUsage":163,"outputEscaping":165,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":167},[],{"prepared":13,"raw":13,"locations":164},[],{"escaped":13,"rawEcho":13,"locations":166},[],[],[169,187],{"entryPoint":170,"graph":171,"unsanitizedCount":50,"severity":186},"yd_save_fpu_data (yd-fast-page-update.php:115)",{"nodes":172,"edges":183},[173,178],{"id":174,"type":175,"label":176,"file":141,"line":177},"n0","source","$_POST['yd_fpu_status']",117,{"id":179,"type":180,"label":181,"file":141,"line":177,"wp_function":182},"n1","sink","update_option() [Settings Manipulation]","update_option",[184],{"from":174,"to":179,"sanitized":185},false,"low",{"entryPoint":188,"graph":189,"unsanitizedCount":50,"severity":186},"\u003Cyd-fast-page-update> (yd-fast-page-update.php:0)",{"nodes":190,"edges":193},[191,192],{"id":174,"type":175,"label":176,"file":141,"line":177},{"id":179,"type":180,"label":181,"file":141,"line":177,"wp_function":182},[194],{"from":174,"to":179,"sanitized":185},{"summary":196,"deductions":197},"The \"yd-fast-page-update\" plugin, version 0.2.0, exhibits a strong security posture in its static analysis. There are no identified AJAX handlers, REST API routes, shortcodes, or cron events, which significantly limits the potential attack surface. Furthermore, the code adheres to excellent practices by not utilizing dangerous functions, all SQL queries are prepared, and all identified outputs are properly escaped. The absence of file operations and external HTTP requests further contributes to its secure design. Taint analysis, while limited to two flows, found no critical or high severity issues, and the plugin has a clean vulnerability history with zero recorded CVEs.\n\nDespite these positive indicators, the taint analysis did reveal two flows with unsanitized paths. While these did not reach critical or high severity in this analysis, they represent a potential area for concern and warrant closer inspection to ensure no vulnerabilities can be exploited. The absence of nonce checks and capability checks on all entry points (though there are none identified) could be a concern if new entry points are added without these security measures. Overall, the plugin demonstrates a commitment to secure coding practices, but the presence of unsanitized paths suggests vigilance is still necessary.",[198],{"reason":199,"points":146},"Flows with unsanitized paths found","2026-03-16T23:45:31.670Z",{"wat":202,"direct":209},{"assetPaths":203,"generatorPatterns":204,"scriptPaths":205,"versionParams":206},[],[],[],[207,208],"yd-fast-page-update\u002Fstyle.css?ver=","yd-fast-page-update\u002Fscript.js?ver=",{"cssClasses":210,"htmlComments":211,"htmlAttributes":215,"restEndpoints":218,"jsGlobals":219,"shortcodeOutput":220},[],[212,213,214],"\u003C!-- YD: Avoid flushing rules if previous post name and parent are the same -->","\u003C!-- TODO: Also avoid flushing as long as we're draft\u002Funpublished -->","\u003C!-- TODO: maybe invent some selective flush method -->",[216,217],"id=\"yd_fpu_status\" name=\"yd_fpu_status\"","id=\"yd_fpu_box\"",[],[],[]]