-
Notifications
You must be signed in to change notification settings - Fork 100
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
List of compatible Themes and Plugins #667
Comments
It is intended to work with any theme and plugin. There are no specific theme/plugin requirements. |
Okay, then I misunderstood this:
I thought the theme must still enable/make use of this plugin. So I can install this PWA Plugin and PWA will fully work? Maybe this should be clarified. Is there a plan when this will get merged into core? |
Yes, this plugin provides features out of the box, primarily the offline browsing capability.
That's a good question. No ETA. It needs more interest, I'd say. |
Alright, so I tried this plugin on a stagging site. Is there a way to add an install button to the website? Is this a general PWA feature or do you need to create a custom html button? I think it makes sense to give people the chance to hit an on-website button to install the app. Comparing this plugin to the SuperPWA Plugin I noticed, that there is a headline in this app, while superpwa hides this headline. This makes the App look much more like a native app. Can this be configured somehow? Are there any downsites in enabling offline reading mode? What are the consequences? Will content be delivered to google, or is it just a formational flag for the client? Is there a way to flush the offline data when you revisit the site, etc? Maybe a FAQ would be nice :) |
There actually is an FAQ: https://github.com/GoogleChromeLabs/pwa-wp/wiki/FAQ
I think you're referring to the add_filter( 'web_app_manifest', function( $manifest ) {
$manifest['display'] = 'standalone';
return $manifest;
} );
The plugin relies on the browser to prompt the user to install the PWA. It is possible to add an install button on the page, but the plugin doesn't implement that. See How to provide your own in-app install experience.
It's only caching on the client. It's not related to Google in any way. Offline reading mode will enable a “network-first caching strategy” for page visits. This means that when you click on a link, it will first try to get the latest version from the network. If this fails (or it takes longer than the default 2-second timeout), it will use the cached version if available. There is a filter to customize the timeout. So there's not really any downside. The only potential problem is that stale content may be served to users on slow connections, but that is probably what they would want. |
Nice, Nice, Nice! I recommend to add those Answers to the FAQ. Definitely worth it! |
Cool. I've added those to the FAQ. |
Thanks! One more: What is your recommended way to add push notifications to the PWA? Is this also on the roadmap of this plugin, or out of scope? I really like how clean this plugin is, well done! |
I don't have any specific recommendations for push notifications, as this is something that other plugins should provide on top of the PWA plugin. However, there is an a blog post for How to integrate OneSignal with PWA plugin in WordPress. There's also OneSignal/OneSignal-Website-SDK#615 which is about making OneSignal's SDK compatible with the PWA plugin's service worker. |
Given there won’t be an asset scanner in this plugin for now, I figure this is the place to collect notes on compatibility with other plugins for potential inclusion in the FAQ. For sites using a plugin that aggregates CSS/JS files such as Autoptimize, one needs to create an additional caching route for |
@gittehubbard Thanks for pointing this out. This is something we've overlooked in the runtime caching for offline browsing. I've opened #953 to address this. |
Hi,
I just found this plugin, and as far as I understand it is used along with other themes and plugins. Are there any of those already available? I'd like to have a small hint where to start, maybe also put this into the readme?
The text was updated successfully, but these errors were encountered: