---
title: "How do I manage WordPress from Ploi?"
url: "https://ploi.io/documentation/deployment/how-do-i-manage-wordpress-from-ploi"
published: "2026-09-29"
last_updated: "2026-09-29"
---

# How do I manage WordPress from Ploi?

Every site with the WordPress project type gets a WordPress page in Ploi. From there you manage plugins and themes, run a search and replace on the database, turn on debugging and run WP-CLI commands, without logging in to WordPress or connecting over SSH.

### Getting the WordPress page

A site installed with the [WordPress 1-click installer](/documentation/deployment/how-to-install-wordpress) has the WordPress project type already. For an existing site, open **Settings** and set **Project type** to **WordPress** under **Project details**. The site sidebar then shows **WordPress**, **Repositories** and **View admin**, which opens `/wp-admin`.

### WP-CLI

The WordPress page does its work through WP-CLI. When the server doesn't have it yet, click **Install WP-CLI** on the WordPress page, or **Install WordPress CLI** in the **Services** card on the server's **Manage** page. Ploi installs it as `/usr/local/bin/wp`. Commands run as the site's system user.

The panel waits up to 60 seconds for each command. A command that takes longer keeps running on the server, but its result won't show in the panel.

The **WP-CLI** tab runs any WP-CLI command you type. Leave out `wp`, Ploi adds it.

### The overview

For WordPress sites installed with the 1-click installer, the site page shows a **WordPress overview**. It lists the WordPress version, the number of posts, pages, comments and users, active plugins, the theme and the updates that are available. Ploi caches these numbers for 24 hours. Click **Refresh** to load them again.

### Plugins and themes

The **Plugins** tab lists every plugin with its status, version and available update. You can activate, deactivate, update or delete a plugin, or select several and do it in bulk. Deleting runs the plugin's own uninstall routine, which can also remove its data from the database. Must-use plugins are always on and can't be changed here.

The **Themes** tab lets you activate, update and delete themes, and update or delete several at once. The active theme can't be deleted.

To install a plugin or theme, enter its slug from WordPress.org, for example `wordpress-seo` for Yoast SEO, and click **Install**. With **Activate** ticked it is switched on right away. Plugins and themes that aren't on WordPress.org, such as premium ones, can't be installed this way. Upload those in WordPress, or install them from Git as described below.

### Updating WordPress itself

The overview shows when a new WordPress version is out, but Ploi has no button to update WordPress itself. Update from the WordPress dashboard, see [How do I update WordPress?](/documentation/deployment/how-do-i-update-wordpress), or run `core update` on the **WP-CLI** tab. Make a backup of the database first.

### Search and replace

The **Search &amp; replace** tab replaces text in all tables with the WordPress table prefix, for example after moving the site to a new domain. It runs `wp search-replace`, which also handles serialized data. **Dry run** is on by default and only shows what would change. Untick it and click **Apply changes** to change the database. The tool replaces exactly what you enter, so if the database has both `http://` and `https://` links to the old domain, run it for each of them. More background is in [How do I update all URLs inside a WordPress database using WP-CLI?](/documentation/deployment/how-do-i-update-all-urls-inside-a-wordpress-database-using-wp-cli)

### Debugging

The **WP\_DEBUG** card on the **General** tab turns debug mode on and off. With debug mode on, WordPress writes errors to `wp-debug.log` in the site directory and doesn't show them to visitors. Under **Debug log**, click **Load** to see the last 500 lines. Turn debug mode off when you're done, the log keeps growing while it is on.

### Configuration, cron and XML-RPC

- **Edit wp-config.php** on the General tab opens the configuration file in an editor. Ploi looks for it in the web directory and then in the site root. If yours lives somewhere else, set **Configuration file location** in the site settings.
- WordPress runs its scheduled tasks only when someone visits the site. The **Cronjob** card replaces that with a real cron job that runs every 1 to 15 minutes. Ploi adds `DISABLE_WP_CRON` to `wp-config.php` and removes it again when you delete the cron job. See also [Run WordPress cron manually](/documentation/optimisations/run-wordpress-cron-manually).
- **Block XML-RPC** blocks requests to `xmlrpc.php`, a common target for password guessing attacks. Leave it open only when something needs it, such as Jetpack.

### Plugins and themes from Git

The **Repositories** page clones a Git repository into the WordPress installation as a plugin or theme. Use it for your own plugins and themes, or for premium ones you keep in Git. Enter the target directory relative to the site root, for example `public/wp-content/themes/my-theme`, choose the provider, repository and branch, and click **Install repository**. GitHub, GitLab, Bitbucket and Forgejo work through your linked account. For any other Git server, pick a custom repository and add the SSH key Ploi shows to your Git account.

Every repository has its own deploy script and deployment history. **Deploy** pulls the latest changes of one repository, **Deploy all** deploys them all. To deploy on every push, open **Edit** on the repository and turn on Quick Deploy. Pushes to other branches are ignored, and a commit message with `[deploy skip]` skips the deploy. Quick Deploy isn't available for custom repositories. Deleting a repository also deletes its files from the target directory.

### Bedrock

Ploi supports sites built on Roots Bedrock. It detects the layout by itself in most cases. If it doesn't, pick **Roots Bedrock** under **Installation layout** on the General tab and click **Save**. On a Bedrock site a few things work differently:

- Composer manages the plugins and themes. Changes made on the Plugins and Themes tabs aren't in your `composer.json`, so your next deploy undoes them. Add plugins and themes through Composer instead.
- Ploi can't toggle WP\_DEBUG. Set it in the file for your environment in `config/environments/`.
- The cron job setting writes `DISABLE_WP_CRON` to the `.env` file in the project root.

### Copying a WordPress site

To copy a WordPress site to another server or domain, database included, see [How do I clone a site?](/documentation/domains/how-do-i-clone-a-site)