WP Workbench is a new Virtualmin plugin designed to simplify WordPress site management. It provides a clear, centralized interface for handling plugins, themes, backups, cloning, and development settings—all in one place for a WordPress instance. Whether you prefer a graphical interface or CLI, WP Workbench gives you direct access to essential WordPress management tools without needing WordPress admin credentials.

Installation

WP Workbench is available in standard Virtualmin repositories and can be easily installed using your system’s package manager:

For Debian and derivatives:

apt install virtualmin-wp-workbench

For EL systems:

dnf install virtualmin-wp-workbench

After installation, the module will appear on the “Manage Web Apps” page when a specific WordPress instance is selected.

Why Use WP Workbench?

  • Simplified management: Control your WordPress sites directly from Virtualmin
  • Time-saving: Perform bulk operations on plugins and themes
  • Enhanced security: Backup and restore options provide peace of mind
  • Developer-friendly: Access to cloning, debugging, and maintenance tools
  • Convenience: One-click WordPress admin access
  • Automation: Robust CLI for scripting common tasks with full integration with Virtualmin

User Interface

System Tab

This tab helps you optimize WordPress performance and security:

  • Memory limit: Set how much memory each script can use (default: 40M)

    For small to medium sites, the default might be enough. Increase this if you have many plugins or complex functionality.

  • Admin memory limit: Allocate more memory for admin tasks (default: 256M)

    This higher limit ensures plugin installations, updates, and admin tasks run smoothly.

  • Fail2Ban protection integration: Guard against brute force attacks

    Monitors failed login attempts and temporarily blocks suspicious IP addresses.

  • WordPress auto-updates: Control update behavior

    Choose between disabling all auto-updates, allowing only minor updates, or enabling all updates.

Settings Tab

Manage core WordPress settings without accessing the WordPress dashboard:

  • Site URL: Set where WordPress core files are located

    This is the address where your WordPress site’s files and resources are accessed by users.

  • Home URL: Set your site’s front page address

    This URL points to the front page of your site.

  • Site name: Your website’s title

    Appears in browser tabs, search results, and typically in the header area.

  • Site tagline: Brief description of your site

    Helps visitors and search engines understand your site’s purpose.

  • Permalink structure: Customize your URL format

    Create user and SEO-friendly URLs for better navigation and search rankings.

  • Administrator settings: Manage admin credentials

    Update the selected administrator’s password and email address for the site.

  • Search engine visibility: Control indexing

    Allow or prevent search engines from listing your site.

  • Comment settings: Manage pingbacks and trackbacks

    Control how your site interacts with other blogs when linking content.

  • File editing: Enable or disable code editing in WordPress

    Disabling adds security by preventing plugin/theme code edits from the admin area.

Plugins Tab

Comprehensive plugin management in one place:

  • View all plugins: See installed version and update status
  • Bulk actions: Easily manage multiple plugins at once
    • Activate
    • Deactivate
    • Update
    • Delete
    • Enable/disable auto-updates
  • One-click WordPress login: Direct access to WordPress admin

Themes Tab

Keep your site’s appearance up-to-date and secure:

  • View all themes: See installed version and update status
  • Choose theme: Change active theme
  • Bulk actions: Apply changes to multiple themes
    • Activate
    • Update
    • Delete
    • Enable/disable auto-updates
  • View update availability: Easily see which themes need updating

Backup and Restore Tab

Protect your WordPress site with comprehensive backup tools:

  • Backup options:
    • Full site backup (files and database)
    • Files-only backup
    • Database-only backup
  • Restore capability: Recover from any backup
  • Backup management: Delete outdated backups
  • Backup details: View size, date, and type information

Clone Tab

Duplicate your WordPress site for testing or development:

  • Clone target options:
    • Same domain (different directory)
    • New subdomain
    • New top-level domain
    • Existing domain
  • Customization options:
    • Site URL (automatic or custom)
    • Site name
    • Administrator email
    • Administrator password

Development Tab

Control technical settings for troubleshooting and optimization:

  • Debug mode: Three options for error handling

    • Disabled (production sites)
    • Display errors on screen (active development)
    • Log errors to file (troubleshooting live sites)
  • Maintenance mode: Show maintenance notice to visitors

    Can be customized with a custom maintenance.php file in wp-content directory.

  • Cron job scheduler: Enable/disable WordPress task scheduler

    Useful during migrations or when using external cron jobs.

  • Scripts concatenation: Combine JavaScript files

    Improves page load times by reducing HTTP requests.

Command Line Interface

WP Workbench includes a powerful CLI for automating WordPress management through the virtualmin configure-script command.

Below are some examples of how to use the CLI to manage WordPress sites.

System settings

virtualmin configure-script --script-type wordpress --domain example.com --opt 'wp_memory_limit 512M'

WordPress settings

virtualmin configure-script --script-type wordpress --domain example.com --opt 'blogname "My Site Name"'

Plugin management

virtualmin configure-script --script-type wordpress --domain example.com --opt 'plugins activate plugin1,plugin2'

Theme management

virtualmin configure-script --script-type wordpress --domain example.com --opt 'themes update theme1,theme2'

Backup operations

virtualmin configure-script --script-type wordpress --domain example.com --opt 'backup full'

Site cloning

virtualmin configure-script --script-type wordpress --domain example.com --opt 'clone same --dir=wordpress-clone'

For more details just use virtualmin configure-script --script-type wordpress command.

Getting started

  1. Navigate to the WP Workbench in your WordPress management page in “Manage Web Apps”
  2. Select the tab corresponding to the task you want to perform
  3. Make your changes and click “Apply” to save them
  4. Use “Login to WordPress” for direct access to the WordPress admin area