{"id":251721,"date":"2025-09-17T20:06:41","date_gmt":"2025-09-17T20:06:41","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/weatherbot\/"},"modified":"2025-10-21T16:18:20","modified_gmt":"2025-10-21T16:18:20","slug":"weatherbot","status":"publish","type":"plugin","link":"https:\/\/nl.wordpress.org\/plugins\/weatherbot\/","author":14677864,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.2.0","stable_tag":"1.2.0","tested":"6.8.5","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"WeatherBot Weather Widget","header_author":"RoxxiStudios\u2122","header_description":"WeatherBot \u2014 free version is a clean, easy to use weather plugin. Add fast, accessible, location-based weather using the Google Maps Platform (Weather + Geocoding). Includes a shortcode with inline\/badge\/compact variants and a widget.","assets_banners_color":"355a8a","last_updated":"2025-10-21 16:18:20","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/roxxistudios.com\/plugins\/weatherbot","header_author_uri":"https:\/\/roxxistudios.com\/","rating":0,"author_block_rating":0,"active_installs":30,"downloads":946,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"RoxxiStudios","date":"2025-09-17 20:17:05"},"1.0.1":{"tag":"1.0.1","author":"RoxxiStudios","date":"2025-09-17 22:28:08"},"1.0.2":{"tag":"1.0.2","author":"RoxxiStudios","date":"2025-09-18 12:11:58"},"1.0.3":{"tag":"1.0.3","author":"RoxxiStudios","date":"2025-09-18 16:08:02"},"1.0.4":{"tag":"1.0.4","author":"RoxxiStudios","date":"2025-09-18 18:52:09"},"1.0.5":{"tag":"1.0.5","author":"RoxxiStudios","date":"2025-09-19 19:27:44"},"1.0.7":{"tag":"1.0.7","author":"RoxxiStudios","date":"2025-09-22 03:49:14"},"1.0.8":{"tag":"1.0.8","author":"RoxxiStudios","date":"2025-09-23 20:09:05"},"1.0.9":{"tag":"1.0.9","author":"RoxxiStudios","date":"2025-09-23 22:38:05"},"1.1.0":{"tag":"1.1.0","author":"RoxxiStudios","date":"2025-09-24 21:53:24"},"1.1.1":{"tag":"1.1.1","author":"RoxxiStudios","date":"2025-09-25 03:43:30"},"1.1.2":{"tag":"1.1.2","author":"RoxxiStudios","date":"2025-09-25 20:52:31"},"1.1.3":{"tag":"1.1.3","author":"RoxxiStudios","date":"2025-09-25 23:01:43"},"1.1.4":{"tag":"1.1.4","author":"RoxxiStudios","date":"2025-09-26 00:16:13"},"1.1.5":{"tag":"1.1.5","author":"RoxxiStudios","date":"2025-09-26 01:45:46"},"1.1.6":{"tag":"1.1.6","author":"RoxxiStudios","date":"2025-09-28 00:17:10"},"1.1.7":{"tag":"1.1.7","author":"RoxxiStudios","date":"2025-10-04 20:47:52"},"1.1.8":{"tag":"1.1.8","author":"RoxxiStudios","date":"2025-10-09 20:56:29"},"1.1.9":{"tag":"1.1.9","author":"RoxxiStudios","date":"2025-10-13 22:17:31"},"1.2.0":{"tag":"1.2.0","author":"RoxxiStudios","date":"2025-10-21 16:18:20"}},"upgrade_notice":{"1.1.7":"<p>Refinement release with minor code and style improvements.<\/p>","1.1.6":"<p>Prevents PHP 8.x notices in the WeatherBot widget. Recommended for all sites.<\/p>","1.1.3":"<p>Security update: API key field is now masked with a toggle showing only the last 4 digits. Existing keys are preserved unless cleared manually.<\/p>","1.1.1":"<p>Adds WeatherForecast schema for Google rich results plus heading_tag control. Improves semantic HTML for SEO and accessibility.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":0},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3365428,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3365428,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3365428,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3365428,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":{"roxxistudios\/weatherbot":{"apiVersion":2,"name":"roxxistudios\/weatherbot","title":"WeatherBot","category":"widgets","description":"Insert a WeatherBot widget using your plugin defaults or a city.","icon":"cloud","supports":{"html":false,"align":["left","center","right","wide","full"],"spacing":{"margin":true,"padding":false}},"style":"weatherbot-frontend","editorStyle":"weatherbot-editor","attributes":{"city":{"type":"string","default":""},"cityConfirmed":{"type":"string","default":""},"unit":{"type":"string","default":""},"type":{"type":"string","default":""},"fontColor":{"type":"string","enum":["","light","dark"],"default":""},"position":{"type":"string","enum":["left","center","right"],"default":"left"},"preText":{"type":"string","default":""},"headingTag":{"type":"string","default":"h3"}},"example":{"attributes":{"cityConfirmed":"Lake Arrowhead, CA","preText":"Current Weather","position":"left","fontColor":"light","type":"badge","unit":"IMPERIAL","headingTag":"h3"}},"editorScript":"weatherbot-block-editor"}},"tagged_versions":["1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.0.5","1.0.7","1.0.8","1.0.9","1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.1.5","1.1.6","1.1.7","1.1.8","1.1.9","1.2.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3365428,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3365428,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3365428,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3365428,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3365428,"resolution":"5","location":"assets","locale":""},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3365428,"resolution":"6","location":"assets","locale":""}},"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[57366,175725,7960,4899,7956],"plugin_category":[43,59],"plugin_contributors":[248023],"plugin_business_model":[],"class_list":["post-251721","plugin","type-plugin","status-publish","hentry","plugin_tags-google-weather","plugin_tags-live-weather","plugin_tags-local-weather","plugin_tags-weather","plugin_tags-weather-widget","plugin_category-customization","plugin_category-utilities-and-tools","plugin_contributors-roxxistudios","plugin_committers-roxxistudios"],"banners":{"banner":"https:\/\/ps.w.org\/weatherbot\/assets\/banner-772x250.png?rev=3365428","banner_2x":"https:\/\/ps.w.org\/weatherbot\/assets\/banner-1544x500.png?rev=3365428","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/weatherbot\/assets\/icon-128x128.png?rev=3365428","icon_2x":"https:\/\/ps.w.org\/weatherbot\/assets\/icon-256x256.png?rev=3365428","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/weatherbot\/assets\/screenshot-1.png?rev=3365428","caption":""},{"src":"https:\/\/ps.w.org\/weatherbot\/assets\/screenshot-2.png?rev=3365428","caption":""},{"src":"https:\/\/ps.w.org\/weatherbot\/assets\/screenshot-3.png?rev=3365428","caption":""},{"src":"https:\/\/ps.w.org\/weatherbot\/assets\/screenshot-4.png?rev=3365428","caption":""},{"src":"https:\/\/ps.w.org\/weatherbot\/assets\/screenshot-5.png?rev=3365428","caption":""},{"src":"https:\/\/ps.w.org\/weatherbot\/assets\/screenshot-6.png?rev=3365428","caption":""}],"raw_content":"<!--section=description-->\n<p><a href=\"https:\/\/roxxistudios.com\/weatherbot\"><strong>WeatherBot<\/strong><\/a> displays <strong>live weather<\/strong> for any location in the world using <strong>Google\u2019s Weather API<\/strong>, with city\/place resolution via <strong>Google Maps Geocoding\/Places<\/strong>. Use with a <strong>Classic Widget<\/strong>, a <strong>Gutenberg block<\/strong> (with live preview), or with a <strong>shortcode<\/strong> anywhere shortcodes are supported. Outputs a clean, accessible UI that works in any theme or builder.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li><strong>Automatic WeatherForecast Schema.org (JSON-LD) structured data<\/strong> generation for SEO and Google rich results.<\/li>\n<li><strong>Live local current weather<\/strong> via <strong>Google Weather API<\/strong><\/li>\n<li><strong>Google Maps Geocoding\/Places<\/strong> for accurate city\/place lookups<\/li>\n<li><strong>WordPress weather block<\/strong> with <strong>live server preview<\/strong> and full controls<\/li>\n<li><strong>WordPress weather shortcode<\/strong> that <strong>works anywhere shortcodes are supported<\/strong><\/li>\n<li><strong>Control the title's HTML tag<\/strong> (H2-H6, P) for SEO hierarchy<\/li>\n<li><strong>Three display layouts<\/strong> \u2014 badge (card), compact (mini), inline (text-flow)<\/li>\n<li><strong>Optional title with on\/off toggle<\/strong> via show_pre_text (shortcode &amp; block)<\/li>\n<li><strong>Intuitive Theme Selection<\/strong> (Light Theme \/ Dark Theme) for readability on any background<\/li>\n<li><strong>Units<\/strong> \u2014 Fahrenheit (\u00b0F) or Celsius (\u00b0C); can inherit from Settings<\/li>\n<li><strong>Classic Widget<\/strong> support (with <strong>Align<\/strong> and <strong>Heading Tag<\/strong> options)<\/li>\n<li><strong>Semantic and Accessible HTML5 Markup<\/strong> (aside, headings) for improved SEO and screen reader support.<\/li>\n<li><strong>Builder-friendly output<\/strong> \u2014 guards against unwanted p wrappers and extra spacing<\/li>\n<li><strong>Caching tuned for freshness<\/strong> \u2014 weather (~2 minutes per location\/unit); geocoding (long-lived)<\/li>\n<li><strong>Manual cache purge<\/strong> from Settings<\/li>\n<li><strong>Optional uninstall cleanup<\/strong> \u2014 delete plugin data on uninstall if enabled<\/li>\n<li><strong>CSS variables<\/strong> for easy theming (--wb-primary, --wb-secondary, --wb-neutral, etc.)<\/li>\n<li><strong>No jQuery on the front end<\/strong> \u2014 built with modern WordPress packages and vanilla JS<\/li>\n<li><strong>COMING SOON:<\/strong> Our <strong>Pro version<\/strong> with <strong>weather forecast<\/strong> and other powerful features like <strong>detailed style controls<\/strong>.<\/li>\n<\/ul>\n\n<h3>Who Should Use WeatherBot?<\/h3>\n\n<p>The WeatherBot plugin is a versatile tool that adds real-time weather insights to your WordPress site. Any site that relies on <strong>location-based services<\/strong>, <strong>visitor engagement<\/strong>, or <strong>timely environmental data<\/strong> can gain measurable benefits by engaging visitors longer and improving conversions.<\/p>\n\n<ul>\n<li><strong>Real Estate Websites<\/strong> \u2013 Showcase current conditions for specific cities or neighborhoods to highlight lifestyle and property appeal.<\/li>\n<li><strong>Travel &amp; Tourism Agencies<\/strong> \u2013 Display live weather for destinations like ski resorts, beach hotels, and outdoor adventure guides to help travelers plan trips and activities.<\/li>\n<li><strong>Hospitality &amp; Lodging<\/strong> \u2013 Hotels, resorts, and vacation rentals can reassure guests and improve conversion rates with up-to-date forecasts directly on booking pages.<\/li>\n<li><strong>Outdoor Recreation &amp; Services<\/strong> \u2013 Ski resorts, hiking trails, marinas, golf courses, and contractors can highlight ideal activity conditions or set expectations for weather-dependent services.<\/li>\n<li><strong>Event Venues &amp; Organizers<\/strong> \u2013 Provide attendees with accurate, live weather at the event location.<\/li>\n<li><strong>Local News &amp; Community Sites<\/strong> \u2013 Add relevant, constantly updating content that keeps visitors returning.<\/li>\n<li><strong>E-commerce Stores<\/strong> \u2013 Influence buying decisions for seasonal goods\u2014like clothing or outdoor gear\u2014by tying products to live weather data in key markets.<\/li>\n<li><strong>Education &amp; Nonprofits<\/strong> \u2013 Enhance engagement on school or community sites with practical information for families and visitors.<\/li>\n<\/ul>\n\n<p>Whether you\u2019re running a <strong>real estate agency site in Lake Arrowhead<\/strong>, a <strong>tourism portal for Big Bear<\/strong>, or a <strong>global e-commerce store selling outdoor gear<\/strong>, WeatherBot helps you deliver <strong>accurate, branded weather displays<\/strong> that align perfectly with your content and audience.<\/p>\n\n<p>For search visibility, WeatherBot is one of the <strong>best weather plugins for real estate, tourism, hospitality, outdoor recreation, local businesses, and e-commerce sites<\/strong>.<\/p>\n\n<h3>How to Use<\/h3>\n\n<h3>Gutenberg Block + Classic Widget<\/h3>\n\n<p>Insert the <strong>WeatherBot<\/strong> block from the add widget panel (search \u201cWeatherBot\u201d). The block renders a <strong>live server preview<\/strong> and includes these controls:<\/p>\n\n<ul>\n<li><strong>Title<\/strong> (<code>pre_text<\/code>) \u2014 optional heading above the widget<\/li>\n<li><strong>Show Title<\/strong> (<code>show_pre_text<\/code>) \u2014 <code>1<\/code> (show) or <code>0<\/code> (hide)<\/li>\n<li><strong>Position<\/strong> (<code>align<\/code>) \u2014 <code>left<\/code>, <code>center<\/code>, <code>right<\/code><\/li>\n<li><strong>Theme<\/strong> (<code>font_color<\/code>) \u2014 <code>light<\/code>, <code>dark<\/code> contrast<\/li>\n<li><strong>Unit<\/strong> (<code>unit<\/code>) \u2014 <code>IMPERIAL<\/code> (\u00b0F), <code>METRIC<\/code> (\u00b0C), or inherit from Settings<\/li>\n<li><strong>Type<\/strong> (<code>type<\/code>) \u2014 <code>badge<\/code>, <code>compact<\/code>, <code>inline<\/code><\/li>\n<li><strong>City<\/strong> (<code>city<\/code>) \u2014 type a city and press <strong>Enter<\/strong> to preview<\/li>\n<\/ul>\n\n<p>The block supports <strong>Dimensions \u2192 Margin<\/strong> for per-instance spacing. Theme alignment (e.g., wide\/full) is supported where available.<\/p>\n\n<h3>Shortcode<\/h3>\n\n<p>Use [weatherbot]. Examples below are code-formatted so they render correctly.<\/p>\n\n<p><strong>Basic:<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\"]<\/p>\n\n<p><strong>Badge type with \u00b0F:<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\" unit=\"IMPERIAL\" type=\"badge\"]<\/p>\n\n<p><strong>Title + right aligned:<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\" type=\"badge\" pre_text=\"Current Weather\" align=\"right\"]<\/p>\n\n<p><strong>Hide the title (show_pre_text=0):<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\" pre_text=\"Current Weather\" show_pre_text=\"0\"]<\/p>\n\n<p><strong>High-contrast for dark backgrounds:<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\" type=\"badge\" font_color=\"light\"]<\/p>\n\n<p><strong>Compact layout (\u00b0C):<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\" type=\"compact\" unit=\"METRIC\"]<\/p>\n\n<p><strong>Inline layout (flows with text; omit align):<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\" type=\"inline\" pre_text=\"Now:\"]<\/p>\n\n<p><strong>All options:<\/strong>\n[weatherbot city=\"Lake Arrowhead, CA\" unit=\"IMPERIAL\" type=\"badge\" pre_text=\"Current Weather\" show_pre_text=\"1\" align=\"center\" font_color=\"dark\"]<\/p>\n\n<h3>Attributes<\/h3>\n\n<ul>\n<li>city \u2014 string (e.g., <code>\"Lake Arrowhead, CA\"<\/code>)<\/li>\n<li>unit \u2014 <code>IMPERIAL<\/code> | <code>METRIC<\/code> | empty to inherit from Settings<\/li>\n<li>type \u2014 <code>badge<\/code> | <code>compact<\/code> | <code>inline<\/code> | empty to inherit<\/li>\n<li>pre_text \u2014 string (optional title above the widget)<\/li>\n<li>show_pre_text \u2014 <code>1<\/code> | <code>0<\/code> (default <code>1<\/code>) \u2014 show\/hide the title above the widget<\/li>\n<li>align \u2014 left | center | right<\/li>\n<li>font_color \u2014 light | dark<\/li>\n<\/ul>\n\n<h3>Styling &amp; Customization<\/h3>\n\n<p>WeatherBot is designed to <strong>inherit your theme\u2019s fonts and typography<\/strong> by default, so it blends seamlessly into your site. But if you want more control, you can fully customize the display with <strong>CSS variables<\/strong> and <strong>custom CSS rules<\/strong>.<\/p>\n\n<h4>CSS Variables for Quick Theming<\/h4>\n\n<p>You can override the built-in design system using global CSS variables. Add them to <strong>Appearance \u2192 Customize \u2192 Additional CSS<\/strong> or your child theme stylesheet:<\/p>\n\n<pre><code>:root {\n\u00a0 \u00a0 --wb-primary: #0055aa;      \/* link and highlight color *\/\n\u00a0 \u00a0 --wb-secondary: #3399ff;    \/* hover color *\/\n\u00a0 \u00a0 --wb-neutral: #666666;      \/* neutral text *\/\n\u00a0 \u00a0 --wb-light: #e0e0e0;        \/* light gray *\/\n\u00a0 \u00a0 --wb-dark: #111111;         \/* dark text *\/\n}\n<\/code><\/pre>\n\n<h4>Common Customizations<\/h4>\n\n<ul>\n<li><p><strong>Change the temperature color:<\/strong>\n\u00a0 \u00a0 .roxxi-weather span.wb-temp {\n\u00a0 \u00a0 \u00a0 \u00a0 color: #cc0000;\n\u00a0 \u00a0 \u00a0 \u00a0 font-weight: 700;\n\u00a0 \u00a0 }<\/p><\/li>\n<li><p><strong>Make the unit lighter:<\/strong>\n\u00a0 \u00a0 .roxxi-weather span.wb-unit {\n\u00a0 \u00a0 \u00a0 \u00a0 color: #555555;\n\u00a0 \u00a0 \u00a0 \u00a0 font-weight: 300;\n\u00a0 \u00a0 }<\/p><\/li>\n<li><p><strong>Style the description (conditions):<\/strong>\n\u00a0 \u00a0 .roxxi-weather span.wb-desc {\n\u00a0 \u00a0 \u00a0 \u00a0 font-style: italic;\n\u00a0 \u00a0 \u00a0 \u00a0 color: #444444;\n\u00a0 \u00a0 }<\/p><\/li>\n<li><p><strong>Adjust the powered-by line:<\/strong>\n\u00a0 \u00a0 .roxxi-weather span.wb-powered {\n\u00a0 \u00a0 \u00a0 \u00a0 font-size: 11px;\n\u00a0 \u00a0 \u00a0 \u00a0 color: #999999;\n\u00a0 \u00a0 }<\/p><\/li>\n<\/ul>\n\n<h4>Layout Variants<\/h4>\n\n<p>WeatherBot supports three display layouts that can be styled independently:<\/p>\n\n<ul>\n<li><strong>Badge<\/strong> \u2013 <code>.wb-type-badge<\/code> \u2192 Card-style block with border and padding<\/li>\n<li><strong>Compact<\/strong> \u2013 <code>.wb-type-compact<\/code> \u2192 Slimmed-down block for sidebars or tight spaces<\/li>\n<li><strong>Inline<\/strong> \u2013 <code>.wb-type-inline<\/code> \u2192 Flows naturally with surrounding text<\/li>\n<\/ul>\n\n<h4>Alignment Utilities<\/h4>\n\n<p>You can also control horizontal positioning:<\/p>\n\n<ul>\n<li><code>.wb-left<\/code> \u2192 Align left<\/li>\n<li><code>.wb-center<\/code> \u2192 Centered<\/li>\n<li><code>.wb-right<\/code> \u2192 Align right<\/li>\n<\/ul>\n\n<h4>Contrast Themes<\/h4>\n\n<p>For accessibility and readability, WeatherBot supports <strong>dark text on light backgrounds<\/strong> (<code>font_color=\"dark\"<\/code>) or <strong>light text on dark backgrounds<\/strong> (<code>font_color=\"light\"<\/code>). This ensures your widget maintains strong contrast in any design.<\/p>\n\n<p>With these options, WeatherBot can be styled to match <strong>any WordPress theme<\/strong>\u2014from minimal blogs to complex builder-driven layouts.<\/p>\n\n<h3>Advanced Information<\/h3>\n\n<h3>Performance &amp; Caching<\/h3>\n\n<p>WeatherBot is engineered to be <strong>fast, lightweight, and API-efficient<\/strong>, so it won\u2019t slow down your WordPress site. All requests to Google\u2019s Weather and Geocoding APIs are cached in your database to reduce load times and minimize API usage.<\/p>\n\n<h4>How Caching Works<\/h4>\n\n<ul>\n<li><strong>Weather Data<\/strong> \u2014 Cached for about <strong>2 minutes<\/strong> per location\/unit combination. This ensures users see nearly live conditions without hammering the API unnecessarily.<\/li>\n<li><strong>Geocoding Data<\/strong> \u2014 Cached long-term. Once a city or place name has been resolved into coordinates, it is stored and re-used to speed up future lookups.<\/li>\n<li><strong>Automatic Expiration<\/strong> \u2014 Old or stale cache entries are purged automatically so your database stays clean.<\/li>\n<\/ul>\n\n<h4>Manual Cache Control<\/h4>\n\n<p>From the <strong>Settings \u2192 WeatherBot<\/strong> page you can manually clear caches at any time:<\/p>\n\n<ul>\n<li><strong>Purge Weather Cache<\/strong> \u2014 Forces a fresh request to the Google Weather API on next load.<\/li>\n<li><strong>Purge Geocoding Cache<\/strong> \u2014 Clears stored location lookups, useful if you change how you want places to be resolved.<\/li>\n<\/ul>\n\n<h4>Performance Advantages<\/h4>\n\n<ul>\n<li><strong>No jQuery<\/strong> on the front end \u2014 WeatherBot uses <strong>vanilla JavaScript<\/strong> and modern WordPress packages for faster rendering.<\/li>\n<li><strong>Minimal Database Calls<\/strong> \u2014 Cached data is indexed, and each widget instance reuses cached responses where possible.<\/li>\n<li><strong>Smart Asset Loading<\/strong> \u2014 Styles and scripts are only enqueued on pages where the widget or block is actually used.<\/li>\n<li><strong>Builder &amp; Theme Friendly<\/strong> \u2014 CSS variables and scoped class names reduce conflicts and keep styling isolated.<\/li>\n<li><strong>Optimized for PHP 8+<\/strong> \u2014 Fully compatible and tested for modern hosting environments.<\/li>\n<\/ul>\n\n<h4>API Usage &amp; Quotas<\/h4>\n\n<p>Because WeatherBot caches aggressively, each site can serve thousands of widget views while making only a handful of API calls. This keeps your <strong>Google Maps Platform quota usage low<\/strong>, even on high-traffic sites.<\/p>\n\n<p>In short, WeatherBot is tuned to balance <strong>real-time accuracy<\/strong> with <strong>performance efficiency<\/strong>, ensuring your site stays fast while your visitors always see up-to-date weather conditions.<\/p>\n\n<h3>SEO &amp; Local Search Benefits<\/h3>\n\n<p>WeatherBot isn\u2019t just a utility widget\u2014it can also help strengthen your site\u2019s <strong>SEO and local search visibility<\/strong>. By embedding <strong>live weather conditions<\/strong> tied to a city, town, or region, you\u2019re providing <strong>fresh, location-based content<\/strong> that search engines value.<\/p>\n\n<h4>How WeatherBot Helps SEO<\/h4>\n\n<ul>\n<li><strong>Fresh Content Signals<\/strong> \u2014 Weather data updates every few minutes, giving search engines a reason to crawl your pages more often.<\/li>\n<li><strong>Local Relevance<\/strong> \u2014 Embedding city-specific weather reinforces <strong>geo-targeted keywords<\/strong> (e.g., \u201cLake Arrowhead weather\u201d) and strengthens your topical authority for that area.<\/li>\n<li><strong>Semantic Richness<\/strong> \u2014 Shortcodes and blocks can be paired with surrounding text, FAQs, or schema markup to enhance your page relevance.<\/li>\n<li><strong>Lower Bounce Rates<\/strong> \u2014 Visitors often engage longer with pages that show timely, useful information like weather, which can indirectly boost rankings.<\/li>\n<\/ul>\n\n<h4>Ideal Use Cases for SEO<\/h4>\n\n<ul>\n<li><strong>Real Estate Websites<\/strong> \u2014 Add the current weather to property listings or community pages to increase local keyword density and improve engagement.<\/li>\n<li><strong>Tourism &amp; Travel Blogs<\/strong> \u2014 Show live conditions for destinations, resorts, or attractions to strengthen relevance for location-based queries.<\/li>\n<li><strong>Hospitality Websites<\/strong> \u2014 Hotels, B&amp;Bs, and vacation rentals can enhance booking pages with local conditions for guest reassurance.<\/li>\n<li><strong>Outdoor Services<\/strong> \u2014 Contractors, landscapers, guides, or event venues can add live weather data to improve trust and capture long-tail queries.<\/li>\n<li><strong>Community Portals<\/strong> \u2014 Local organizations and nonprofits can feature weather alongside news and events to serve their audience better.<\/li>\n<\/ul>\n\n<h4>Best Practices<\/h4>\n\n<p>1.\u00a0 <strong>Pair WeatherBot with Content<\/strong> \u2014 Don\u2019t just drop in the widget. Surround it with <strong>location-rich text<\/strong> like community info, property highlights, or travel guides.\n2.\u00a0 <strong>Use Internal Links<\/strong> \u2014 Link weather-enhanced pages to related content (e.g., \u201cSee all Lake Arrowhead homes for sale\u201d) to strengthen site architecture.\n3.\u00a0 <strong>Combine with Schema<\/strong> \u2014 Add FAQ or LocalBusiness schema to the same page to maximize structured data signals.\n4.\u00a0 <strong>Target Seasonal Keywords<\/strong> \u2014 Weather pages can support seasonal searches like \u201cski conditions\u201d or \u201csummer vacation weather\u201d when paired with relevant content.<\/p>\n\n<p>By strategically placing WeatherBot on <strong>city landing pages, property spotlights, tourism blogs, or service areas<\/strong>, you create <strong>ever-fresh, locally relevant content<\/strong> that boosts both <strong>SEO performance<\/strong> and <strong>user engagement<\/strong>.<\/p>\n\n<h3>Compatibility<\/h3>\n\n<p>WeatherBot integrates seamlessly with the WordPress <strong>Block Editor (Gutenberg)<\/strong> with full support for the <strong>Classic Widget system<\/strong> and <strong>shortcodes<\/strong>, making it highly flexible across different site setups.<\/p>\n\n<h4>WordPress Block Editor (Gutenberg)<\/h4>\n\n<p>Insert the <strong>WeatherBot block<\/strong> from the editor sidebar (search for \u201cWeatherBot\u201d). The block includes a <strong>live preview<\/strong> that updates instantly as you configure options like city, unit, layout, and alignment. Works with both standard content blocks and <strong>full-site editing<\/strong> (FSE) templates.<\/p>\n\n<h4>Classic Widgets<\/h4>\n\n<p>WeatherBot registers as a <strong>Classic Widget<\/strong>, so it can be placed into traditional sidebars or widget areas. All shortcode attributes (city, unit, type, align, etc.) are supported inside the widget interface.<\/p>\n\n<h4>Shortcodes in Page Builders<\/h4>\n\n<p>WeatherBot\u2019s shortcode works in all major page builders:<\/p>\n\n<ul>\n<li><strong>Elementor<\/strong> \u2013 add via Shortcode widget.<\/li>\n<li><strong>Beaver Builder<\/strong> \u2013 add via HTML or Text module.<\/li>\n<li><strong>Divi<\/strong> \u2013 paste shortcode into a Code block.<\/li>\n<li><strong>WPBakery<\/strong> \u2013 insert with Text Block or Raw HTML.<\/li>\n<\/ul>\n\n<p>Shortcodes also render correctly in headers, footers, popups, and theme hooks.<\/p>\n\n<h4>Theme-Agnostic Styling<\/h4>\n\n<p>The plugin\u2019s design system uses <strong>CSS variables<\/strong> (e.g., <code>--wb-primary<\/code>, <code>--wb-dark<\/code>, <code>--wb-light<\/code>), so it inherits your theme\u2019s fonts and colors while remaining <strong>customizable<\/strong>. This makes WeatherBot compatible with nearly all modern themes without manual overrides.<\/p>\n\n<h4>Browser &amp; Device Support<\/h4>\n\n<p>WeatherBot is fully responsive and works across desktop, tablet, and mobile devices. The UI automatically adjusts layouts for smaller screens (badge, compact, and inline types).<\/p>\n\n<p>WeatherBot is built with <strong>vanilla JavaScript<\/strong> (no jQuery) and standard WordPress packages, ensuring long-term compatibility with WordPress core updates.<\/p>\n\n<h3>Pro Version (Coming Soon)<\/h3>\n\n<p>We are actively developing <strong>WeatherBot Pro<\/strong>, an upgraded version of the plugin designed for websites that need more advanced weather features, deeper integrations, and expanded customization. Pro will include powerful enhancements that go beyond the current free version:<\/p>\n\n<h4>Multi-Day Weather Forecasts (Pro Version)<\/h4>\n\n<p>Display not only current conditions but also <strong>hourly and multi-day forecasts<\/strong>. Perfect for tourism sites, hotels, resorts, outdoor recreation, and real estate listings where future weather is a deciding factor.<\/p>\n\n<h4>Extended Layout &amp; Style Controls (Pro Version)<\/h4>\n\n<p>Gain full control over <strong>fonts, colors, and card designs<\/strong> with a point-and-click style editor. Choose from additional layouts (carousel, grid, stacked) and apply them per widget, block, or shortcode instance.<\/p>\n\n<h4>Builder &amp; Theme Integrations (Pro Version)<\/h4>\n\n<p>Pro will offer deeper compatibility with <strong>Elementor<\/strong>, <strong>Beaver Builder<\/strong>, <strong>Divi<\/strong>, and <strong>WPBakery<\/strong>, allowing you to configure weather blocks visually inside your page builder without relying only on shortcodes.<\/p>\n\n<h4>Advanced Caching &amp; Performance Tools (Pro Version)<\/h4>\n\n<p>Control caching intervals, purge rules, and fallback states for <strong>high-traffic environments<\/strong>. Optimize for SEO and speed without sacrificing live data accuracy.<\/p>\n\n<h4>Business &amp; Location Features (Pro Version)<\/h4>\n\n<p>Associate multiple cities or service areas and display them in <strong>maps, lists, or comparison tables<\/strong>. Ideal for businesses with multiple offices, retail stores, or event venues.<\/p>\n\n<h4>More API Options (Pro Version)<\/h4>\n\n<p>Expanded support for alternative weather APIs will be explored, providing flexibility in data sources and resilience if usage quotas are reached.<\/p>\n\n<p><strong>WeatherBot Pro<\/strong> will ensure you stay ahead with <strong>forecast-ready features, enterprise-level styling options, and robust performance tools<\/strong>. Stay tuned for updates, and watch for announcements in the plugin dashboard and on the <a href=\"https:\/\/roxxistudios.com\/weatherbot\">WeatherBot project page<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to third-party services to fetch weather and\/or geocoding data.<\/p>\n\n<h4>Google Weather \/ Google Maps Platform<\/h4>\n\n<ul>\n<li><strong>Usage:<\/strong> retrieves current conditions and converts place names to coordinates.<\/li>\n<li><strong>Data sent:<\/strong> the query you provide (e.g., \u201cLake Arrowhead, CA\u201d) or latitude\/longitude.<\/li>\n<li><strong>Provider terms:<\/strong> https:\/\/cloud.google.com\/maps-platform\/terms\u00a0\u00a0<\/li>\n<li><strong>Google APIs Terms:<\/strong> https:\/\/developers.google.com\/terms<\/li>\n<li><strong>Privacy policy:<\/strong> https:\/\/policies.google.com\/privacy<\/li>\n<li><strong>Notes:<\/strong> Site owners provide their own API keys. No data is sent to RoxxiStudios servers. Geolocation is not used.<\/li>\n<\/ul>\n\n<h4>Caching<\/h4>\n\n<p>The plugin may cache API responses (weather lookups and reverse-geocoded place names) in your WordPress database to reduce network calls and improve performance. Cache lifetimes are limited and can be cleared by site admins at any time.<\/p>\n\n<!--section=installation-->\n<h4>From your WordPress dashboard<\/h4>\n\n<p>1.\u00a0 Go to <strong>Plugins \u2192 Add New<\/strong>.\n2.\u00a0 Search for <strong>WeatherBot<\/strong>.\n3.\u00a0 Click <strong>Install Now<\/strong>, then <strong>Activate<\/strong>.\n4.\u00a0 Go to <strong>Settings \u2192 WeatherBot<\/strong>, add your <strong>Google Maps API key<\/strong> (enable <strong>Weather<\/strong> and <strong>Geocoding\/Places<\/strong> APIs), and save.\n5.  Add the <strong>WeatherBot Block<\/strong>, <strong>Widget<\/strong>, or <strong>Shortcode<\/strong> to your site and configure the options.<\/p>\n\n<h4>Manual installation<\/h4>\n\n<p>1.\u00a0 Upload the weatherbot folder to \/wp-content\/plugins\/.\n2.\u00a0 Activate the plugin in <strong>Plugins<\/strong>.\n3.\u00a0 Go to <strong>Settings \u2192 WeatherBot<\/strong>, add your <strong>Google Maps API key<\/strong> (enable <strong>Weather<\/strong> and <strong>Geocoding\/Places<\/strong> APIs), and save.\n4.  Add the <strong>WeatherBot Block<\/strong>, <strong>Widget<\/strong>, or <strong>Shortcode<\/strong> to your site and configure the options.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id='1.%20does%20this%20show%20live%20location%20weather%20using%20google%20weather%3F'><h3>1. Does this show live location weather using Google Weather?<\/h3><\/dt>\n<dd><p>Yes. WeatherBot retrieves <strong>current weather<\/strong> from <strong>Google\u2019s Weather API<\/strong> and resolves your <code>city<\/code> input with <strong>Google Maps Geocoding\/Places<\/strong>.<\/p><\/dd>\n<dt id='2.%20where%20do%20i%20get%20a%20google%20api%20key%20and%20what%20do%20i%20enable%3F'><h3>2. Where do I get a Google API key and what do I enable?<\/h3><\/dt>\n<dd><p>Create a key in the <a href=\"https:\/\/developers.google.com\/maps\/documentation\/weather\/get-api-key\"><strong>Google Maps\/Weather API Platform<\/strong><\/a> and enable <strong>Weather<\/strong> and <strong>Geocoding\/Places<\/strong> APIs. Restrict your key per Google\u2019s guidance.<\/p><\/dd>\n<dt id='3.%20can%20i%20use%20the%20shortcode%20in%20widgets%2C%20headers%2Ffooters%2C%20or%20builder%20modules%3F'><h3>3. Can I use the shortcode in Widgets, Headers\/Footers, or builder modules?<\/h3><\/dt>\n<dd><p>Yes\u2014anywhere WordPress <strong>parses shortcodes<\/strong>: posts, pages, widgets, the Core\/HTML block, and most page builders. In a PHP template you can use:\n    <\/p><\/dd>\n<dt id='4.%20how%20often%20is%20the%20weather%20updated%3F%20can%20i%20clear%20the%20cache%3F'><h3>4. How often is the weather updated? Can I clear the cache?<\/h3><\/dt>\n<dd><p>Weather results are cached briefly (about <strong>2 minutes<\/strong> per location\/unit) to keep results fresh while saving API calls. Geocoding results can be cached long-term. You can <strong>manually purge<\/strong> caches from <strong>Settings \u2192 WeatherBot<\/strong>.<\/p><\/dd>\n<dt id='5.%20does%20the%20widget%20support%20dark%20backgrounds%3F'><h3>5. Does the widget support dark backgrounds?<\/h3><\/dt>\n<dd><p>Yes. Choose <strong>Theme \u2192 Light\/Dark<\/strong> (or <code>font_color<\/code> shortcode attribute) to ensure readable contrast.<\/p><\/dd>\n<dt id='6.%20does%20this%20plugin%20track%20visitors%20or%20send%20data%20to%20third-party%20servers%3F'><h3>6. Does this plugin track visitors or send data to third-party servers?<\/h3><\/dt>\n<dd><p>No. API calls go directly from <strong>your site<\/strong> to <strong>Google<\/strong> using <strong>your<\/strong> key. The plugin does not phone home.<\/p><\/dd>\n<dt id='7.%20is%20jquery%20required%3F'><h3>7. Is jQuery Required?<\/h3><\/dt>\n<dd><p><strong>No jQuery on the front end.<\/strong> WeatherBot runs on vanilla JS and WordPress packages. (The WP admin may load standard WordPress scripts.)<\/p><\/dd>\n<dt id='8.%20can%20i%20change%20the%20font%20styles%20of%20the%20weather%20display%3F'><h3>8. Can I change the font styles of the weather display?<\/h3><\/dt>\n<dd><p>Yes. While WeatherBot inherits your theme\u2019s fonts, you can easily override them with custom CSS. For example, to make the temperature bold and red, add this to your theme's Additional CSS panel:<\/p>\n\n<p>\u00a0 \u00a0 .roxxi-weather span.wb-temp {\n\u00a0 \u00a0 \u00a0 \u00a0 font-weight: 700;\n\u00a0 \u00a0 \u00a0 \u00a0 color: #cc0000;\n\u00a0 \u00a0 }<\/p>\n\n<p>See the Styling &amp; Customization section for more options.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.0<\/h4>\n\n<ul>\n<li><strong>Maintenance:<\/strong> Regular maintenance and code refinement.<\/li>\n<\/ul>\n\n<h4>1.1.9<\/h4>\n\n<ul>\n<li><strong>Improved:<\/strong> Updated styles sheet to improve layouts for all variables.<\/li>\n<\/ul>\n\n<h4>1.1.8<\/h4>\n\n<ul>\n<li><strong>Fixed:<\/strong> Rare PHP TypeError that could occur in certain live-render or preview environments when $data returned null before JSON-LD hydration.<\/li>\n<li><strong>Improved:<\/strong> Added lightweight pre-call validation in Shortcode handler to ensure $data is a valid array before JSON-LD collection.<\/li>\n<li><strong>Maintained:<\/strong> All frontend rendering, caching, and structured-data behavior remain unchanged in production.<\/li>\n<li><strong>Version Sync:<\/strong> Internal Shortcode class updated to v3.1.6 JSON-LD Enhanced build with defensive validation for preview compatibility.<\/li>\n<\/ul>\n\n<h4>1.1.7<\/h4>\n\n<ul>\n<li><strong>Enhancement:<\/strong> Refined codebase for consistency and maintainability.<\/li>\n<li><strong>Improvement:<\/strong> Minor optimizations to markup and styles for cleaner output.<\/li>\n<li><strong>Dev:<\/strong> General housekeeping to align with WordPress.org plugin standards.<\/li>\n<\/ul>\n\n<h4>1.1.6<\/h4>\n\n<ul>\n<li><strong>Fix:<\/strong> Resolved PHP 8.x notice: Undefined array key \"heading_tag\" in src\/Widgets\/Weather_Widget.php.<\/li>\n<li><strong>Improvement:<\/strong> Backfilled legacy widget instances with safe defaults via wp_parse_args() in widget() and form().<\/li>\n<li><strong>Improvement:<\/strong> Whitelisted\/sanitized heading_tag and removed direct array access to prevent future notices.<\/li>\n<li><strong>Dev:<\/strong> Centralized DEFAULTS constant and added defensive guards; no front-end output changes.<\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li><strong>Accessibility:<\/strong> Added role=\"region\" to all widget types to improve accessibility and boost CSS specificity.<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li><strong>Fix:<\/strong> Increased CSS specificity to preserve base styles.<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li><strong>Security:<\/strong> API key is masked in the admin with toggle for last 4 digits.<\/li>\n<li><strong>Settings:<\/strong> Existing keys preserved unless cleared manually.<\/li>\n<li><strong>Accessibility:<\/strong> Toggle button labeled with aria-pressed state.<\/li>\n<li><strong>Dev:<\/strong> Updated sanitize() to support masked states.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li><strong>Docs:<\/strong> Clarified sections in readme.txt file.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li><strong>New Feature (SEO):<\/strong> Added WeatherForecast schema.org (JSON-LD) for Google rich results.<\/li>\n<li><strong>New Feature:<\/strong> Added heading_tag control for title HTML tag (H2\u2013H6).<\/li>\n<li><strong>Enhancement:<\/strong> Refactored HTML output with semantic markup for accessibility and SEO.<\/li>\n<li><strong>Enhancement:<\/strong> Improved widget Theme Color setting for clarity and readability.<\/li>\n<li><strong>Tweak:<\/strong> Renamed \"Inherit\" to \"Default\" in widget dropdowns.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li><strong>Fix:<\/strong> Adjusted CSS specificity to maintain weather widget consistency.<\/li>\n<li><strong>Dev:<\/strong> Added data-widget attribute to support CSS specificity.<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li><strong>Enhancement:<\/strong> Improved CSS with layering and theme style inheritance.<\/li>\n<li><strong>Accessibility:<\/strong> Added additional CSS refinements for ADA compliance.<\/li>\n<li><strong>Styling:<\/strong> Updated widget theme styles for consistency.<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li><strong>Docs:<\/strong> Updated readme.txt content.<\/li>\n<li><strong>Dev:<\/strong> Refactored codebase for maintainability.<\/li>\n<li><strong>Styling:<\/strong> Improved style rules to allow theme priority.<\/li>\n<li><strong>Fix:<\/strong> Resolved PHP 8.x error in front-end rendering.<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li><strong>Fix:<\/strong> Corrected alignment for inline widget inside paragraphs.<\/li>\n<li><strong>Docs:<\/strong> Updated readme.txt content.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li><strong>Fix:<\/strong> Prevented duplicate stylesheet load on front end when block is present.<\/li>\n<li><strong>Docs:<\/strong> Documented show_pre_text option in readme.txt.<\/li>\n<li><strong>Enhancement:<\/strong> Improved styles for better layout control.<\/li>\n<li><strong>UI:<\/strong> Reordered widget setting fields for clarity.<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li><strong>Enhancement:<\/strong> Improved responsive styles and refined uninstall cleanup procedure.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li><strong>New Feature:<\/strong> Added \"Align\" option to WeatherBot Widget (left, center, right, inherit).<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li><strong>Styling:<\/strong> CSS refinements for responsive layouts.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li><strong>Styling:<\/strong> Updated badge layout styles for improved consistency.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li><strong>New Feature:<\/strong> Added uninstall.php for cleanup on plugin deletion.<\/li>\n<li><strong>Settings:<\/strong> Added option to control data deletion on uninstall.<\/li>\n<li><strong>Assets:<\/strong> Updated icons, screenshots, and logos.<\/li>\n<li><strong>UI:<\/strong> Updated settings page layout.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li><strong>Initial Release:<\/strong> Launch of WeatherBot plugin with shortcode, widget, and block support.<\/li>\n<\/ul>","raw_excerpt":"Live weather for any location using Google Weather API. Add an ADA enhanced Weather Block, Widget, or Shortcode. Precision-crafted for simplicity.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/251721","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=251721"}],"author":[{"embeddable":true,"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/roxxistudios"}],"wp:attachment":[{"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=251721"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=251721"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=251721"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=251721"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=251721"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/nl.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=251721"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}