Skip to content

Implement migration logic and UI from old PL modules to new standalone plugins in PL settings screen #652

@felixarntz

Description

@felixarntz

Feature Description

Follow-up to #651: For any site for which the old module slugs are still set in the option for active modules, an additional UI component should be added to the updated PL settings screen to make it easy, yet explicitly intentional, for the admin user to install and activate the respective standalone plugins with a single click.

This will require defining a mapping between the old module slugs and their standalone plugins, so that the plugin can determine where to point the user.

Requirements

  • If any of the module slugs that are already available as standalone plugins are still remaining in the option for active modules, some sort of prompt (e.g. an admin notice) should be displayed on the Settings > Performance screen.
  • The prompt shown on the screen should include:
    • A brief explanation (1-2 sentences) to the user that they have modules activated which will soon be removed from the Performance Lab plugin, and that they need to instead install/activate the relevant standalone plugins
    • A list of which modules are affected (if it's a single module, we could alternatively consider putting it into the floating text, since a list of 1 item is a bit odd)
    • One of the following:
      • If the current user has the install_plugins and activate_plugins capabilities: A primary CTA button (see below) to migrate the active legacy modules to their respective standalone plugins
      • If the current user lacks any of the two capabilities: A CTA message prompting the user to contact an administrator with access to installing/activating plugins
  • When the primary CTA button is clicked, logic (could be implemented with a full page reload/form submission, or AJAX, whatever works best) should be run that:
    • Installs and activates the respective standalone plugins as needed.
    • Deactivates the respective legacy modules.

Metadata

Metadata

Labels

InfrastructureIssues for the overall performance plugin infrastructure[Plugin] Performance LabIssue relates to work in the Performance Lab Plugin only[Type] EnhancementA suggestion for improvement of an existing feature

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions