#7251
closed
defect (bug)
( fixed )
Add a Preview in Playground button to the plugin directory
|
|
|
|
---|---|---|---|
|
|
|
|
|
|
|
|
|
Description
-
Should it simply open a new tab with the playground preview, or something else (popup?) -
Does it need any logic for selecting the WP/PHP version or can we go with the default? -
Should it be available on all plugins, or selectively (eg only those actively maintained, or supporting a recent WP version?) -
What should the landing page of the preview be? (Perhaps /wp-admin/plugins.php ?)
Attachments (8)
Change History (104)
#1
@
13 months ago
-
Keywords needs-design-feedback added -
Owner set to tellyworth -
Status changed from new to accepted
#2
follow-up:
↓ 6
@
13 months ago
#3
@
13 months ago
What should the landing page of the preview be? (Perhaps /wp-admin/plugins.php?)
Does it need any logic for selecting the WP/PHP version or can we go with the default?
#4
@
13 months ago
Should it simply open a new tab with the playground preview, or something else (popup?)
Does it need any logic for selecting the WP/PHP version or can we go with the default?
Should it be available on all plugins, or selectively (eg only those actively maintained, or
What should the landing page of the preview be? (Perhaps /wp-admin/plugins.php?)
#5
@
13 months ago
My initial reaction is all plugins, so that we're not "playing favorites" with the ability to test out a plugin but this is not a hill I would die on and would relent to ones that marked as tested with the latest 3 major releases of WP.
#6
in reply to: ↑ 2 ; follow-up:
↓ 22
@
13 months ago
The question I'm wondering about is how does it retrieve the plugin? Does it download the zip file separately? Or does it get the plugin files from SVN? I'm wondering if this would add any load to the system from getting these files for such a temporary use.
#7
@
13 months ago
It's using downloads.wordpress.org which I assume will be safe from a bandwidth/resource POV. It will probably affect the plugin download stats though. Which is not a blocker but worth some further thought.
#8
@
13 months ago
#9
@
13 months ago
#10
@
12 months ago
#12
@
12 months ago
-
Is there a way to control the previews or for a plugin to detect whether in a preview in any way? Previews for many plugins appear to be broken, especially those that rely on 3rd party API calls for setup. For example, Jetpack Plugin preview doesn't work.
-
While such bugs, etc are being worked out, maybe make it opt-in for plugin authors? Users getting to broken previews are likely counterproductive.
-
This is a huge change :) Very welcome upgrade once things are running properly. An announcement post would be helpful.
-
Having the option to be able to specify an override Preview link in the Plugin Readme would be helpful!
#13
follow-up:
↓ 20
@
12 months ago
#14
@
12 months ago
#15
follow-up:
↓ 16
@
12 months ago
#16
in reply to: ↑ 15 ; follow-up:
↓ 17
@
12 months ago
Can we have a field in the Readme that allows us to specify a Live Demo link that overrides the link to Playground. It’s helpful if we have our own demos set up as currently this won’t work for addon plugins or where plugins need content to work effectively and give a good user experience.
#17
in reply to: ↑ 16
@
12 months ago
Replying to Ajay :
Can we have a field in the Readme that allows us to specify a Live Demo link that overrides the link to Playground. It’s helpful if we have our own demos set up as currently this won’t work for addon plugins or where plugins need content to work effectively and give a good user experience.
I thought about this before as well. Specifically in something like a playground.php, this would allow to show or not content for Playground and that this content can be different from the "index.php". Does it make sense?
#18
@
12 months ago
-
Isn't going to know this is a new feature. -
Won't have patience if something is broken. -
Will assume that it's a problem with the plugin and not with the directory or the playground.
#19
follow-up:
↓ 43
@
12 months ago
currently this won’t work for addon plugins
#20
in reply to: ↑ 13
@
12 months ago
Currently users get a broken experience when trying out plugins that, for example, require the mbstring extension.
#21
@
12 months ago
#22
in reply to: ↑ 6 ; follow-up:
↓ 69
@
12 months ago
It's using
downloads.wordpress.org which I assume will be safe from a bandwidth/resource POV. It will probably affect the plugin download stats though. Which is not a blocker but worth some further thought.
#23
@
12 months ago
#24
@
12 months ago
-
A lot of plugins require another plugin to be active, such as all WooCommerce extensions. -
Similarly, a lot of plugins require some sort of base setup (or WP settings to be active) to function properly. -
When someone clicks "preview", do they expect to see the WP admin, or do they expect to see a demo site showing plugin features?
-
Do not show a link (opt-out). -
Show a link pointing to the playground. -
Show a link pointing to a demo site hosted by the developer.
#25
@
12 months ago
#26
@
12 months ago
#27
@
12 months ago
#28
@
12 months ago
This ticket was mentioned in Slack in #meta by ipstenu. View the logs .
12 months ago
#30
@
12 months ago
#31
@
12 months ago
#32
@
12 months ago
#33
follow-up:
↓ 37
@
12 months ago
with [SERVER_NAME] => playground.wordpress.net and[SERVER_SOFTWARE] => PHP.wasm
#34
@
12 months ago
For instance, the PDF Invoices & Packing Slips for WooCommerce plugin requires WooCommerce activated, but also you would need to have the store configured and with dummy products,
#35
@
12 months ago
-
make this opt-in, or at least opt-out. -
provide a way to load dependencies. Eg. WooCommerce extensions need WooCommerce installed. -
Let developers choose the preview link. They may want to use an external preview server with more control over the preview experience.
#36
@
12 months ago
#37
in reply to: ↑ 33
@
12 months ago
...But the release should be pulled, the OPT In implemented and the alternate link implemented.
I'm surprised that no action to revert has been taken. This needs to be a the first damage limitation action.
#38
@
12 months ago
-
Contact Form 7 you can build a form but it hangs -
Elementor fails on loading its wizard -
Yoast fails on loading its wizard
#39
@
12 months ago
Proposal
Work with Plugin Team
-
It won’t work for add-on plugins (like things for Woo) because we can't tell what plugins depend on others, and the sandbox won’t know to install the ‘parent’ plugin -
It won’t work well for things that need a lot of custom changes (like WooCommerce itself) -
It won’t work AT ALL for anything that connects to servers (like Memcached, Redis, etc). -
Multisite
Reach Out to the Plugin Extender Ecosystem
Work with Marketing Team
Pre-Launch Testing
Documentation
Put into Action
Meta
Plugins
Marketing
Additional Insights
-
Landing Page : Adopt a dynamic landing page approach - direct users to the plugin configuration page if available, else to /wp-admin/plugins.php . -
WP/PHP Version Logic : Utilize the current WP version and the recommended PHP version for better performance and compatibility. -
Plugin Inclusion : Include all plugins to avoid favoritism, with an opt-out mechanism for those incompatible with the Playground. -
Download Mechanism : Implement a URL parameter to prevent the Playground downloads from affecting the plugin download statistics. -
Button Implementation : Commend the initial implementation of the simple button, while encouraging further refinements to allow customization by plugin developers for enhanced user experience.
Suggested Action
#40
@
12 months ago
direct users to the plugin configuration page if available
#41
@
12 months ago
#42
@
12 months ago
#43
in reply to: ↑ 19
@
12 months ago
currently this won’t work for addon plugins
Could the plugin dependency feature maybe solve this?
https://core.trac.wordpress.org/ticket/22316
cc: @afragen
@
12 months ago
#45
follow-up:
↓ 48
@
12 months ago
This ticket was mentioned in Slack in #meta by dufresnesteven. View the logs .
12 months ago
#47
@
12 months ago
-
Know about the change in the first place. -
Log in. -
Set the toggle.
#48
in reply to: ↑ 45
@
12 months ago
I want to note that this feature (and the opt-out) is simply for the Live Preview button which takes you to the Playground.
#49
@
12 months ago
#51
@
12 months ago
#53
@
12 months ago
#54
@
12 months ago
#55
@
12 months ago
#56
@
12 months ago
A readme tag "has-preview" should be enough there to enable such a button.
A lot of plugins are extensions of other plugins so they won't work out of the box.
Yep, and with a "plugin.json", you can define the configuration of such so installation wizards and similar are skipped (at least for other plugins).
it could install WooCommerce on the preview of plugins which are WooCommerce extensions.
They should allow plugin authors to upload custom url for live preview button so that we can use url parameters to install dependency like - ?plugin=elementor&plugin=elementor-addon-namr&theme=hello
I have plugins for bbPress; if you run preview, nothing happens since bbPress is missing. Even if bbPress is active, it is empty, there is nothing to show. Without plugin requirements, Preview can't install required plugins. Without demo data, users have nothing to see.
#57
@
12 months ago
#58
@
12 months ago
#59
@
12 months ago
#60
@
12 months ago
This ticket was mentioned in Slack in #meta by aurooba. View the logs .
12 months ago
#62
follow-ups:
↓ 64
↓ 67
@
12 months ago
#63
@
12 months ago
#64
in reply to: ↑ 62
@
12 months ago
What fun and challenge here. This stuff is hard, and thanks everyone for both making this possible and for everyone who highlighted its impact on yourselves and others.
@tellyworth I wonder if we could look for something like
registry-preview-blueprints.json in a plugin’s root dir, and if it exists, link it to the button. That way, there’s no need to toggle a setting in an admin panel; the opt-in is someone choosing how they want to present their plugin. What do you all think about that idea?
#65
@
12 months ago
#66
@
12 months ago
#67
in reply to: ↑ 62
@
12 months ago
@tellyworth I wonder if we could look for something like
registry-preview-blueprints.json in a plugin’s root dir
#68
follow-up:
↓ 70
@
12 months ago
#69
in reply to: ↑ 22
@
12 months ago
Add
nostats=1 to the URL to not count in downloads.
#70
in reply to: ↑ 68 ; follow-up:
↓ 71
@
12 months ago
@tellyworth Can there be a way to enable 3rd party API calls? For example, Jetpack plugin needs to make a 3rd party call to setup. Currently, it doesn't appear to be able to setup in Playground.
-
Blueprint support should allow configuring ready-to-go demo content in live previews based on Playground. -
Plugins ought to gracefully degrade in a situation where an external network or API is unavailable. (This goes beyond Playground: people test plugins locally and on staging sites; and even in prod network connectivity may be limited or lost at times)
#71
in reply to: ↑ 70
@
12 months ago
Replying to jeffparker :
Two, there's the question of how plugins that require network access should present themselves to the user when newly installed. My sense is that this needs to be solved with a combination of things:
Blueprint support should allow configuring ready-to-go demo content in live previews based on Playground. Plugins ought to gracefully degrade in a situation where an external network or API is unavailable. (This goes beyond Playground: people test plugins locally and on staging sites; and even in prod network connectivity may be limited or lost at times)
#72
@
12 months ago
-
With a checkbox on playground.wordpress.net, -
With a query param ? php-extension-bundle=kitchen-sink -
Via the new Blueprint option "phpExtensionBundles": [ "kitchen-sink" ]
This ticket was mentioned in Slack in #meta by courtneyengle. View the logs .
11 months ago
#87
@
10 months ago
#89
@
10 months ago