PWA

설명

Progressive Web Apps are user experiences that have the reach of the web, and are:

  • Reliable – Load instantly and never show the downasaur, even in uncertain network conditions.
  • Fast – Respond quickly to user interactions with silky smooth animations and no janky scrolling.
  • Engaging – Feel like a natural app on the device, with an immersive user experience.

This new level of quality allows Progressive Web Apps to earn a place on the user’s home screen.

Continue reading more about Progressive Web Apps (PWA) from Google.

In general a PWA depends on the following technologies to be available:

This plugin serves as a place to implement support for these in WordPress with the intention of being proposed for core merge, piece by piece.

This feature plugin is not intended to obsolete the other plugins and themes which turn WordPress sites into PWAs. Rather, this plugin is intended to provide the PWA building blocks and coordination mechanism for these themes and plugins to not reinvent the wheel and also to not conflict with each other. For example, a theme that implements the app shell model should be able to extend the core service worker while a plugin that provides push notifications should be able to do the same. Themes and plugins no longer should have to each create a service worker on their own, something which is inherently problematic because only one service worker can be active at a time: only one service worker can win. If you are developing a plugin or theme that includes a service worker, consider relying on this PWA plugin, or at least only use the built-in implementation as a fallback for when the PWA plugin is not available.

Documentation for the plugin can be found on the GitHub project Wiki.

Development of this plugin is done on GitHub. Pull requests welcome. Please see issues reported there before going to the plugin forum.

FAQ

Please see the frequently asked questions on the GitHub project wiki. Don’t see an answer to your question? Please search the support forum to see if someone has asked your question. Otherwise, please open a new support topic.

후기

2020년 July 6일
The plugin helped me to convert my blog in a PWA, only the short_name was an issue and fixed using the small plugin to include an extra field.
2020년 May 30일
I've been baking this into my themes and boilerplate manually for a while now. I'm stoked to see this on it's way to the core of WordPress. Thank you for your contributions!
2020년 January 24일
I believe PWAs are the future of mobile, I am using this plugin as well as the Drupal PWA module on 3 different sites/apps currently. I like how this uses Workbox and wondering when will support for background sync be included. Very useful and customizable plugin as it is.
2019년 October 10일
Biggest speed improvement is when I added navigation pre-load filter: add_filter( 'wp_service_worker_navigation_caching_strategy', function() { return WP_Service_Worker_Caching_Routes::STRATEGY_STALE_WHILE_REVALIDATE; } ); add_filter( 'wp_service_worker_navigation_caching_strategy_args', function( $args ) { $args['cacheName'] = 'pages'; $args['plugins']['expiration']['maxEntries'] = 50; return $args; } ); Resulting in sub 200ms page load time! I'm also using it to cache images, css, js. Easy to update manifest as well through filter: function get_manifest_update( $manifest ) { /* $manifest = array( 'name' => wp_kses_decode_entities( get_bloginfo( 'name' ) ), 'start_url' => home_url( '/' ), 'display' => 'minimal-ui', 'dir' => is_rtl() ? 'rtl' : 'ltr', ); */ // Add argument to $manifest array $manifest['start_url'] .= 'en/page/support/'; $manifest['short_name'] = 'My App'; $manifest['name'] = 'Full name of app'; return $manifest; } add_filter( 'web_app_manifest', 'get_manifest_update' ); Hopefully this will be added to WP core soon! Thanks for making it easy to implement service workers with hooks as well, great way to introduce Devs to PWA!
모든 11 평가 읽기

기여자 & 개발자

“PWA”(은)는 오픈 소스 소프트웨어입니다. 다음의 사람들이 이 플러그인에 기여하였습니다.

기여자

“PWA”(이)가 5(으)로 번역되었습니다. 기여해 주셔서 번역자님께 감사드립니다.

자국어로 “PWA”(을)를 번역하십시오.

개발에 관심이 있으십니까?

코드 탐색하기는, SVN 저장소를 확인하시거나, 개발 기록RSS로 구독하십시오.

변경이력

For the plugin’s changelog, please see the Releases page on GitHub.