{"id":138235,"date":"2021-03-18T20:57:04","date_gmt":"2021-03-18T20:57:04","guid":{"rendered":"https:\/\/pl.wordpress.org\/plugins\/iworks-pwa\/"},"modified":"2025-09-01T09:45:12","modified_gmt":"2025-09-01T09:45:12","slug":"iworks-pwa","status":"publish","type":"plugin","link":"https:\/\/sa.wordpress.org\/plugins\/iworks-pwa\/","author":1014234,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.7.8","stable_tag":"1.7.8","tested":"6.8.5","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"PWA \u2014 easy way to Progressive Web App","header_author":"Marcin Pietrzak","header_description":"PWA plugin, handle \/manifest.json and basic offline worker.","assets_banners_color":"9b9e9e","last_updated":"2025-09-01 09:45:12","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/ko-fi.com\/iworks?utm_source=iworks-pwa&utm_medium=readme-donate","header_plugin_uri":"https:\/\/github.com\/iworks\/iworks-pwa","header_author_uri":"http:\/\/iworks.pl\/","rating":4.8,"author_block_rating":0,"active_installs":2000,"downloads":56705,"num_ratings":26,"support_threads":1,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.0.1":{"tag":"0.0.1","author":"iworks","date":"2024-02-24 09:55:59"},"0.0.2":{"tag":"0.0.2","author":"iworks","date":"2024-02-24 09:55:59"},"1.0.0":{"tag":"1.0.0","author":"iworks","date":"2024-03-13 08:46:16"},"1.1.0":{"tag":"1.1.0","author":"iworks","date":"2024-03-13 08:46:16"},"1.1.1":{"tag":"1.1.1","author":"iworks","date":"2024-03-13 08:46:16"},"1.1.2":{"tag":"1.1.2","author":"iworks","date":"2024-03-13 08:46:16"},"1.1.3":{"tag":"1.1.3","author":"iworks","date":"2024-03-13 08:46:16"},"1.1.4":{"tag":"1.1.4","author":"iworks","date":"2024-03-13 08:46:16"},"1.1.5":{"tag":"1.1.5","author":"iworks","date":"2024-03-13 08:46:16"},"1.1.6":{"tag":"1.1.6","author":"iworks","date":"2024-03-13 08:46:16"},"1.2.0":{"tag":"1.2.0","author":"iworks","date":"2024-03-13 08:46:16"},"1.2.1":{"tag":"1.2.1","author":"iworks","date":"2024-03-13 08:46:16"},"1.2.2":{"tag":"1.2.2","author":"iworks","date":"2024-03-13 08:46:16"},"1.2.3":{"tag":"1.2.3","author":"iworks","date":"2024-03-13 08:46:16"},"1.3.0":{"tag":"1.3.0","author":"iworks","date":"2024-03-13 08:46:16"},"1.3.1":{"tag":"1.3.1","author":"iworks","date":"2024-03-13 08:46:16"},"1.3.2":{"tag":"1.3.2","author":"iworks","date":"2024-03-13 08:46:16"},"1.3.3":{"tag":"1.3.3","author":"iworks","date":"2024-03-13 08:46:16"},"1.4.0":{"tag":"1.4.0","author":"iworks","date":"2024-03-13 08:46:16"},"1.4.1":{"tag":"1.4.1","author":"iworks","date":"2024-03-13 08:46:16"},"1.4.2":{"tag":"1.4.2","author":"iworks","date":"2024-03-13 08:46:16"},"1.4.3":{"tag":"1.4.3","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.0":{"tag":"1.5.0","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.1":{"tag":"1.5.1","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.2":{"tag":"1.5.2","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.3":{"tag":"1.5.3","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.4":{"tag":"1.5.4","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.5":{"tag":"1.5.5","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.6":{"tag":"1.5.6","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.7":{"tag":"1.5.7","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.8":{"tag":"1.5.8","author":"iworks","date":"2024-03-13 08:46:16"},"1.5.9":{"tag":"1.5.9","author":"iworks","date":"2024-05-17 10:00:07"},"1.6.0":{"tag":"1.6.0","author":"iworks","date":"2024-07-04 06:55:50"},"1.6.1":{"tag":"1.6.1","author":"iworks","date":"2024-08-21 06:43:10"},"1.6.2":{"tag":"1.6.2","author":"iworks","date":"2024-08-26 06:06:11"},"1.6.3":{"tag":"1.6.3","author":"iworks","date":"2024-09-16 10:03:07"},"1.6.4":{"tag":"1.6.4","author":"iworks","date":"2024-10-01 18:13:08"},"1.6.5":{"tag":"1.6.5","author":"iworks","date":"2024-11-20 13:17:17"},"1.6.6":{"tag":"1.6.6","author":"iworks","date":"2024-12-06 20:10:16"},"1.6.7":{"tag":"1.6.7","author":"iworks","date":"2024-12-09 09:42:53"},"1.6.8":{"tag":"1.6.8","author":"iworks","date":"2024-12-31 10:10:19"},"1.6.9":{"tag":"1.6.9","author":"iworks","date":"2025-03-09 17:34:28"},"1.7.0":{"tag":"1.7.0","author":"iworks","date":"2025-03-13 12:51:49"},"1.7.1":{"tag":"1.7.1","author":"iworks","date":"2025-05-05 11:16:16"},"1.7.2":{"tag":"1.7.2","author":"iworks","date":"2025-05-14 15:59:01"},"1.7.3":{"tag":"1.7.3","author":"iworks","date":"2025-05-15 04:50:40"},"1.7.4":{"tag":"1.7.4","author":"iworks","date":"2025-05-27 15:49:45"},"1.7.5":{"tag":"1.7.5","author":"iworks","date":"2025-05-29 08:56:55"},"1.7.6":{"tag":"1.7.6","author":"iworks","date":"2025-07-22 04:35:22"},"1.7.7":{"tag":"1.7.7","author":"iworks","date":"2025-07-23 05:24:46"},"1.7.8":{"tag":"1.7.8","author":"iworks","date":"2025-09-01 09:45:12"}},"upgrade_notice":[],"ratings":{"1":1,"2":0,"3":0,"4":0,"5":25},"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":2498996,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500-rtl.jpg":{"filename":"banner-1544x500-rtl.jpg","revision":2499268,"resolution":"1544x500","location":"assets","locale":""},"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":2499268,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250-rtl.jpg":{"filename":"banner-772x250-rtl.jpg","revision":2499268,"resolution":"772x250","location":"assets","locale":""},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":2499268,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3353767,"resolution":false,"location":"assets","locale":"","contents":"{\"landingPage\":\"\\\/wp-admin\\\/options-general.php?page=iworks_pwa_index\",\"preferredVersions\":{\"php\":\"latest\",\"wp\":\"latest\"},\"phpExtensionBundles\":[\"kitchen-sink\"],\"features\":{\"networking\":true},\"steps\":[{\"step\":\"login\",\"username\":\"admin\",\"password\":\"password\"},{\"step\":\"installPlugin\",\"pluginZipFile\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"iworks-pwa\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["0.0.1","0.0.2","1.0.0","1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.1.5","1.1.6","1.2.0","1.2.1","1.2.2","1.2.3","1.3.0","1.3.1","1.3.2","1.3.3","1.4.0","1.4.1","1.4.2","1.4.3","1.5.0","1.5.1","1.5.2","1.5.3","1.5.4","1.5.5","1.5.6","1.5.7","1.5.8","1.5.9","1.6.0","1.6.1","1.6.2","1.6.3","1.6.4","1.6.5","1.6.6","1.6.7","1.6.8","1.6.9","1.7.0","1.7.1","1.7.2","1.7.3","1.7.4","1.7.5","1.7.6","1.7.7","1.7.8"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":2704581,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":2704581,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":2704581,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":2666940,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":2704581,"resolution":"5","location":"assets","locale":""},"screenshot-6.png":{"filename":"screenshot-6.png","revision":2704581,"resolution":"6","location":"assets","locale":""}},"screenshots":{"1":"General configuration.","2":"Generic configuration.","3":"Apple configuration.","4":"Microsoft configuration.","5":"Installation app on Android.","6":"Shortcuts menu on Android.","7":"Experimental features."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[154844,2323,151827,77057],"plugin_category":[59],"plugin_contributors":[77824],"plugin_business_model":[],"class_list":["post-138235","plugin","type-plugin","status-publish","hentry","plugin_tags-manifest-json","plugin_tags-offline","plugin_tags-progressive-web-application","plugin_tags-pwa","plugin_category-utilities-and-tools","plugin_contributors-iworks","plugin_committers-iworks"],"banners":{"banner":"https:\/\/ps.w.org\/iworks-pwa\/assets\/banner-772x250.jpg?rev=2499268","banner_2x":"https:\/\/ps.w.org\/iworks-pwa\/assets\/banner-1544x500.jpg?rev=2499268","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/iworks-pwa\/assets\/icon.svg?rev=2498996","icon":"https:\/\/ps.w.org\/iworks-pwa\/assets\/icon.svg?rev=2498996","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/iworks-pwa\/assets\/screenshot-1.png?rev=2704581","caption":"General configuration."},{"src":"https:\/\/ps.w.org\/iworks-pwa\/assets\/screenshot-2.png?rev=2704581","caption":"Generic configuration."},{"src":"https:\/\/ps.w.org\/iworks-pwa\/assets\/screenshot-3.png?rev=2704581","caption":"Apple configuration."},{"src":"https:\/\/ps.w.org\/iworks-pwa\/assets\/screenshot-4.png?rev=2666940","caption":"Microsoft configuration."},{"src":"https:\/\/ps.w.org\/iworks-pwa\/assets\/screenshot-5.png?rev=2704581","caption":"Installation app on Android."},{"src":"https:\/\/ps.w.org\/iworks-pwa\/assets\/screenshot-6.png?rev=2704581","caption":"Shortcuts menu on Android."}],"raw_content":"<!--section=description-->\n<p>Progressive Web Apps (PWA) is a technology that combines the best of mobile web and the best of mobile apps to create a superior mobile web experience. They are installed on the phone like a normal app (web app) and can be accessed from the home screen.<\/p>\n\n<p>Users can come back to your website by launching the app from their home screen and interact with your website through an app-like interface. Your return visitors will experience almost-instant loading times and enjoy the great performance benefits of your PWA!<\/p>\n\n<p>iWorks PWA makes it easy for you to convert your WordPress website into a Progressive Web App instantly!<\/p>\n\n<p>Once this plugin is installed, users browsing your website from a supported mobile device will see a \u201cAdd To Home Screen\u201d notice (from the bottom of the screen) and will be able to \u2018install your website\u2019 on the home screen of their device.<\/p>\n\n<p>iWorks PWA allow to add shortcuts for context menu to be displayed by the operating system when a user engages with the web app's icon.<\/p>\n\n<p>iWorks PWA is easy to configure, it takes less than a minute to set-up your Progressive Web App!<\/p>\n\n<h4>See room for improvement?<\/h4>\n\n<p>Great! There are several ways you can get involved to help make PWA \u2014 easy way to Progressive Web App better:<\/p>\n\n<ol>\n<li><strong>Report Bugs:<\/strong> If you find a bug, error or other problem, please report it! You can do this by <a href=\"https:\/\/wordpress.org\/support\/plugin\/iworks-pwa\/\">creating a new topic<\/a> in the plugin forum. Once a developer can verify the bug by reproducing it, they will create an official bug report in GitHub where the bug will be worked on.<\/li>\n<li><strong>Suggest New Features:<\/strong> Have an awesome idea? Please share it! Simply <a href=\"https:\/\/wordpress.org\/support\/plugin\/iworks-pwa\/\">create a new topic<\/a> in the plugin forum to express your thoughts on why the feature should be included and get a discussion going around your idea.<\/li>\n<li><strong>Issue Pull Requests:<\/strong> If you're a developer, the easiest way to get involved is to help out on <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\">issues already reported<\/a> in GitHub. Be sure to check out the <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/blob\/master\/contributing.md\">contributing guide<\/a> for developers.<\/li>\n<\/ol>\n\n<p>Thank you for wanting to make PWA \u2014 easy way to Progressive Web App better for everyone!<\/p>\n\n<p>The \"PWA \u2014 easy way to Progressive Web App\" plugin is available also on <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\">GitHub<\/a>.<\/p>\n\n<!--section=installation-->\n<p>There are 3 ways to install this plugin:<\/p>\n\n<h4>1. The super easy way<\/h4>\n\n<ol>\n<li>In your Admin, go to menu Plugins &gt; Add.<\/li>\n<li>Search for <code>iWorks PWA<\/code>.<\/li>\n<li>Click to install.<\/li>\n<li>Activate the plugin.<\/li>\n<li>A new menu <code>PWA<\/code> in <code>Settings<\/code> will appear in your Admin.<\/li>\n<li>A new location <code>PWA Shortcuts Menu<\/code> in <code>Display location<\/code> will appear in Appearance -&gt; Menu.<\/li>\n<\/ol>\n\n<h4>2. The easy way<\/h4>\n\n<ol>\n<li>Download the plugin (.zip file) on the right column of this page.<\/li>\n<li>In your Admin, go to menu Plugins &gt; Add.<\/li>\n<li>Select button <code>Upload Plugin<\/code>.<\/li>\n<li>Upload the .zip file you just downloaded.<\/li>\n<li>Activate the plugin.<\/li>\n<li>A new menu <code>PWA<\/code> in <code>Settings<\/code> will appear in your Admin.<\/li>\n<li>A new location <code>PWA Shortcuts Menu<\/code> in <code>Display location<\/code> will appear in Appearance -&gt; Menu.<\/li>\n<\/ol>\n\n<h4>3. The old and reliable way (FTP)<\/h4>\n\n<ol>\n<li>Upload <code>iworks-pwa<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>A new menu <code>PWA<\/code> in <code>Settings<\/code> will appear in your Admin.<\/li>\n<li>A new location <code>PWA Shortcuts Menu<\/code> in <code>Display location<\/code> will appear in Appearance -&gt; Menu.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='how%20can%20i%20translate%20manifest.json%20values%3F'><h3>How can I translate manifest.json values?<\/h3><\/dt>\n<dd><p>It is only possible with WPML package.<\/p>\n\n<ol>\n<li>Install and activate <code>WPML Multilingual CMS<\/code> and <code>WPML String Translation<\/code> plugins.<\/li>\n<li>Save <code>manifest.json<\/code> data on <code>WP Admin<\/code> -&gt; <code>Settings<\/code> -&gt; <code>WPA<\/code>.<\/li>\n<li>Open <code>WP Admin<\/code> -&gt; <code>WPML<\/code> -&gt; String translation`.<\/li>\n<li>Select domain <code>iworks-pwa<\/code>.<\/li>\n<li>Translate strings.<\/li>\n<\/ol><\/dd>\n<dt id='how%20can%20i%20add%20a%20context%20menu%3F'><h3>How can I add a context menu?<\/h3><\/dt>\n<dd><p>The shortcuts member defines an array of shortcuts or links to key tasks or pages within a web app. A user agent can use these values to assemble a context menu to be displayed by the operating system when a user engages with the web app's icon.<\/p>\n\n<ol>\n<li>Install <a href=\"https:\/\/wordpress.org\/plugins\/menu-icons\/\">Menu Icons by ThemeIsle<\/a> plugin.<\/li>\n<li>Go to WPA -&gt; Appearance -&gt; Menu.<\/li>\n<li>Open \"Menu Icon Setting\" from the \"Add menu items\" column (it should be on the bottom).<\/li>\n<li>Be sure you have \"Image\" checked.<\/li>\n<li>Create a custom menu and set \"Display location\" to \"PWA Shortcuts Menu\".<\/li>\n<li>Add item.<\/li>\n<li>Select icon - it is recommended that you use a single 192x192 pixel icon.<\/li>\n<li>Save the menu.<\/li>\n<\/ol><\/dd>\n<dt id='what%20is%20%22add%20to%20home%20screen%22%3F'><h3>What is \"Add to Home screen\"?<\/h3><\/dt>\n<dd><p>Add to Home screen (or A2HS for short) is a feature available in modern browsers that allows a user to \"install\" a web app, ie. add a shortcut to their Home screen representing their favourite web app (or site) so they can subsequently access it with a single tap.<\/p>\n\n<p>A2HS is supported in all mobile browsers, except iOS web view. It's also supported in some Chromium desktop browsers.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<p>Project maintained on GitHub at <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\">iworks\/iworks-pwa<\/a>.<\/p>\n\n<h4>1.7.8 (2025-09-01)<\/h4>\n\n<ul>\n<li><strong>Dependencies<\/strong>: Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 3.0.8.<\/li>\n<li><strong>Bug Fix<\/strong>: Fixed an issue with emppty WP_Screen object. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/symington\/\">symington<\/a>.<\/li>\n<\/ul>\n\n<h4>1.7.7 (2025-07-23)<\/h4>\n\n<ul>\n<li><strong>Bug Fix<\/strong>: Fixed an issue with the <code>INPUT_GET<\/code> which was use as variable not constant. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/18\">#18<\/a>. Props for <a href=\"https:\/\/github.com\/zach-adams\">Zach Adams<\/a>.<\/li>\n<li><strong>New<\/strong>: Added experimental feature: \"Display Override\".<\/li>\n<\/ul>\n\n<h4>1.7.6 (2025-07-22)<\/h4>\n\n<ul>\n<li><strong>Code Quality<\/strong>: Removed debug function. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/19\">#19<\/a>. Props for <a href=\"https:\/\/github.com\/zach-adams\">Zach Adams<\/a>.<\/li>\n<li><strong>Dependencies<\/strong>: Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 3.0.7.<\/li>\n<\/ul>\n\n<h4>1.7.5 (2025-05-29)<\/h4>\n\n<ul>\n<li><strong>New<\/strong>: Added experimental features section with description field, and screenshot uploads.<\/li>\n<li><strong>Security<\/strong>: Improved input validation and sanitization throughout the plugin.<\/li>\n<li><strong>i18n<\/strong>: Fixed textdomain for consistent translation handling.<\/li>\n<li><strong>Dependencies<\/strong>: Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 3.0.6 and the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.3.1.<\/li>\n<\/ul>\n\n<h4>1.7.4 (2025-05-18)<\/h4>\n\n<ul>\n<li><strong>Performance<\/strong>: Made <code>get_cache_name()<\/code> method protected in iWorks_PWA class for better extensibility.<\/li>\n<li><strong>Cache<\/strong>: Updated cache key generation to use plugin version for better cache management.<\/li>\n<li><strong>Documentation<\/strong>: Added comprehensive PHPDoc for the new set_transient method.<\/li>\n<li><strong>Code Quality<\/strong>: Improved code organization and inline documentation.<\/li>\n<\/ul>\n\n<h4>1.7.3 (2025-05-15)<\/h4>\n\n<ul>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 3.0.1.<\/li>\n<li>Added description for options: \"Cache Version\" and \"Cache Time\"<\/li>\n<\/ul>\n\n<h4>1.7.2 (2025-05-14)<\/h4>\n\n<ul>\n<li>Added <code>iworks_pwa_cache_name<\/code> filter to allow modification of cache keys.<\/li>\n<li>Centralized transient handling with new set_transient method.<\/li>\n<li>Updated all direct set_transient calls to use the new method.<\/li>\n<li>Improved cache key generation to use plugin version.<\/li>\n<li>Added comprehensive PHPDoc for the new set_transient method.<\/li>\n<\/ul>\n\n<h4>1.7.1 (2025-05-05)<\/h4>\n\n<ul>\n<li>Added a nonce check to the menu-saving action for improved security.<\/li>\n<li>Added escaping functions in multiple areas to enhance security.<\/li>\n<li>Replaced the <code>unlink()<\/code> function with <code>wp_delete_file()<\/code> for better compatibility and safety.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 3.0.0.<\/li>\n<\/ul>\n\n<h4>1.7.0 (2025-03-13)<\/h4>\n\n<ul>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.9.8.<\/li>\n<\/ul>\n\n<h4>1.6.9 (2025-03-09)<\/h4>\n\n<ul>\n<li>A extra check for the <code>get_current_screen()<\/code> function has been added. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/12\">#12<\/a>. Props for <a href=\"https:\/\/github.com\/inmyopinion202\">inmyopinion202<\/a>.<\/li>\n<li>Data sanitization has been added in several places.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.9.7.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.2.3.<\/li>\n<li>The <code>load_plugin_texdomain()<\/code> function has been removed.<\/li>\n<li>Warnings during AJAX calls has been fixed.<\/li>\n<li>Updating plugin from GitHub releases has been improved.<\/li>\n<\/ul>\n\n<h4>1.6.8 (2024-12-31)<\/h4>\n\n<ul>\n<li>An error occurred during activation has been fixed. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/11\">#11<\/a>. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/carameldavid\/\">carameldavid<\/a>.<\/li>\n<\/ul>\n\n<h4>1.6.7 (2024-12-09)<\/h4>\n\n<ul>\n<li>Loading integrations action has been fixed.<\/li>\n<\/ul>\n\n<h4>1.6.6 (2024-12-06)<\/h4>\n\n<ul>\n<li>Few \"translators\" comments where been added. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/9\">#9<\/a><\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.2.1.<\/li>\n<li>Translation loading time has been fixed. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/10\">#10<\/a><\/li>\n<li>The \"orientation\" field has been updated. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/8\">#8<\/a><\/li>\n<\/ul>\n\n<h4>1.6.5 (2024-11-12)<\/h4>\n\n<ul>\n<li>Detailed explanation for missing <code>manifest.json<\/code> and <code>ieconfig.xml<\/code> requests where been added. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/2\">#2<\/a><\/li>\n<li>Wrong <code>purpose<\/code> value has been fixed. Props for <a href=\"https:\/\/github.com\/vitalii-work\">vitalii-work<\/a>. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/6\">#6<\/a><\/li>\n<\/ul>\n\n<h4>1.6.4 (2024-10-01)<\/h4>\n\n<ul>\n<li>Ability to upload SVG file has been removed due to Stored Cross-Site Scripting vulnerability. We recommended to install <a href=\"https:\/\/wordpress.org\/plugins\/safe-svg\/\">Safe SVG<\/a> to allow upload SVG files. Props for discovering and reporting for <a href=\"https:\/\/francescocarlucci.com\/\">Francesco Carlucci<\/a>.<\/li>\n<\/ul>\n\n<h4>1.6.3 (2024-09-16)<\/h4>\n\n<ul>\n<li>All empty values where been removed from <code>manifest.json<\/code>.<\/li>\n<li>The categories element has been added into <code>manifest.json<\/code>.<\/li>\n<li>The deprecated key <code>apple-mobile-web-app-capable<\/code> has been changed into <code>mobile-web-app-capable<\/code>.<\/li>\n<\/ul>\n\n<h4>1.6.2 (2024-08-26)<\/h4>\n\n<ul>\n<li>The scope value is now relative to or limited to the site URL. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/leighcc\/\">leighcc<\/a>. Check configuration screen for new option.<\/li>\n<li>The plugin version has been added to cache key, to force refresh data after plugin update.<\/li>\n<\/ul>\n\n<h4>1.6.1 (2024-08-20)<\/h4>\n\n<ul>\n<li>The meta viewport check request has been limited to one per day. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/skyfly024\/\">skyfly024<\/a>.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.2.0.<\/li>\n<\/ul>\n\n<h4>1.6.0 (2024-07-04)<\/h4>\n\n<ul>\n<li>The filter <code>iworks-pwa\/manifest\/data<\/code> has been added. It's allowed to modify entire content of the <code>manifest.json<\/code> file. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/jdwf0658\/\">jdwf0658<\/a>.<\/li>\n<li>The <code>.editorconfig<\/code> file has been added.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.1.9.<\/li>\n<\/ul>\n\n<h4>1.5.9 (2024-02-24)<\/h4>\n\n<ul>\n<li>A few sizes have been added. <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/4\">#3<\/a>. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/wfrank94\/\">wfrank94<\/a>.<\/li>\n<li>The plugin URL has been changed to <a href=\"https:\/\/github.com\/iworks\/iworks-pwa\">github<\/a>.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.9.2.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.1.8.<\/li>\n<\/ul>\n\n<h4>1.5.8 (2023-12-27)<\/h4>\n\n<ul>\n<li>The check for a tag meta with the \"viewport\" value has been added after changes in plugins activations.<\/li>\n<li>The dynamic property has been fixed.<\/li>\n<li>The function <code>parse_url()<\/code> has been replaced by the function <code>wp_parse_url()<\/code>.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.9.0.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.1.6.<\/li>\n<li>The nonce check has been added to check \"viewport\" feature.<\/li>\n<\/ul>\n\n<h4>1.5.7 (2023-11-17)<\/h4>\n\n<ul>\n<li><a href=\"https:\/\/github.com\/iworks\/iworks-pwa\/issues\/4\">Empty shortcuts in the <code>manifest.json<\/code> file have been fixed<\/a>. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/elmando111\/\">elmando111<\/a>.<\/li>\n<li>The filter <code>iworks-pwa\/manifest\/shortcuts<\/code> has been added. It's allowed to modify the shortcuts array in the <code>manifest.json<\/code> file.<\/li>\n<li>The filter <code>iworks-pwa\/manifest\/shortcuts\/element\/url\/campain<\/code> has been added. It's allowed to modify the campaign in shortcuts urls.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.8.<\/li>\n<\/ul>\n\n<h4>1.5.6 (2023-10-27)<\/h4>\n\n<ul>\n<li>Wrong function name <code>get_color_background()<\/code> has been fixed. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/bodhisattvac\/\">bodhisattvac<\/a>.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.7.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.1.3.<\/li>\n<\/ul>\n\n<h4>1.5.5 (2023-07-10)<\/h4>\n\n<ul>\n<li>A check for PWA files required to work has been added.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.5.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.1.2.<\/li>\n<\/ul>\n\n<h4>1.5.4 (2023-06-30)<\/h4>\n\n<ul>\n<li>The meta tag <code>apple-mobile-web-app-capable<\/code> has been added.<\/li>\n<li>Trailing slashes from <code>link<\/code> and <code>meta<\/code> tags have been removed.<\/li>\n<li>The Apple-related PWA has been completely rewritten. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/glidem\/\">James<\/a>.<\/li>\n<\/ul>\n\n<h4>1.5.3 (2022-11-16)<\/h4>\n\n<ul>\n<li>Fixed translation string.<\/li>\n<li>Added id property to manifest.json. <a href=\"https:\/\/developer.chrome.com\/blog\/pwa-manifest-id\/\">Read more<\/a>.<\/li>\n<li>Added manifest.json property <code>name<\/code> limit on plugin install to 45 characters.<\/li>\n<li>Added manifest.json property <code>short_name<\/code> limit on plugin install to 15 characters.<\/li>\n<\/ul>\n\n<h4>1.5.2 (2022-09-26)<\/h4>\n\n<ul>\n<li>Fixed issue with \"apple-touch-icon\" - it wasn't used even defined.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.1.1.<\/li>\n<\/ul>\n\n<h4>1.5.1 (2022-09-10)<\/h4>\n\n<ul>\n<li>Added check for a tag meta with the \"viewport\" value. Add it if it is missing. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/bertluch\/\">Bert<\/a><\/li>\n<li>Changed <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate Module<\/a> repository to GitHub.<\/li>\n<\/ul>\n\n<h4>1.5.0 (2022-08-03)<\/h4>\n\n<ul>\n<li>Added <code>Add to Home screen<\/code> button to show browser prompt to install \"app\". Check <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/API\/BeforeInstallPromptEvent#browser_compatibility\">Browser compatibility<\/a>.<\/li>\n<li>Added google campaign track to \"start_url\" in the <code>manifest.json<\/code> file.<\/li>\n<\/ul>\n\n<h4>1.4.3 (2022-05-06)<\/h4>\n\n<ul>\n<li>Fixed issue with Microsoft Square Icon. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/chickendipper\/\">chickendipper<\/a>.<\/li>\n<li>Fixed issues lower than 8 PHP. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/bamsik001\/\">bamsik001<\/a>.<\/li>\n<li>Added cache for HTML head with Microsoft data.<\/li>\n<\/ul>\n\n<h4>1.4.2 (2022-04-08)<\/h4>\n\n<ul>\n<li>Added params defaults to function called in action <code>wp_nav_menu_item_custom_fields<\/code> to avoid PHP warning for an improper call. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/vmaxs\/\">vmaxs<\/a><\/li>\n<li>Added permanent hide for menu pointer when a user visits the PWA Settings page.<\/li>\n<\/ul>\n\n<h4>1.4.1 (2022-04-05)<\/h4>\n\n<ul>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.4.<\/li>\n<\/ul>\n\n<h4>1.4.0 (2022-04-05)<\/h4>\n\n<ul>\n<li>Added <a href=\"https:\/\/wordpress.org\/plugins\/menu-icons\/\">Menu Icons by ThemeIsle<\/a> plugin integration for PWA Shortcuts.<\/li>\n<li>Added a message when the site permalink is installed in a sub-directory - this plugin does not support it.<\/li>\n<li>Added PWA Shortcuts Menu. <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/Manifest\/shortcuts\">Read more about PWA Shortcuts<\/a>.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.3.<\/li>\n<\/ul>\n\n<h4>1.3.3 (2022-03-22)<\/h4>\n\n<ul>\n<li>Replaced cache function o proper one.<\/li>\n<li>Fixed problem with deleting general icon.<\/li>\n<\/ul>\n\n<h4>1.3.2 (2022-03-22)<\/h4>\n\n<ul>\n<li>Fixed wrong option name.<\/li>\n<\/ul>\n\n<h4>1.3.1 (2022-03-22)<\/h4>\n\n<ul>\n<li>Added <code>\/ieconfig.xml<\/code> link on debug tab.<\/li>\n<li>Fixed long site title on the offline page. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/tanohex\/\">tanohex<\/a>.<\/li>\n<li>Fixed missed translation domain in a few strings.<\/li>\n<li>Improved usage of the transient cache. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/tanohex\/\">tanohex<\/a>.<\/li>\n<li>Removed images from debug tab.<\/li>\n<\/ul>\n\n<h4>1.3.0 (2022-03-16)<\/h4>\n\n<ul>\n<li>Added object cache for settings.<\/li>\n<li>Fixed <code>protected $option_name_icons<\/code> warning.<\/li>\n<\/ul>\n\n<h4>1.2.3 (2022-02-23)<\/h4>\n\n<ul>\n<li>Removed <code>console.log<\/code> from JavaScript files.<\/li>\n<\/ul>\n\n<h4>1.2.2 (2022-02-21)<\/h4>\n\n<ul>\n<li>Added filter `iworks_plugin_get_options' to allow filtering plugin core configuration.<\/li>\n<li>Added <a href=\"https:\/\/wordpress.org\/plugins\/og\/\">OG \u2014 Better Share on Social Media<\/a> plugin integration.<\/li>\n<li>Added plugin information into PWA script elements.<\/li>\n<li>Added purpose \"any maskable\" to the biggest icon. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/vmaxs\/\">vmaxs<\/a>.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.2.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.1.0.<\/li>\n<\/ul>\n\n<h4>1.2.1 (2022-02-16)<\/h4>\n\n<ul>\n<li>Added a message when the site permalink is \"plain\" - this plugin does not support it.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.1.<\/li>\n<\/ul>\n\n<h4>1.2.0 (2022-02-15)<\/h4>\n\n<ul>\n<li>Added the ability to change the text of the offline page.<\/li>\n<li>Added version to cache control.<\/li>\n<li>Added WPML plugin integration.<\/li>\n<li>Moved worker JavaScript from PHP class to separate template.<\/li>\n<\/ul>\n\n<h4>1.1.6 (2022-01-27)<\/h4>\n\n<ul>\n<li>Added screenshots to <code>readme.txt<\/code>.<\/li>\n<li>Removed debug functions.<\/li>\n<\/ul>\n\n<h4>1.1.5 (2022-01-27)<\/h4>\n\n<ul>\n<li>Added Apple Pinned Tab Icon.<\/li>\n<li>Added Apple Launch Icon Title.<\/li>\n<li>Added Microsoft Pinned Site.<\/li>\n<li>Added Microsoft Live Tile for IE11.<\/li>\n<li>Added HTML prefetch for <code>manifest.json<\/code>.<\/li>\n<li>Refactored options.<\/li>\n<\/ul>\n\n<h4>1.1.4 (2022-01-24)<\/h4>\n\n<ul>\n<li>Fixed typo.<\/li>\n<\/ul>\n\n<h4>1.1.3 (2022-01-24)<\/h4>\n\n<ul>\n<li>Fixed class load order issue.<\/li>\n<\/ul>\n\n<h4>1.1.2 (2022-01-24)<\/h4>\n\n<ul>\n<li>Added <code>method_exists<\/code> to check iWorks Option Class has method <code>set_plugin<\/code>.<\/li>\n<li>Changed plugin name into \"PWA \u2014 easy way to Progressive Web App\".<\/li>\n<li>Cleared <code>manifest.json<\/code> from unwanted values.<\/li>\n<li>Improved handle <code>\/manifest.json<\/code>.<\/li>\n<\/ul>\n\n<h4>1.1.1 (2022-01-23)<\/h4>\n\n<ul>\n<li>Added configuration for Apple Splash Screen Icons.<\/li>\n<li>Added configuration for Apple Touch Icon.<\/li>\n<li>Added configuration for IE11.<\/li>\n<li>Added configuration for Microsoft Tile Icons.<\/li>\n<\/ul>\n\n<h4>1.1.0 (2022-01-21)<\/h4>\n\n<ul>\n<li>Added configuration for the application name.<\/li>\n<li>Added configuration for application colours.<\/li>\n<li>Added configuration for application description.<\/li>\n<li>Added configuration for application display.<\/li>\n<li>Added configuration for application icons.<\/li>\n<li>Added configuration for application orientation.<\/li>\n<li>Added configuration for application short name.<\/li>\n<li>Changed plugin name from \"iWorks PWA\" to \"PWA \u2014 easy way to Progressive Web App\".<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/wordpress-options-class\">iWorks Options<\/a> module to version 2.8.0.<\/li>\n<li>Updated the <a href=\"https:\/\/github.com\/iworks\/iworks-rate\">iWorks Rate<\/a> module to version 2.0.6.<\/li>\n<\/ul>\n\n<h4>1.0.0 (2022-01-04)<\/h4>\n\n<ul>\n<li>First stable release.<\/li>\n<li>Added check for the non-SSL site - SSL is required for PWA.<\/li>\n<li>Added \"Rate\" module.<\/li>\n<li>Fixed duplicates in offline URLs set.<\/li>\n<li>Bumped offline version to 2.<\/li>\n<\/ul>\n\n<h4>0.0.2 (2021-04-26)<\/h4>\n\n<ul>\n<li>Added meta <code>theme-color<\/code>. Props for <a href=\"https:\/\/wordpress.org\/support\/users\/forexonlineproductionltd\/\">forexonlineproductionltd<\/a>.<\/li>\n<\/ul>\n\n<h4>0.0.1 (2021-03-18)<\/h4>\n\n<ul>\n<li>Init.<\/li>\n<\/ul>","raw_excerpt":"Your easy way to Progressive Web Application.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/138235","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=138235"}],"author":[{"embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/iworks"}],"wp:attachment":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=138235"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=138235"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=138235"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=138235"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=138235"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=138235"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}