[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f0ot_k0MH4FaNRVbBJ4LyYmpL-ShKsP_CoUOXs1iKWQA":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":35,"analysis":131,"fingerprints":179},"deploy-helper","Deploy Helper","0.6","topdrawinc","https:\u002F\u002Fprofiles.wordpress.org\u002Ftopdrawinc\u002F","\u003Cp>Simplify the process of deploying a website. If you ever worked on a WordPress site on a local environment, you know how frustrating it can be to move it to different servers.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ca href=\"http:\u002F\u002Fwww.topdraw.com\u002Fnews\u002Fwp-plugin-deploy-helper\u002F\" title=\"Top Draw home page\" rel=\"nofollow ugc\">Plugin home page\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Ftags\u002Ftd-deployhelper\u002F\" title=\"Forum \u002F Support\" rel=\"ugc\">Forum \u002F Support\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n","Simplify the process of deploying a website. If you ever worked on a Wordpress site on a local environment, you know how frustrating it can be to move &hellip;",10,3556,0,"2012-06-05T22:13:00.000Z","3.3.2","2.9.0","",[19,20,21,22,23],"deployment","development","hosting","paths","staging","http:\u002F\u002Fwww.topdraw.com\u002Fnews\u002Fwp-plugin-deploy-helper\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdeploy-helper.0.6.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},1,30,84,"2026-04-04T16:22:16.679Z",[36,58,79,97,116],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":46,"num_ratings":47,"last_updated":48,"tested_up_to":49,"requires_at_least":50,"requires_php":51,"tags":52,"homepage":56,"download_link":57,"security_score":46,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"display-environment-type","Display Environment Type","1.6.0","Stoil Dobreff","https:\u002F\u002Fprofiles.wordpress.org\u002Fsdobreff\u002F","\u003Cp>WordPress 5.5 introduced a way to differentiate between environment types (development, staging, production). This plugin shows your site’s environment type in the admin bar and the dashboard “At a Glance” widget.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fmake.wordpress.org\u002Fcore\u002F2020\u002F07\u002F24\u002Fnew-wp_get_environment_type-function-in-wordpress-5-5\u002F\" rel=\"nofollow ugc\">More info about the feature\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>To gain additional control — for example, setting the environment or other values from the WP admin (when \u003Ccode>wp-config.php\u003C\u002Fcode> is writable) — consider installing our other plugin \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002F0-day-analytics\u002F\" rel=\"ugc\">0 Day Analytics\u003C\u002Fa>\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch3>Recommended Plugins\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002F0-day-analytics\u002F\" rel=\"ugc\">0 Day Analytics\u003C\u002Fa> — a powerful plugin for sites that need more insight into errors and runtime behavior. It includes a Cron manager, a Transient manager (database-backed), DB manager, Snippet manager, Mail manager, Plugin Version Switcher available from the Plugins page and many more.\u003C\u002Fli>\n\u003C\u002Ful>\n","Displays WordPress 5.5's environment type setting in the admin bar and the \"At a Glance\" dashboard widget.",1000,135115,100,4,"2025-12-19T15:09:00.000Z","6.9.4","5.5","7.4",[20,53,54,55,23],"dtap","environment","production","https:\u002F\u002Froytanck.com\u002F2020\u002F08\u002F21\u002Fnew-wordpress-plugin-display-environment-type\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdisplay-environment-type.1.6.0.zip",{"slug":59,"name":60,"version":61,"author":62,"author_profile":63,"description":64,"short_description":65,"active_installs":46,"downloaded":66,"rating":46,"num_ratings":67,"last_updated":68,"tested_up_to":69,"requires_at_least":70,"requires_php":17,"tags":71,"homepage":75,"download_link":76,"security_score":77,"vuln_count":31,"unpatched_count":13,"last_vuln_date":78,"fetched_at":28},"the-permalinker","The Permalinker","1.9.0","Andy Stratton","https:\u002F\u002Fprofiles.wordpress.org\u002Ftheandystratton\u002F","\u003Cp>Use short codes to dynamically link to your WordPress pages and posts. All you need is the ID. This can come in handy when developing content for WordPress sites. Makes for a cleaner migration with no need to manipulate content when moving from one subdirectory or domain to another.\u003C\u002Fp>\n\u003Cp>Attributes of \u003Ccode>append\u003C\u002Fcode> \u003Ccode>class\u003C\u002Fcode>, \u003Ccode>rel\u003C\u002Fcode>, and \u003Ccode>target\u003C\u002Fcode> are supported within the \u003Ccode>[permalink]\u003C\u002Fcode> opening tag. See FAQs. You can insert the token \u003Ccode>%post_title%\u003C\u002Fcode> to dynamically insert the post’s title into anchor text (content between the opening and closing shortcode).\u003C\u002Fp>\n\u003Cp>A short code for \u003Ccode>[template_uri]\u003C\u002Fcode> exists if you’d like to dynamically grab the full URL to your current template directory (useful for adding images and other resources bundled in a template via the page\u002Fpost editor).\u003C\u002Fp>\n\u003Cp>\u003Cem>Example 1: Create link.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[permalink id=2 rel=\"internal\"]Check out my latest post named %post_title%[\u002Fpermalink] or use `[permalink]this link[\u002Fpermalink]` to link to this post.\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cem>Example 2: Output Permalink URL.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Ca href=\"[permalink]\">;This post.\u003C\u002Fa>;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cem>Example 3: Template Directory URI\u003C\u002Fem>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cimg src=\"[template_uri]\u002Fphotos\u002Fme_grandma.jpg\" alt=\"A Photo of Me and My Grandma\" \u002F>\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Use short codes to dynamically link to your WordPress pages and posts. All you need is the ID. This can come in handy when developing content for Word &hellip;",12640,2,"2024-12-13T20:33:00.000Z","6.4.8","2.6",[20,72,73,74,23],"linking","migration","permalinks","http:\u002F\u002Ftheandystratton.com\u002F2009\u002Fthe-permalinker-wordpress-plugin-dynamic-permalinks","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fthe-permalinker.1.9.0.zip",91,"2024-12-13 15:58:35",{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":32,"downloaded":87,"rating":46,"num_ratings":31,"last_updated":88,"tested_up_to":89,"requires_at_least":90,"requires_php":91,"tags":92,"homepage":17,"download_link":96,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"dev-theme","Dev Theme","1.2.1","Avi Bashari","https:\u002F\u002Fprofiles.wordpress.org\u002Fbashari\u002F","\u003Ch4>DEV Theme\u003C\u002Fh4>\n\u003Cp>Develop your website on live server without crashing your site, then deploy all changes in 1 click.\u003C\u002Fp>\n\u003Cp>With Dev Theme plugin, you can easily create a separate staging environment for your website where you can test and experiment with new themes and designs without affecting your live site. Our plugin allows you to make changes to your staging site, preview the changes and only when you’re ready, you can push them to your live site with just a click of a button.\u003C\u002Fp>\n\u003Cp>Our plugin makes it easy for you to edit themes on your live site, without worrying about affecting your live site until you decides to. You can experiment with different themes, customize them to your liking, and see how they look and feel on your site, all without having to worry about damaging your live website.\u003C\u002Fp>\n\u003Cp>While the plugin does not allow you to edit plugins on the site, it ensures that any changes made to your theme are isolated and do not affect your live site. This means that you can experiment with new designs, layouts, and features without the risk of damaging your website’s performance or functionality.\u003C\u002Fp>\n\u003Cp>Overall, Dev Theme plugin is a powerful tool that allows you to create a safe and isolated environment to experiment with your website’s design and layout, making it easy for you to make changes and improvements without any risk to your live site.\u003C\u002Fp>\n\u003Ch4>How it works?\u003C\u002Fh4>\n\u003Cp>The staging feature of Dev Theme, allows you to create a safe and secure environment for you to experiment and develop your website without impacting your live site.\u003C\u002Fp>\n\u003Cp>When you create a staging environment, the plugin will copy your active theme into a folder called “dev-theme”.\u003Cbr \u002F>\nThis folder is where you can safely edit the code of your website without affecting the live version.\u003Cbr \u002F>\nOnce you’ve made the desired changes, you can preview the new version of your website by either activating the dev-theme just for your user, to do that, just enter to your profile and look for the “Dev Theme” option.\u003Cbr \u002F>\nAnother option, add a dev_theme cookie with the value “enabled” in your browser.\u003C\u002Fp>\n\u003Cp>This way, you can test your changes thoroughly before making them live to ensure the best possible user experience.\u003Cbr \u002F>\nWith Dev Theme plugin, you can confidently develop and experiment with your website knowing that your live site remains safe and untouched.\u003C\u002Fp>\n","DEV Theme",1893,"2023-05-09T22:11:00.000Z","6.2.9","4.6","5.6",[93,20,94,23,95],"dev","stage","theme","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdev-theme.zip",{"slug":98,"name":99,"version":100,"author":101,"author_profile":102,"description":103,"short_description":104,"active_installs":32,"downloaded":105,"rating":106,"num_ratings":107,"last_updated":108,"tested_up_to":109,"requires_at_least":110,"requires_php":17,"tags":111,"homepage":114,"download_link":115,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"sitepush","SitePush","0.4.2","Mark Rowatt Anderson","https:\u002F\u002Fprofiles.wordpress.org\u002Fmarkauk\u002F","\u003Cp>SitePush is a WordPress plugin which allows you to have multiple versions of your WordPress site, so you can edit, develop, test without any risk to your main, live site. It’s great for developers, designers and editors… anyone who wants to be able to test changes to a site before it is visible to the world. For example:-\u003C\u002Fp>\n\u003Col>\n\u003Cli>you can \u003Cstrong>easily move content between sites\u003C\u002Fstrong>. For example, make extensive edits on a private staging site, and then push changes all at once to your live site. Or, easily pull copy of your live database into your development site so you are developing against the latest content.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>test new themes and plugins\u003C\u002Fstrong>, and only push them to your live site once they are configured and working as you want.\u003C\u002Fli>\n\u003Cli>upgrade WordPress, themes and plugins on a private site so you can \u003Cstrong>test that nothing breaks before upgrading your live site\u003C\u002Fstrong>. Sure you take backups before any upgrades (right?), but it’s a pain doing a full backup and an even bigger pain restoring from a backup.\u003C\u002Fli>\n\u003Cli>easily make small (and big!) code changes on your development site, \u003Cstrong>test and easily push new code to a live site\u003C\u002Fstrong>. Great for dealing with clients who want “just one more thing”.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Although SitePush installation is a bit more involved than a typical plugin, once set up it runs with minimal effort and can be easily used by non-tech authors & editors. Site admins can easily configure SitePush so that non-admins can only push content (i.e. posts\u002Fpages, comments and uploads) and to a restricted set of sites.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Please read the \u003Cem>Installation\u003C\u002Fem> instructions before you install SitePush – it’s not a normal download and activate type of plugin installation\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>Support\u003C\u002Fh4>\n\u003Cp>SitePush is under active development and I will do my best to provide fixes to problems. The latest general releases are always available through the WordPress Plugins Directory. Development code is \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Frowatt\u002Fsitepush\u002Ftree\u002Fdevelop\" rel=\"nofollow ugc\">hosted on GitHub\u003C\u002Fa>, so you may find more frequent releases there.\u003C\u002Fp>\n\u003Cp>For general questions, please post on the WordPress forums with the tag sitepush. For bug reports or if you wish to suggest patches or fixes, please go to the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Frowatt\u002Fsitepush\" rel=\"nofollow ugc\">SitePush GitHub repository\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>If you have any problems with SitePush, it would be helpful if you could add\u003C\u002Fp>\n\u003Cpre>\u003Ccode>define('SITEPUSH_DEBUG',TRUE);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>to your wp-config.php file, and include the output which will now be displayed at the top of the SitePush options screen.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Disclaimer\u003C\u002Fstrong> Although SitePush has been well tested and is used on production web sites, it moves files and database content between sites which could break things. Use of SitePush is at your own risk! Please make sure you have adequate backups and if you do find any problems please report them.\u003C\u002Fp>\n\u003Ch4>Roadmap\u003C\u002Fh4>\n\u003Cp>There are a number of areas which could be improved. Currently on the roadmap:-\u003C\u002Fp>\n\u003Cul>\n\u003Cli>improve push undo\u003C\u002Fli>\n\u003Cli>add support for pushing between sites on different servers\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Please let me know how you would like to see SitePush evolve.\u003C\u002Fp>\n\u003Ch3>Server Setup\u003C\u002Fh3>\n\u003Ch4>How to setup SitePush in a multiple vhost environment\u003C\u002Fh4>\n\u003Cp>You can run your separate versions of a site in a single vhost, or in separate vhosts. While running them all in a single vhost can be little easier to set up on some web hosts, it does not work well if different sites need any different configuration in your .htaccess file – for example if you are using a caching plugin.\u003C\u002Fp>\n\u003Cp>If you are able to set up separate vhosts (or subdomains as some hosts call them) I recommend you do it that way.\u003C\u002Fp>\n\u003Cp>Let’s say you want to have three versions of your site – live, test, and dev.\u003C\u002Fp>\n\u003Cp>Set up a vhost for each site. Where they all sit on your server will depend on your hosting setup, but let’s say they are at:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fvhosts\u002Flive\u002Fhttpdocs\n\u002Fvar\u002Fwww\u002Fvhosts\u002Ftest\u002Fhttpdocs\n\u002Fvar\u002Fwww\u002Fvhosts\u002Fdev\u002Fhttpdocs\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You will need to create a directory to hold all the config files. If at all possible, this directory should not be web accessible. For example, it might be at:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fsitepush\u002Fconfig\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You will also probably want to create a directory for any backups SitePush makes, such as:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fsitepush\u002Fbackups\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Finally, you will need to create a database for each of your sites. Consult the \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FInstalling_WordPress\" rel=\"nofollow ugc\">WordPress installation instructions\u003C\u002Fa> and your web host for how to do this.\u003C\u002Fp>\n\u003Cp>Download WordPress and unzip it into one of your sites. I normally keep WordPress in its own subdirectory, for example:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fvhosts\u002Flive\u002Fhttpdocs\u002Fwordpress\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>That way, the root directory stays clean, and if I install anything else outside of WordPress, there won’t be any confusion of which files belong where. You need to make a couple of changes for this setup to work – see \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FGiving_WordPress_Its_Own_Directory\" rel=\"nofollow ugc\">WordPress documentation\u003C\u002Fa> for more details. Note that for multisite installs, though, you will need to install WordPress in the root directory.\u003C\u002Fp>\n\u003Cp>I do, however, put my wp-config.php file in the root directory (WordPress is smart enough to find it).\u003C\u002Fp>\n\u003Cp>Next you will need to create the SitePush config files and put them in the config directory you created above. See \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fsitepush\u002Finstallation\" rel=\"ugc\">the SitePush installation instructions\u003C\u002Fa> for what needs to go in your sites config file and your database config file (I usually call them sites.ini.php and dbs.ini.php).\u003C\u002Fp>\n\u003Cp>Now, copy the files from the site you just set up to your other sites, for example:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>cd \u002Fvar\u002Fwww\u002Fvhosts\ncp -r live\u002Fhttpdocs dev\u002Fhttpdocs\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>To save a bit of disk space (at the expense of possibly messing things up between sites), you can also symlink the uploads directory between sites so there is only one copy of any media files uploaded. For example:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>cd \u002Fvar\u002Fwww\u002Fvhosts\u002Fdev\u002Fhttpdocs\u002Fwordpress\u002Fwp-content\nrmdir uploads\nln -s ..\u002F..\u002F..\u002F..\u002Flive\u002Fhttpdocs\u002Fwordpress\u002Fwp-content\u002Fuploads uploads\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The exact paths will depend on your setup.\u003C\u002Fp>\n\u003Cp>Finally, log into your live site, install, activate and configure SitePush, and now you are set up to easily move files and content between 3 versions of your site!\u003C\u002Fp>\n\u003Ch4>How to setup SitePush in a single vhost\u003C\u002Fh4>\n\u003Cp>You can run your separate versions of a site in a single vhost, or in separate vhosts. Depending on your web host, running them all in a single vhost can be bit easier to set up, though it does mean you need to share one .htaccess file across all versions of your site, and won’t work for WordPress Multisite setups.\u003C\u002Fp>\n\u003Cp>If you are able to set up separate vhosts (or subdomains as some hosts call them) I recommend you do it that way, but if not, these instructions show how you can have multiple version so of your site on one vhost.\u003C\u002Fp>\n\u003Cp>Let’s say you want to have three versions of your site – live, test, and dev.\u003C\u002Fp>\n\u003Cp>First make sure that you can set up domain aliases on your host – so that multiple domains point to the same files. For example, you might set up:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>live.example.com\ntest.example.com\ndev.example.com\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>If your host allows wildcard domain setups, so for example anything.example.com would point to your files, that would also work\u003C\u002Fp>\n\u003Cp>Set up a subdirectory for each site. Where they all sit on your server will depend on your hosting setup, but let’s say they are at:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fhttpdocs\u002Flive\n\u002Fvar\u002Fwww\u002Fhttpdocs\u002Ftest\n\u002Fvar\u002Fwww\u002Fhttpdocs\u002Fdev\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You will need to create a directory to hold all the config files. If at all possible, this directory should not be web accessible. For example, it might be at:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fsitepush\u002Fconfig\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You will also probably want to create a directory for any backups SitePush makes, such as:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fsitepush\u002Fbackups\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Download WordPress and unzip it into one of the directories for your sites. For example:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002Fvar\u002Fwww\u002Fhttpdocs\u002Flive\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Follow the \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FGiving_WordPress_Its_Own_Directory\" rel=\"nofollow ugc\">instructions\u003C\u002Fa> for more installing WordPress in a subdirectory.\u003C\u002Fp>\n\u003Cp>You should also now create a database for each of your sites. Consult the \u003Ca href=\"https:\u002F\u002Fcodex.wordpress.org\u002FInstalling_WordPress\" rel=\"nofollow ugc\">WordPress installation instructions\u003C\u002Fa> and your web host for how to do this.\u003C\u002Fp>\n\u003Cp>Complete any other required configuration (WordPress setup, plugin installs etc) and make sure that your site is now working properly. Don’t forget to install SitePush!\u003C\u002Fp>\n\u003Cp>Next you need to create the SitePush config files and put them in the config directory you created above. See here readme.txt or \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fsitepush\u002Finstallation\" rel=\"ugc\">the SitePush installation instructions\u003C\u002Fa> for what needs to go in your sites config file and your database config file (I usually call them sites.ini.php and dbs.ini.php).\u003C\u002Fp>\n\u003Cp>Now, copy the files from the site you just set up to your other sites, for example:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>cd \u002Fvar\u002Fwww\u002Fhttpdocs\ncp -r live dev\ncp -r live test\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>To save a bit of disk space (at the expense of possibly messing things up between sites), you can also symlink the uploads directory between sites so there is only one copy of any media files uploaded. For example:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>cd \u002Fvar\u002Fwww\u002Fhttpdocs\u002Fdev\u002Fwp-content\nrmdir uploads\nln -s ..\u002F..\u002Flive\u002Fwp-content\u002Fuploads uploads\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The exact paths will depend on your setup.\u003C\u002Fp>\n\u003Cp>Next you need to make some changes to your wp-config.php file so that it will point to the correct site files and database depending on what domain name was used. The exact details will vary depending on your setup, but you will want something like this, which should be inserted immediately above the line \u003Ccode>\u002F* That's all, stop editing! Happy blogging. *\u002F\u003C\u002Fcode>:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>switch ( $_SERVER['SERVER_NAME'] ) {\n    case 'test.example.com':\n        $site_dir='test';\n        define('DB_NAME', 'database_name_here');\n        define('DB_USER', 'username_here');\n        define('DB_PASSWORD', 'password_here');\n        break;\n\n    case 'dev.example.com':\n        define('DB_NAME', 'database_name_here');\n        define('DB_USER', 'username_here');\n        define('DB_PASSWORD', 'password_here');\n        $site_dir='dev';\n        break;\n\n    case 'www.example.com':\n    case 'live.example.com':\n    default:\n        define('DB_NAME', 'database_name_here');\n        define('DB_USER', 'username_here');\n        define('DB_PASSWORD', 'password_here');\n        $site_dir='live';\n        break;\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Insert whatever constant definitions are specific to a site in that section, and delete or comment them out from their original location in wp-config.\u003C\u002Fp>\n\u003Cp>Lastly, you need to edit the last line of wp-config so it reads:-\u003C\u002Fp>\n\u003Cpre>\u003Ccode>require(\".\u002F{$site_dir}\u002Fwp-blog-header.php\");\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You can now log into your live site, activate and configure SitePush. Once that is done, you can push everything to your other sites and you should now be able to access all three versions of your site. You are now set up to easily move files and content between 3 versions of your site!\u003C\u002Fp>\n","Easily move content and code between WordPress sites. Pull your site's DB to a dev site, push new code to a staging site, etc.",10541,94,15,"2013-09-09T14:17:00.000Z","3.6.1","3.3.1",[19,20,112,73,113],"migrate","move","http:\u002F\u002Frowatt.com\u002Fsitepush","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsitepush.0.4.2.zip",{"slug":117,"name":118,"version":119,"author":120,"author_profile":121,"description":122,"short_description":123,"active_installs":11,"downloaded":124,"rating":13,"num_ratings":13,"last_updated":17,"tested_up_to":125,"requires_at_least":126,"requires_php":17,"tags":127,"homepage":17,"download_link":129,"security_score":46,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":130},"only-admins","Only Admins","1.0","pcoitinho","https:\u002F\u002Fprofiles.wordpress.org\u002Fpcoitinho\u002F","\u003Cp>Only Admins is a minimal plugin that restricts your entire WordPress site to Admins.\u003C\u002Fp>\n\u003Cp>Best used as a MU-Plugin on Development and Staging sites.\u003C\u002Fp>\n","Only Admins is a minimal plugin that restricts your entire WordPress site to Admins.",1122,"4.7.32","4.3",[20,128,23],"security","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fonly-admins.zip","2026-03-15T10:48:56.248Z",{"attackSurface":132,"codeSignals":144,"taintFlows":169,"riskAssessment":170,"analyzedAt":178},{"hooks":133,"ajaxHandlers":140,"restRoutes":141,"shortcodes":142,"cronEvents":143,"entryPointCount":13,"unprotectedCount":13},[134],{"type":135,"name":136,"callback":137,"file":138,"line":139},"action","admin_menu","td_deploy_page","deploy-helper.php",21,[],[],[],[],{"dangerousFunctions":145,"sqlUsage":146,"outputEscaping":148,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":31,"bundledLibraries":168},[],{"prepared":47,"raw":13,"locations":147},[],{"escaped":31,"rawEcho":149,"locations":150},8,[151,154,156,158,160,162,164,166],{"file":138,"line":152,"context":153},81,"raw output",{"file":138,"line":155,"context":153},83,{"file":138,"line":157,"context":153},122,{"file":138,"line":159,"context":153},200,{"file":138,"line":161,"context":153},203,{"file":138,"line":163,"context":153},206,{"file":138,"line":165,"context":153},209,{"file":138,"line":167,"context":153},379,[],[],{"summary":171,"deductions":172},"The \"deploy-helper\" plugin v0.6 exhibits a generally strong security posture based on the provided static analysis. The plugin has no identified vulnerabilities in its history and demonstrates good practices such as using prepared statements for all SQL queries. Crucially, there are no identified dangerous functions, file operations, or external HTTP requests, and the attack surface through AJAX, REST API, shortcodes, and cron events is entirely absent or properly secured.\n\nHowever, a significant concern arises from the extremely low percentage (11%) of properly escaped output. This indicates a high likelihood of Cross-Site Scripting (XSS) vulnerabilities, as user-supplied data or dynamic content may be rendered directly in the browser without sufficient sanitization. The complete absence of taint analysis results is also noteworthy; while it suggests no critical flows were found, it could also imply that the analysis itself was not comprehensive or that the plugin's interactions are too limited to trigger such analysis.\n\nIn conclusion, while the plugin avoids common pitfalls like raw SQL and unprotected entry points, the lack of robust output escaping presents a substantial risk of XSS vulnerabilities. The absence of historical vulnerabilities is a positive sign, but it does not mitigate the immediate risks identified in the code analysis. Remediation efforts should prioritize addressing the output escaping issues.",[173,175],{"reason":174,"points":149},"Low percentage of properly escaped output",{"reason":176,"points":177},"No taint flow analysis results provided",3,"2026-03-16T23:56:27.253Z",{"wat":180,"direct":185},{"assetPaths":181,"generatorPatterns":182,"scriptPaths":183,"versionParams":184},[],[],[],[],{"cssClasses":186,"htmlComments":187,"htmlAttributes":188,"restEndpoints":189,"jsGlobals":190,"shortcodeOutput":191},[],[],[],[],[],[]]