Improving usability for plugin settings

Hi guys,
you might struggle with the same issue as I do:

We’ve installed various plugins with a lot of settings at admin panel. Discourse settings are pretty well grouped by their kind. Plugins not. We can’t say which option belongs to which plugin. I’d like to suggest a little improvement…

Is it possible to expand / collapse plugin specific options like the details view? (collapsed by default)

Some other ideas:

  • altering background color (white / gray / white / …)
  • a thin line between each plugin settings group

In addition to this, I’d like to have some basic information about the plugin on top of each group (1-2 sentences description), latest version and the installed one (date and build version), a link to the offical support site and a link to the plugin author’s site, and if available a shortcut to the docker manager to install updates.

Any thoughts on this?

5 Likes

When you go to /admin/plugins and click on the settings button of a specific plugin, it will filter only the settings for the one you selected.

6 Likes

This is not working e.g. with unofficial plugins like events and locations.

When you click on the settings link for a plugin, it works by filtering the settings based on the plugin name. For example, if you click on the settings for discourse-solved, it will bring you to this URL:

http://forum.example.com/admin/site_settings/category/plugins?filter=solved

This means that any of a plugins settings that cannot be found through that filter will not be displayed. With the discourse-solved plugin, the setting for accept_all_solutions_trust_level is not displayed when you click on the Settings button.

3 Likes

We could probably use a better and more structured solution here @sam.

3 Likes

For starters though we should be more consistent about naming in our plugin site settings. I agree a better structure makes sense here, we can associate the plugin settings with the particular plugin and then always be able to find them regardless of naming.

I really like the idea of allowing you to expand plugin settings directly near the plugin, somewhat similar to how theme settings work.

4 Likes

fAs I understand it, I know of two approaches. One is for a plugin to have its own settings menu under Settings. For a plugins settings to be shown from the Plugins page the settings need to follow the convention of setting names being prefixed with the plugins name.

For example, the setting name for the data explorer plugin begins with “data_explorer_” if it was not so it would not be found from the Plugins page.

I’m guessing the settings are being searched for setting names that begin with the same string as the plugin name. I’m also guessing it would be easiest to make this behavior known to plugin authors and put the onus on them to follow the convention.

Is this settings/filter button meant to be available for each plugin? I only have the one listed here(there’s a few that came pre-installed by default and their settings are listed with this plugins all in /admin/site_settings/category/plugins, there is no clear distinction / separation, I found that very odd.

The only interaction for the /admin/plugins section in the image is to click the plugin link, which takes me to the github repo for the plugin. I’m just concerned how messy/disorganized this can become as more plugins are added by community admins.

While I don’t have a settings link button in my case, based on the URL example @simon provided, I can use openid to filter the results, although that’s not the full name of the plugin and if another had openid perhaps this doesn’t work?(openid-connect changes results from 9 to 1, openid also had 2 results in login settings that were unrelated)

EDIT: openid_connect is the correct value, I think it’s filtering based on these config keys.