-
-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Design: Dependency installation #3
Comments
Other thoughts? |
Pervious design review by @paaljoachim WordPress/wordpress-develop#1724 (comment) |
Walking through the current process.I am also including my thought process. I have made a sample plugin that has two plugin dependencies: WooCommerce and Gutenberg. Uploading Sample plugin and clicking Install Now. Should there be a sentence below "Plugin installed successfully" text which mentions that this plugin has dependencies? I click to Activate Plugin. It gives a non intrusive overview. One line telling that that there are dependencies (requirements) I need to deal with to be able to use the Sample plugin. What happens if I click Activate under the Sample plugin? Clicking Go to the Dependencies install page link. I initially did not know where it would lead me. After clicking it the first time and going to Add New Dependencies tab. I thought aha this seems like a good way to handle required plugins. As these are plugins that are needed to be installed for the Sample plugin to work. Having the Dependencies tab in the Add New plugins screen feels right. It creates a good association with what the Add Plugins screen is about. EDIT 11 April (Updated the screenshot. It now shows Required by: Sample): My conclusion from looking at the user interface flow is that it integrates tightly with the current WordPress user interface. It is non intrusive, gives the exact information needed and guides the user in how to install the required (dependencies) plugins. |
The dependencies page imo needs a way to indicate the installed dependants requiring the displayed plugins |
@justlevine not sure I understand. The Dependencies tab contains all the dependencies and the plugin card of each dependency tells what plugin requires it. Some of the above images were taken when the filter was not in place. |
I found this single notice confusing for a few reasons:
My first thought was to clarify the notice and place it near the plugin with the requirements. This feels more informative and helpful, but as its not at the top of the page it might be harder to see. It also could lead to a scenario with multiple notices when there are multiple plugins with missing requirements — I don’t think this scenario will be very common, so I only mention it as an edge-case. -- Another option that came to mind was to simply list required plugins at the top of the Installed Plugins screen. -- Its also possible that we could avoid the need for notices or extra installation steps by introducing some friction to the beginning flow. For example, perhaps we display a dialog before the flow begins. This dialog would inform the user about the need for additional plugins and enforce installing all requirements, redirecting users to the Installed Plugins screen when complete. |
The idea for a single admin notice was for simplification and not having an admin notice for each dependency, as this would quickly result in admin notice hell. 👿 The notice informs the user that there are plugin dependencies and the link takes the user to the page displaying all the plugin dependencies, what they are dependencies for, and the ability to install and activate them. The plugins page lists both the dependencies and the requiring plugins in each appropriate plugin row. Mixing the functions of each page, plugins.php and install-plugin.php, will be challenging. I'm not certain of the benefit, but I'm very open to discussion. |
In order to something like this to happen, the |
Thanks for the great work on this! I am new to contributing, so apologies if this is not in the proper place or format. In my testing of this plugin and reading through some of the history, it occurred to me that the UI could be treated akin to how WordPress handles the 'Requires PHP' header (i.e. when the PHP version requirement is not met):
In the current implementation, the user can create an error either by Bulk selecting, or clicking the Activate link. This error directs them to the new Dependencies tab on plugin-install.php. My suggestion would be to eliminate the need for the error message by removing these actions when the dependency is not met: The Dependencies tab is a nice summary, but I think the user could be kept on plugins.php by offering them information about the plugin using a "More Details" modal borrowed from plugin-install.php. This also has the Install Now button: Advantages
|
@morehawes I really like some of the above. What do you think of this? |
I think that is a very good idea @afragen ! As it strengthens the message that this specific plugin has dependencies and one can quickly also see which plugins it also requires. |
Good additions and subtractions, I like it. |
Now in v1.1.0 https://wordpress.org/plugins/wp-plugin-dependencies/ |
How do we want to display and install these plugin dependencies? Each of the PRs has opinions about how this should happen.
The text was updated successfully, but these errors were encountered: