Documentation / Premium features
Premium
PWA Builder
Makes the site an installable Progressive Web App: web app manifest with generated icons, a service worker with per-content caching strategies and an offline page, an install banner, and push notifications sent from this server with VAPID keys. Set up under Elementor Extras → All Tools → PWA & Push. Pages for logged-in visitors, the cart, checkout and account pages are never cached.
Where Elementor Extras → All Tools → PWA & Push.
How to use it
- Turn on "Platform: PWA Builder" under Settings → Add-on features. The site must use HTTPS.
- Open PWA & Push, tick "Make this site installable and work offline", check the app name and short name, and choose a square App icon of at least 512 × 512 px (or leave it empty to use the Site Icon).
- Pick the theme and background colors, the display mode and the start page. Optionally design an Offline page in Elementor and select it; otherwise a simple built-in message is shown.
- Choose how pages, styles/scripts and images are cached. The defaults (network first for pages, stale while revalidate for styles and scripts, cache first for images) suit most sites.
- Keep the install banner on, or add your own install button anywhere: give any Elementor button the CSS class ltxe-pwa-install (Advanced → CSS Classes).
- For push notifications, tick "Let visitors subscribe to push notifications" and save; the push keys are created for you. Visitors subscribe with the floating bell or a button with the CSS class ltxe-pwa-push-toggle.
- To send, subscribe on your own device while logged in, use "Only my devices (test)" first, then send to all subscribers. Large lists are sent in the background in batches.
Notes
- Pages shown to logged-in visitors, the WooCommerce cart, checkout and account pages, previews, password-protected pages, wp-admin, login and the REST API are never saved by the service worker. Add your own paths under "Never save these paths".
- Pages that your server or caching plugin marks "Cache-Control: no-store" or "private" are never saved either, so visitors see the offline page instead of a saved copy. If pages are not available offline, check those headers in your host or caching plugin.
- Changing any PWA setting starts a fresh cache in every browser on its next visit. If you switch the app or the lane off, browsers remove the service worker and its saved pages on their next visit.
- On iPhone and iPad there is no install dialog: the banner explains "Share → Add to Home Screen" instead, and push notifications work only once the app is installed (iOS 16.4 or later).
- Notifications only open pages on this site. Messages are encrypted on your server and sent through each browser's own push service (Google, Mozilla, Microsoft or Apple); no push account or API key is needed.
- Only create new push keys if the private key may have leaked: every current subscription stops working.
- Developers: filters landtech_extras/pwa/manifest, landtech_extras/pwa/service_worker_config, landtech_extras/pwa/excluded_paths, landtech_extras/pwa/page_cacheable, landtech_extras/pwa/push_payload and landtech_extras/pwa/push_hosts. Send from code with LandTechExtrasPWAPWA_Push::queue( LandTechExtrasPWAPWA_Push::build_payload( array( 'title' => '…', 'body' => '…', 'url' => '…' ) ) ).