[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fs9Mcuyb0CF3_yTwLl9wDI0D7HsuacqP8XpVzsUWD5kA":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":34,"analysis":132,"fingerprints":302},"air-quality","Air Quality Plugin","0.40","patrol220","https:\u002F\u002Fprofiles.wordpress.org\u002Fpatrol220\u002F","\u003Cp>Air Quality Plugin shows air quality data from closest detector of localization which you will give in settings of plugin. In plugin settings localization must be provided to determine which detector will be chosen. You can set Google Maps API key in settings to make that thing easier. After giving Google Maps Api key you will get new input field where you can specify your localization. It can be name of the city, but in your city there can be multiple air quality detectors so for more accurate results you should put name of the street.\u003Cbr \u002F>\nPlugin is using waqi.info JSON API to get data about air quality.\u003C\u002Fp>\n\u003Cp>In settings administrator have option to let every user to set localization from Settings -> AQP Settings what they want.\u003C\u002Fp>\n\u003Cp>Plugin additionaly displays some info about weather from detector if there is any given. You can disable it from administrator options.\u003C\u002Fp>\n","This plugin was made mainly to display air quality from closest air pollution detector",30,2066,0,"2018-04-12T11:56:00.000Z","4.9.29","4.7","5.5",[19,20,21,22,23],"health","monitor","pollution","weather","widget","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fair-quality.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":11,"trust_score":32,"computed_at":33},1,84,"2026-04-05T22:56:25.897Z",[35,48,72,91,112],{"slug":36,"name":37,"version":38,"author":39,"author_profile":40,"description":41,"short_description":42,"active_installs":13,"downloaded":43,"rating":13,"num_ratings":13,"last_updated":24,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":44,"homepage":24,"download_link":45,"security_score":46,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":47},"airquality-chmu","AirQuality CHMU","1.0","Jakub Macíček","https:\u002F\u002Fprofiles.wordpress.org\u002Fmakav1\u002F","\u003Cp>Air Quality CHMU je plugin, který zobrazuje data o kvalitě ovzduší od nejbližšího detektoru lokalizace, který zadáte v nastavení pluginu. V nastavení pluginu musí být zadáné město, pro které se vám zobrazí enviromentální data. Plugin využívá naměřená data, které nám nabízí Český hydrometeorologický ústav ve formmě JSON.\u003C\u002Fp>\n\u003Cp>V nastavení si administrator zvolí město pro, které si chce zobrazit environmentální data a dále může uživatele informovat na základě indexu kvality ovzduší, co to znamená ta daná kvalita ovzduší.\u003C\u002Fp>\n\u003Cp>Data jsou čerpána z třetí strany a to z Českého hydrometeorologického úřadu ze souboru: http:\u002F\u002Fportal.chmi.cz\u002Ffiles\u002Fportal\u002Fdocs\u002Fuoco\u002Fweb_generator\u002Faqindex_cze.json\u003C\u002Fp>\n","Tento plugin slouží k zobrazení environmentálních dat z Českého hydrometeorologického ústavu.",3354,[19,20,21,22,23],"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fairquality-chmu.0.11.zip",100,"2026-03-15T10:48:56.248Z",{"slug":49,"name":50,"version":51,"author":52,"author_profile":53,"description":54,"short_description":55,"active_installs":56,"downloaded":57,"rating":58,"num_ratings":59,"last_updated":60,"tested_up_to":61,"requires_at_least":62,"requires_php":24,"tags":63,"homepage":67,"download_link":68,"security_score":69,"vuln_count":70,"unpatched_count":13,"last_vuln_date":71,"fetched_at":28},"weather-atlas","Weather Atlas Widget","3.0.4","Weather Atlas","https:\u002F\u002Fprofiles.wordpress.org\u002Fweatheratlas\u002F","\u003Cp>\u003Cstrong>The Weather Widget with the Most Active Installations on WordPress.org\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>NEW FEATURE!\u003C\u002Fstrong>\u003Cbr \u002F>\nENHANCE YOUR WEBSITE BY DEDICATING AN ENTIRE PAGE TO THE WEATHER.\u003C\u002Fp>\n\u003Cp>In addition to all relevant weather information, the widget has the option to display\u003Cbr \u002F>\n\u003Cstrong>DETAILED TEXTUAL DAILY AND LONG-TERM\u003C\u002Fstrong> weather forecast.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Full page demo (live sites example)\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fstormandoutage.com\u002Fweather-center\u002F\" rel=\"nofollow ugc\">stormandoutage.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Widget demo (live sites example)\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwww.marbella-tennis-lessons.com\u002Fen\u002Ftennis-weather\u002F\" rel=\"nofollow ugc\">marbella-tennis-lessons.com\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwww.morethangolfmarrakech.co.uk\u002Fdependableweather\u002F\" rel=\"nofollow ugc\">morethangolfmarrakech.co.uk\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwww.airciu.com\u002F\" rel=\"nofollow ugc\">airciu.com\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fballinghambolstonehentland-pc.gov.uk\u002F\" rel=\"nofollow ugc\">ballinghambolstonehentland-pc.gov.uk\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fpanarbora.de\u002F\" rel=\"nofollow ugc\">panarbora.de\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Ftheamericanmag.com\u002F\" rel=\"nofollow ugc\">theamericanmag.com\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Flindos-weddings-venue.com\u002F\" rel=\"nofollow ugc\">lindos-weddings-venue.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Weather Atlas Widget is:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Highly Customizable: Modify design to present data in various forms incl. languages and units\u003C\u002Fli>\n\u003Cli>Responsive: Automatically adapts appearance for mobile displays, ensuring optimal viewing on any device\u003C\u002Fli>\n\u003Cli>Smart: Background and borders change according to current temperature; widget’s font size adjusts to match the website’s font and page placement\u003C\u002Fli>\n\u003Cli>Beautiful: Elegant weather condition icons are simple and adapt in size, color, and shades to the widget’s text\u003C\u002Fli>\n\u003Cli>Simple: All options are easy-to-change, and, above all, Weather information is presented in a clear and concise way\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Responsive Web Design: Adapts to mobile displays\u003C\u002Fli>\n\u003Cli>Easy Styling: Effortlessly styles to suit your theme\u003C\u002Fli>\n\u003Cli>Weather Icons: Visually appealing and informative\u003C\u002Fli>\n\u003Cli>Comprehensive Data: Current conditions, hourly, and long-term forecast\u003C\u002Fli>\n\u003Cli>Detailed Forecast: In-depth weather information\u003C\u002Fli>\n\u003Cli>Flexible Placement: Suitable for content or sidebar\u003C\u002Fli>\n\u003Cli>Global Reach: Covers worldwide locations\u003C\u002Fli>\n\u003Cli>Multilingual and Unit Support: Accommodates multiple languages and units\u003C\u002Fli>\n\u003Cli>Multiple Widgets Option: Allows for multiple simultanious widget implementations\u003C\u002Fli>\n\u003Cli>Simple Setup: Easy to configure and use\u003Cbr \u002F>\nand\u003C\u002Fli>\n\u003Cli>Key-Free Operation: No need to register for keys; the widget just works 🙂\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Responsive Web Design\u003C\u002Fh4>\n\u003Cp>When placed in a horizontal layout (e.g., within an article), the widget reformats to a vertical layout on mobile devices.\u003Cbr \u002F>\nDetails of the current condition (such as feels-like temperature, wind, humidity, pressure, UV index) and forecasts extending beyond 3 hours\u002Fdays are hidden on mobile devices to maintain an uncluttered appearance and preserve the design on narrow displays.\u003C\u002Fp>\n\u003Ch4>Easy Styling\u003C\u002Fh4>\n\u003Cp>Choose from two predefined layouts (vertical and horizontal) and customize the widget to fit your website.\u003Cbr \u002F>\nFont size can be manually set (in px, pt, em, rem, %, etc.) to override the automatic adjustment to the website’s font size and page placement.\u003Cbr \u002F>\nBackground color, which adapts to the current temperature, can be set to a fixed color, including transparency options.\u003Cbr \u002F>\nText color, automatically optimized for contrast against the background, can also be manually overridden.\u003C\u002Fp>\n\u003Ch4>Weather Icons\u003C\u002Fh4>\n\u003Cp>The weather condition icons are elegantly designed, simple, and adapt in size, color, and shade to match the widget’s text.\u003C\u002Fp>\n\u003Ch4>Comprehensive Data\u003C\u002Fh4>\n\u003Cp>Select from a range of weather information, including current conditions, hourly, and long-term forecasts.\u003Cbr \u002F>\nCurrent conditions display temperature, weather icon, feels-like temperature, wind, humidity, pressure, UV index, and sunrise\u002Fsunset times.\u003Cbr \u002F>\nHourly forecasts provide up to 5 hours of temperature predictions with weather icons, while the daily forecast offers up to 5 days of high\u002Flow temperatures and weather conditions.\u003C\u002Fp>\n\u003Ch4>Versatile Placement\u003C\u002Fh4>\n\u003Cp>The Weather Atlas Widget is designed for flexibility, allowing placement either in a sidebar or within the main content of your site.\u003Cbr \u002F>\nIt supports integration through user-friendly Gutenberg blocks or via a simple shortcode option, offering versatility and ease of use within your WordPress site.\u003C\u002Fp>\n\u003Ch4>Worldwide Locations\u003C\u002Fh4>\n\u003Cp>Access over 800,000 locations from 238 countries and territories. Your location is likely included 🙂\u003C\u002Fp>\n\u003Ch4>Languages\u003C\u002Fh4>\n\u003Cp>The widget automatically selects the language based on your site’s language settings (Settings \u002F General \u002F Site Language).\u003Cbr \u002F>\nIf a local translation is unavailable, it defaults to English.\u003Cbr \u002F>\nLocal translations can be updated for further customization.\u003C\u002Fp>\n\u003Ch4>Units\u003C\u002Fh4>\n\u003Cp>Weather data is displayed in either the Imperial (°F, in, mi) or Metric system (°C, mb, mm, km).\u003C\u002Fp>\n\u003Ch4>Multiple Widgets Option\u003C\u002Fh4>\n\u003Cp>Multiple widgets can be placed on the same page, each with individual settings and operating independently.\u003Cbr \u002F>\nThe widgets display cached weather data from your database and periodically update from our service, ensuring no slowdown to your website.\u003C\u002Fp>\n\u003Ch4>Easy Setup\u003C\u002Fh4>\n\u003Cp>All options are straightforward to configure. For further assistance, please visit our \u003Ca href=\"..\u002Fplugins\u002Fweather-atlas\u002F#faq\" rel=\"nofollow ugc\">FAQ\u003C\u002Fa> and then drop us a line in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fweather-atlas\" rel=\"ugc\">support forum\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Key-Free Setup\u003C\u002Fh4>\n\u003Cp>No registration is required for the widget to function\u003C\u002Fp>\n\u003Ch4>Tags\u003C\u002Fh4>\n\u003Cp>weather, weather widget, forecast, location, weather atlas\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fweather-atlas\" rel=\"ugc\">Support\u003C\u002Fa>\u003Cbr \u002F>\n  For any inquiries about implementing or customizing the widget, or if you have suggestions for improvements and new features, feel free to \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fweather-atlas#new-topic-0\" rel=\"ugc\">reach out on our support forum\u003C\u002Fa>. We are dedicated to assisting every user with installation (which is rarely needed) and seamlessly integrating the widget into their website. Your feedback also helps us enhance the widget in future updates, incorporating the most requested features.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fweather-atlas\u002Freviews\u002F\" rel=\"ugc\">Reviews\u003C\u002Fa>\u003Cbr \u002F>\n  A little bit of \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=XpqqjU7u5Yc\" rel=\"nofollow ugc\">love\u003C\u002Fa> never hurt nobody.\u003Cbr \u002F>\n  If you like our work (or not), please \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fweather-atlas\u002Freviews\u002F#new-topic-0\" rel=\"ugc\">let us, and the world know\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n","The Weather Widget with the Most Active Installations. Highly customizable, simple & beautiful. Detailed current weather, hourly & daily forecasts",9000,179380,82,41,"2025-07-04T13:45:00.000Z","6.8.5","4.0",[64,65,22,49,66],"forecast","location","weather-widget","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fweather-atlas\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fweather-atlas.zip",99,2,"2024-11-18 00:00:00",{"slug":73,"name":73,"version":74,"author":75,"author_profile":76,"description":77,"short_description":78,"active_installs":79,"downloaded":80,"rating":58,"num_ratings":81,"last_updated":82,"tested_up_to":83,"requires_at_least":84,"requires_php":24,"tags":85,"homepage":88,"download_link":89,"security_score":69,"vuln_count":70,"unpatched_count":13,"last_vuln_date":90,"fetched_at":28},"wp-forecast","9.8","tuxlog","https:\u002F\u002Fprofiles.wordpress.org\u002Ftuxlog\u002F","\u003Cp>You are reading the readme.txt file for the wp-forecast plugin.\u003Cbr \u002F>\nwp-forecast is a plugin for the famous wordpress blogging package,\u003Cbr \u002F>\nshowing the weather-data from open-meteo.com and\u002For openweathermap.com.\u003Cbr \u002F>\nplease also refer to the terms of usage of open-meteo.com and\u002For openweathermap.com.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Displays the weather data from Open-Meteo.com and OpenWeatherMap.com\u003Cbr \u002F>\n at your wordpress pages, posts or sidebar\u003C\u002Fli>\n\u003Cli>Displays OpenUV.io data \u003C\u002Fli>\n\u003Cli>Let you choose the\n\u003Cul>\n\u003Cli>location (of course)\u003C\u002Fli>\n\u003Cli>the time after the weather data is refreshed\u003C\u002Fli>\n\u003Cli>the langugage \u003C\u002Fli>\n\u003Cli>metric or american measures\u003C\u002Fli>\n\u003Cli>windspeed unit \u003C\u002Fli>\n\u003Cli>the forecast days \u003C\u002Fli>\n\u003Cli>the forecast for up to six\u002Fseven days\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>support wordpress widgets, easy placement 🙂\u003C\u002Fli>\n\u003Cli>customize the information you want to show\u003C\u002Fli>\n\u003Cli>supports pull-down forecast data to efficiently use space\u003C\u002Fli>\n\u003Cli>multiple wp-forecast widget support \u003C\u002Fli>\n\u003Cli>integration into your site via css (see below)\u003C\u002Fli>\n\u003Cli>comes with an api for wordpress-pro’s 😉\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Credits:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Barbary Jany                 testing a lot and bring it to valid XHTML\u003C\u002Fli>\n\u003Cli>Nike Gilhuijs,\u003Cbr \u002F>\nFrans Lieshout, Wim Scholtes translation to dutch\u003C\u002Fli>\n\u003Cli>Luís Reis                    translation to portugues\u003C\u002Fli>\n\u003Cli>Håkan Carlström,\u003Cbr \u002F>\nSusanne Svensso              translation to swedish\u003C\u002Fli>\n\u003Cli>Gabriele von der Ohe         translation to german with entities (for iso-8859-1 or latin1 blogs)\u003C\u002Fli>\n\u003Cli>Martin Loyer\u002FJean-Pierre     translation to french\u003C\u002Fli>\n\u003Cli>Robert Lang                  language file for en_US\u003C\u002Fli>\n\u003Cli>Detti Giulio\u002FStefano Boeri   translation to italian\u003C\u002Fli>\n\u003Cli>Eilif Nordseth               translation to norwegian\u003C\u002Fli>\n\u003Cli>Michael S.R. Petersen        translation to dansk\u003C\u002Fli>\n\u003Cli>Jaakko Kangosjärvi           translation to finish\u003C\u002Fli>\n\u003Cli>Lukasz “linshi” Linhard      translation to polish\u003C\u002Fli>\n\u003Cli>Castmir & Alejandro          translation to spanish\u003C\u002Fli>\n\u003Cli>Tamas Koos                   translation to hungarian\u003C\u002Fli>\n\u003Cli>Valeria Pellegrini           translation to russian\u003C\u002Fli>\n\u003Cli>Valentina Boeri              translation to romanian \u003C\u002Fli>\n\u003Cli>Roland Geci                  translation to slovak\u003C\u002Fli>\n\u003Cli>Pavel Soukenik               translation to czech\u003C\u002Fli>\n\u003Cli>Pavel Karnaukhov             translation to ukraine\u003C\u002Fli>\n\u003Cli>Zoran Maric                  translation to serbian (latin)\u003C\u002Fli>\n\u003Cli>Petar Petrov                 translation to bulgarian\u003C\u002Fli>\n\u003Cli>Udi Burg                     translation to hebrew\u003C\u002Fli>\n\u003Cli>Uli Kozok                    translation to indonesian\u003C\u002Fli>\n\u003Cli>Ali Zemani                   translation to persian\u003C\u002Fli>\n\u003Cli>Amizda Idriz                 translation to bosnian\u003C\u002Fli>\n\u003Cli>Lovrenco Vladislavić         translation to croatian\u003C\u002Fli>\n\u003Cli>All the others giving feedback about missing features and bugs.\u003Cbr \u002F>\nThank you very much for your contribution to wp-forecast.   \u003C\u002Fli>\n\u003Cli>\n\u003Cp>Weather Icon Font by me Erik FLowers Weather Icons licensed under SIL OFL 1.1\u003C\u002Fp>\n\u003Cp>Installation:\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Col>\n\u003Cli>\n\u003Cp>Install via the WordPress plugin admin dialog (search for wp-forecast) or\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Upload to your plugins folder, usually \u003Ccode>wp-content\u002Fplugins\u002F\u003C\u002Fcode>, keeping\u003Cbr \u002F>\nthe directory structure intact (i.e. wp-forecast.php should end up\u003Cbr \u002F>\nin \u003Ccode>wp-content\u002Fplugins\u002Fwp-forecast\u002F\u003C\u002Fcode>).\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Activate the plugin on the plugin screen.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Visit the configuration page (\u003Ccode>Options -> WP-forecast\u003C\u002Fcode>) to pick the\u003Cbr \u002F>\nnumber of widgets, data to display and to change any other option.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Visit the Themes\u002FWidgets page to place your wp-forecast widget within\u003Cbr \u002F>\nyour themes sidebars or insert it manually and edit your template\u003Cbr \u002F>\nfile and put the wp-forecast function where you want your weather\u003Cbr \u002F>\ndata to show up.\u003Cbr \u002F>\nExample: \u003Ccode>\u003Cul>\u003Cli>\u003Cbr \u002F>\n             \u003C?php if(function_exists(wp_forecast)) {\u003Cbr \u002F>\n               wp_forecast( \u003Cwidget_id> );\u003Cbr \u002F>\n             } ?>\u003Cbr \u002F>\n         \u003C\u002Fli>\u003C\u002Ful>\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>You have to replace \u003Cwidget_id> with the choosen widget id.\u003Cbr \u002F>\n For the first widget use wp_forecast(“A”), for the second\u003Cbr \u002F>\n wp_forecast(“B”) and so on.\u003Cbr \u002F>\n In most cases it is advisable to put the call into a div environment.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Optional\u003Cbr \u002F>\nIf you would like to have another set of icons download it\u003Cbr \u002F>\nfrom \u003Ca href=\"http:\u002F\u002Faccunet.accuweather.com\u002Fwx\u002Faccunet\u002Fgraphics_icons.htm\" rel=\"nofollow ugc\">http:\u002F\u002Faccunet.accuweather.com\u002Fwx\u002Faccunet\u002Fgraphics_icons.htm\u003C\u002Fa>\u003Cbr \u002F>\nand put it into the wp-content\u002Fplugins\u002Fwp-forecast\u002Ficons folder\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Optional\u003Cbr \u002F>\nIf you would like to change the style, just edit wp-forecast.css\u003Cbr \u002F>\nthere are three classes div.wp-forecast for outer formatting,\u003Cbr \u002F>\ntable.wp-forecast for the middle part or iconpart and\u003Cbr \u002F>\nwp-forecast-details for everything below the icon\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Translations\u003C\u002Fh3>\n\u003Cp>wp-forecast comes with various translations, located in the directory \u003Ccode>lang\u003C\u002Fcode>.\u003Cbr \u002F>\n   if you would like to add a new translation, just take the file\u003Cbr \u002F>\n   wp-forecast.pot (in the wp-forecast main directory) copy it to\u003Cbr \u002F>\n   wp-forecast_-.po and edit it to add your translations\u003Cbr \u002F>\n   (e.g. with poedit).\u003C\u002Fp>\n\u003Cp>Please be aware that the number codes stand for the weather-situations.\u003Cbr \u002F>\n   you can see the mapping in wp-forecast-en_US-en_US.po. there are also\u003Cbr \u002F>\n   the letters N, S, W, E they stand for the winddirections and can be\u003Cbr \u002F>\n   translates either.\u003C\u002Fp>\n\u003Cp>To use your own translation, a different one as the default just rename the\u003Cbr \u002F>\n   appropriate file wp-forecast_-.po and\u003Cbr \u002F>\n   wp-forecast_-.mo\u003C\u002Fp>\n\u003Cp>To add your translations online at the Translate WordPress project please visit\u003Cbr \u002F>\n   https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fwp-forecast. This should be the prefered\u003Cbr \u002F>\n   way from now on.\u003C\u002Fp>\n","wp-forecast is a highly customizable plugin for wordpress, showing weather-data from open-meteo.com and\u002For openweathermap.com.",5000,426346,24,"2026-01-11T17:58:00.000Z","6.9.4","6.0",[64,86,87,22,23],"open-meteo","openweathermap","http:\u002F\u002Fwww.tuxlog.de","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-forecast.9.8.zip","2024-03-28 00:00:00",{"slug":92,"name":93,"version":94,"author":95,"author_profile":96,"description":97,"short_description":98,"active_installs":99,"downloaded":100,"rating":46,"num_ratings":70,"last_updated":101,"tested_up_to":102,"requires_at_least":103,"requires_php":24,"tags":104,"homepage":109,"download_link":110,"security_score":111,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"health-endpoint","Health Endpoint","1.0.2","Jon Otaegi","https:\u002F\u002Fprofiles.wordpress.org\u002Fjonotaegi\u002F","\u003Cp>This simple plugin creates a \u003Ccode>\u002Fhealth\u003C\u002Fcode> endpoint to let you monitor the status of your WordPress website. The endpoint tests the status of your database connection and returns a \u003Ccode>200 OK\u003C\u002Fcode> HTTP status code while your page is healthy. You can read more on HTTP status codes at the \u003Ca href=\"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FList_of_HTTP_status_codes\" rel=\"nofollow ugc\">Wikipedia article\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>External tools such as website monitoring services can access the exposed endpoint at regular intervals. This can help you verify that your WordPress website is performing correctly.\u003C\u002Fp>\n\u003Cp>You can find more information about the \u003Ca href=\"https:\u002F\u002Fdocs.microsoft.com\u002Fen-us\u002Fazure\u002Farchitecture\u002Fpatterns\u002Fhealth-endpoint-monitoring\" rel=\"nofollow ugc\">Health Endpoint Monitoring Pattern\u003C\u002Fa> at the \u003Ca href=\"https:\u002F\u002Fdocs.microsoft.com\u002Fen-us\u002Fazure\u002Farchitecture\u002Fpatterns\u002F\" rel=\"nofollow ugc\">Microsoft Azure Documentation\u003C\u002Fa> website.\u003C\u002Fp>\n\u003Ch4>Development\u003C\u002Fh4>\n\u003Cp>This plugin is being developed on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjonotaegi\u002Fwordpress-health-endpoint\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>. If you want to collaborate, feel free to submit pull requests or report bugs on the issue tracker.\u003C\u002Fp>\n","Creates a \u002Fhealth endpoint that returns a 200 OK HTTP status code while WordPress is performing correctly.",3000,33776,"2025-03-09T15:40:00.000Z","6.7.5","3.5",[105,106,107,20,108],"api","endpoint","health-check","uptime","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fhealth-endpoint\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fhealth-endpoint.1.0.2.zip",92,{"slug":113,"name":114,"version":115,"author":116,"author_profile":117,"description":118,"short_description":119,"active_installs":120,"downloaded":121,"rating":122,"num_ratings":70,"last_updated":123,"tested_up_to":102,"requires_at_least":124,"requires_php":125,"tags":126,"homepage":130,"download_link":131,"security_score":111,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"remove-site-heath-from-dashboard","Remove Site Health From Dashboard","1.1.2","fullworks","https:\u002F\u002Fprofiles.wordpress.org\u002Ffullworks\u002F","\u003Cp>If you manage multiple WordPress sites, you may find you get lots of calls about site health as this has been put right in front of your site owners eyes.\u003Cbr \u002F>\nThis is a good thing if it is your own site but no so good if you are getting calls from non technical clients.\u003C\u002Fp>\n\u003Cp>So this plugin removes it.  Simple and as lightweight as any code snippet can be.\u003C\u002Fp>\n\u003Cp>Additionally if you want to hide the Site Health from the tools menu, you can set\u003C\u002Fp>\n\u003Cp>RSHFD_REMOVE_SITE_HEALTH_FROM_TOOLS  in wp-config.php to true\u003C\u002Fp>\n\u003Cpre>\u003Ccode> define('RSHFD_REMOVE_SITE_HEALTH_FROM_TOOLS', true);\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Removes the Site Health from the Dashboard introduced in WP 5.4",1000,9070,80,"2025-02-18T18:51:00.000Z","5.3","5.6",[127,128,129],"dashboard-widget","site-health","sitehealth","https:\u002F\u002Ffullworks.net\u002Fproducts\u002Fremove-site-heath-from-dashboard\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fremove-site-heath-from-dashboard.1.1.2.zip",{"attackSurface":133,"codeSignals":165,"taintFlows":266,"riskAssessment":292,"analyzedAt":301},{"hooks":134,"ajaxHandlers":148,"restRoutes":161,"shortcodes":162,"cronEvents":163,"entryPointCount":164,"unprotectedCount":70},[135,141,145],{"type":136,"name":137,"callback":138,"file":139,"line":140},"action","plugins_loaded","pk_aqp_prepare_translations","air-quality-plugin.php",67,{"type":136,"name":142,"callback":143,"file":139,"line":144},"admin_menu","pk_aqp_create_options_page",77,{"type":136,"name":146,"callback":147,"file":139,"line":32},"widgets_init","pk_aqp_widget_init",[149,154,158],{"action":150,"nopriv":151,"callback":150,"hasNonce":151,"hasCapCheck":151,"file":152,"line":153},"pk_aqp_load_settings_fields",false,"includes\\handle_ajax.php",13,{"action":155,"nopriv":151,"callback":155,"hasNonce":156,"hasCapCheck":151,"file":152,"line":157},"pk_aqp_save_user_coordinates",true,36,{"action":159,"nopriv":151,"callback":159,"hasNonce":151,"hasCapCheck":151,"file":152,"line":160},"pk_aqp_get_widget_html",42,[],[],[],3,{"dangerousFunctions":166,"sqlUsage":167,"outputEscaping":169,"fileOperations":13,"externalRequests":31,"nonceChecks":70,"capabilityChecks":187,"bundledLibraries":265},[],{"prepared":13,"raw":13,"locations":168},[],{"escaped":170,"rawEcho":171,"locations":172},14,52,[173,176,177,179,181,183,186,188,190,191,193,195,197,199,201,203,205,207,208,210,211,213,215,217,219,221,224,225,227,228,230,232,233,234,236,238,239,241,242,243,245,246,248,250,251,253,255,257,259,260,262,264],{"file":139,"line":174,"context":175},104,"raw output",{"file":139,"line":174,"context":175},{"file":139,"line":178,"context":175},119,{"file":139,"line":180,"context":175},122,{"file":139,"line":182,"context":175},128,{"file":184,"line":185,"context":175},"includes\\options_menu.php",4,{"file":184,"line":187,"context":175},5,{"file":184,"line":189,"context":175},93,{"file":184,"line":69,"context":175},{"file":184,"line":192,"context":175},109,{"file":184,"line":194,"context":175},113,{"file":184,"line":196,"context":175},117,{"file":184,"line":198,"context":175},118,{"file":184,"line":200,"context":175},125,{"file":184,"line":202,"context":175},135,{"file":184,"line":204,"context":175},139,{"file":184,"line":206,"context":175},143,{"file":184,"line":206,"context":175},{"file":184,"line":209,"context":175},147,{"file":184,"line":209,"context":175},{"file":184,"line":212,"context":175},151,{"file":184,"line":214,"context":175},152,{"file":184,"line":216,"context":175},155,{"file":184,"line":218,"context":175},156,{"file":184,"line":220,"context":175},161,{"file":222,"line":223,"context":175},"includes\\widget_display.php",69,{"file":222,"line":223,"context":175},{"file":222,"line":226,"context":175},75,{"file":222,"line":226,"context":175},{"file":222,"line":229,"context":175},78,{"file":222,"line":231,"context":175},79,{"file":222,"line":231,"context":175},{"file":222,"line":32,"context":175},{"file":222,"line":235,"context":175},87,{"file":222,"line":237,"context":175},90,{"file":222,"line":189,"context":175},{"file":222,"line":240,"context":175},96,{"file":222,"line":69,"context":175},{"file":222,"line":192,"context":175},{"file":222,"line":244,"context":175},115,{"file":222,"line":196,"context":175},{"file":222,"line":247,"context":175},123,{"file":222,"line":249,"context":175},129,{"file":222,"line":202,"context":175},{"file":222,"line":252,"context":175},153,{"file":222,"line":254,"context":175},158,{"file":222,"line":256,"context":175},194,{"file":222,"line":258,"context":175},201,{"file":222,"line":258,"context":175},{"file":222,"line":261,"context":175},212,{"file":222,"line":263,"context":175},220,{"file":222,"line":263,"context":175},[],[267,284],{"entryPoint":268,"graph":269,"unsanitizedCount":13,"severity":283},"pk_aqp_options_code (includes\\options_menu.php:12)",{"nodes":270,"edges":281},[271,276],{"id":272,"type":273,"label":274,"file":184,"line":275},"n0","source","$_POST",21,{"id":277,"type":278,"label":279,"file":184,"line":198,"wp_function":280},"n1","sink","echo() [XSS]","echo",[282],{"from":272,"to":277,"sanitized":156},"low",{"entryPoint":285,"graph":286,"unsanitizedCount":13,"severity":283},"\u003Coptions_menu> (includes\\options_menu.php:0)",{"nodes":287,"edges":290},[288,289],{"id":272,"type":273,"label":274,"file":184,"line":275},{"id":277,"type":278,"label":279,"file":184,"line":198,"wp_function":280},[291],{"from":272,"to":277,"sanitized":156},{"summary":293,"deductions":294},"The \"air-quality\" plugin v0.40 exhibits a mixed security posture.  On the positive side, it has a clean vulnerability history with no known CVEs, uses prepared statements for all SQL queries, and implements nonce and capability checks. There are no observed critical or high severity taint flows, nor are there any dangerous functions or file operations in the code.\n\nHowever, there are notable concerns related to its attack surface and output escaping.  Two out of three AJAX handlers lack authentication checks, presenting a significant risk of unauthorized access or execution of plugin functions. Furthermore, a substantial majority of output (79%) is not properly escaped, indicating a high likelihood of cross-site scripting (XSS) vulnerabilities. The presence of an external HTTP request also warrants attention, although its specific impact is unknown without further analysis.\n\nWhile the lack of historical vulnerabilities and secure SQL practices are strengths, the combination of unprotected AJAX endpoints and widespread unescaped output creates a substantial security risk.  The plugin needs significant improvements in input validation and output sanitization to achieve a secure state.",[295,298],{"reason":296,"points":297},"Unprotected AJAX handlers",10,{"reason":299,"points":300},"Insufficient output escaping",8,"2026-03-16T22:35:50.262Z",{"wat":303,"direct":310},{"assetPaths":304,"generatorPatterns":306,"scriptPaths":307,"versionParams":308},[305],"\u002Fwp-content\u002Fplugins\u002Fair-quality\u002Fcss\u002Fstyle-widget.css",[],[],[309],"air-quality\u002Fcss\u002Fstyle-widget.css?ver=",{"cssClasses":311,"htmlComments":313,"htmlAttributes":314,"restEndpoints":324,"jsGlobals":325,"shortcodeOutput":326},[312],"pk_aqp_air_quality_widget",[],[315,316,317,318,319,320,321,322,323],"name=\"longitude\"","name=\"latitude\"","name=\"weather-info\"","name=\"longitude-default\"","name=\"latitude-default\"","name=\"google-maps-key\"","name=\"waqi-key\"","name=\"user-can-set\"","name=\"weather-info-default\"",[],[],[]]