Make WordPress Core

Opened 3 years ago

Closed 3 years ago

Last modified 2 years ago

#53990 closed enhancement (fixed)

Show a notice for incompatible plugins on the Plugins screen

Reported by: sergeybiryukov's profile SergeyBiryukov Owned by: sergeybiryukov's profile SergeyBiryukov
Milestone: 5.9 Priority: normal
Severity: normal Version:
Component: Plugins Keywords: has-patch has-screenshots needs-docs
Focuses: ui, administration Cc:

Description

Background: #43986, #43992.

In a discussion with @TacoVerdo we noticed that while a plugin incompatible with the installed WordPress or PHP version cannot be activated (as expected), the user experience could be improved.

Currently, incompatible plugins cannot be installed from the Plugin Directory as of [43436] / #43986, but if you happen to install such a plugin manually, there is nothing on the Plugins screen that would show its compatibility status. Clicking on the Activate link would just display a wp_die() screen with an error message.

If a plugin does not work with the installed WordPress or PHP version, the Activate button should be disabled, and an appropriate notice should be displayed with a link to the documentation.

This is a follow-up to [43436] / #43986, [44978] / #43992, and similar changes for themes in #48491 and #48507.

Attached is a patch that handles this for the Plugins screen and the Add Plugins screen (disabling the Activate button for incompatible plugins that are already installed).

Attachments (8)

53990.error.png (4.3 KB) - added by SergeyBiryukov 3 years ago.
53990.diff (9.7 KB) - added by SergeyBiryukov 3 years ago.
53990.alt.diff (9.2 KB) - added by SergeyBiryukov 3 years ago.
53990.plugins-screen-before.2.png (24.8 KB) - added by SergeyBiryukov 3 years ago.
53990.plugins-screen-after.png (26.9 KB) - added by SergeyBiryukov 3 years ago.
53990.2.diff (8.5 KB) - added by SergeyBiryukov 3 years ago.
53990.plugins-screen-after.2.png (29.9 KB) - added by SergeyBiryukov 3 years ago.
53990.3.diff (9.9 KB) - added by SergeyBiryukov 3 years ago.

Download all attachments as: .zip

Change History (16)

@SergeyBiryukov
3 years ago

#1 @SergeyBiryukov
3 years ago

53990.diff includes a new .incompatible CSS class for plugin rows to make sure the notice styling matches the one we have for plugin updates, see 53990.plugins-screen-after.png.

53990.alt.diff just reuses the existing .update CSS class for that, which may or may not be cleaner. I don't have a strong preference yet at this point :)

This ticket was mentioned in Slack in #polyglots by tobifjellner. View the logs.


3 years ago

#3 @SergeyBiryukov
3 years ago

53990.2.diff makes the icon consistent with the one for "There is a new version of ... available, but it doesn't work with your version of PHP" message.

#4 @SergeyBiryukov
3 years ago

53990.3.diff also displays the Network Activate button on network admin Plugins screen.

Version 0, edited 3 years ago by SergeyBiryukov (next)

#5 @SergeyBiryukov
3 years ago

  • Owner set to SergeyBiryukov
  • Resolution set to fixed
  • Status changed from new to closed

In 51678:

Plugins: Display a message on Plugins list table if a plugin requires a higher version of PHP or WordPress.

Installation and activation of incompatible plugins was previously disallowed in [43436] and [44978], but if such a plugin was installed manually, there was nothing on the Plugins screen that would show its compatibility status.

Showing an appropriate notice with a documentation link makes the UI more consistent and improves user experience.

Follow-up to [43436], [44937], [44939], [44978], [45043], [45165], [45546], [47573], [47816], [47819], [48172], [48636], [48637], [48638], [48640], [48652], [48653], [48654], [48660].

Props TacoVerdo, SergeyBiryukov.
Fixes #53990.

This ticket was mentioned in Slack in #hosting-community by crixu. View the logs.


2 years ago

This ticket was mentioned in Slack in #hosting-community by jadonn. View the logs.


2 years ago

#8 @audrasjb
2 years ago

  • Keywords needs-docs added

This ticket will probably need some Docs updates.

Note: See TracTickets for help on using tickets.