{"id":139199,"date":"2021-04-10T07:00:03","date_gmt":"2021-04-10T07:00:03","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/weather-forecast-widget\/"},"modified":"2025-08-02T18:33:35","modified_gmt":"2025-08-02T18:33:35","slug":"weather-forecast-widget","status":"publish","type":"plugin","link":"https:\/\/tah.wordpress.org\/plugins\/weather-forecast-widget\/","author":17763799,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.1.7","stable_tag":"1.1.7","tested":"6.8.5","requires":"3.0.1","requires_php":"","requires_plugins":null,"header_name":"Weather Forecast Widget","header_author":"Dominik Luger","header_description":"The plugin \"Weather Forecast Widget\" shows a weather forecast widget. The widget can be implemented with the help of a shortcode.","assets_banners_color":"9f9c98","last_updated":"2025-08-02 18:33:35","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/paypal.me\/bergtourentipptirol","header_plugin_uri":"https:\/\/www.bergtourentipp-tirol.at","header_author_uri":"https:\/\/www.bergtourentipp-tirol.at","rating":4,"author_block_rating":0,"active_installs":200,"downloads":6765,"num_ratings":3,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"adminbergtourentipptirol","date":"2021-10-30 18:11:09"},"1.0.1":{"tag":"1.0.1","author":"adminbergtourentipptirol","date":"2021-11-01 07:00:07"},"1.1.0":{"tag":"1.1.0","author":"adminbergtourentipptirol","date":"2021-11-28 09:44:38"},"1.1.1":{"tag":"1.1.1","author":"adminbergtourentipptirol","date":"2021-11-28 16:43:43"},"1.1.2":{"tag":"1.1.2","author":"adminbergtourentipptirol","date":"2021-11-28 17:43:57"},"1.1.3":{"tag":"1.1.3","author":"adminbergtourentipptirol","date":"2022-01-07 10:40:24"},"1.1.4":{"tag":"1.1.4","author":"adminbergtourentipptirol","date":"2022-01-17 13:45:57"},"1.1.5":{"tag":"1.1.5","author":"adminbergtourentipptirol","date":"2022-01-17 14:11:40"},"1.1.6":{"tag":"1.1.6","author":"adminbergtourentipptirol","date":"2025-08-01 19:54:53"},"1.1.7":{"tag":"1.1.7","author":"adminbergtourentipptirol","date":"2025-08-02 18:33:35"}},"upgrade_notice":{"1.1.7":"<ul>\n<li>Compatibility check for WordPress 6.8.2 confirmed<\/li>\n<li>Migration of API requests from OpenWeatherMap One Call 2.5 to One Call 3.0<\/li>\n<\/ul>","1.1.6":"<ul>\n<li>Compatibility check for WordPress 6.6.2 confirmed<\/li>\n<li>Added notice about OpenWeatherMap One Call 3.0 changes (API key now requires billing)<\/li>\n<\/ul>","1.1.5":"<ul>\n<li>Bug fixing<\/li>\n<\/ul>","1.1.4":"<ul>\n<li>Multiple new functionalities<\/li>\n<\/ul>","1.1.3":"<ul>\n<li>Bug fixing + multiple new functionalities<\/li>\n<\/ul>","1.1.2":"<ul>\n<li>Bug fixing incompability between bootstrap templates and some themes<\/li>\n<\/ul>","1.1.1":"<ul>\n<li>Bug fixing incompability between bootstrap templates and some themes<\/li>\n<\/ul>","1.1.0":"<ul>\n<li>Bug fixing + multiple new functionalities<\/li>\n<\/ul>","1.0.1":"<ul>\n<li>Fixing the wind speed conversion bug - the wind speed will now be converted correctly to km\/h<\/li>\n<\/ul>","1.0.0":"<ul>\n<li>Initial load of the plugin.<\/li>\n<\/ul>"},"ratings":{"1":0,"2":1,"3":0,"4":0,"5":2},"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":2512552,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":2636468,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.1.5","1.1.6","1.1.7"],"block_files":[],"assets_screenshots":{"screenshot-1.PNG":{"filename":"screenshot-1.PNG","revision":2658736,"resolution":"1","location":"assets","locale":""},"screenshot-2.PNG":{"filename":"screenshot-2.PNG","revision":2636474,"resolution":"2","location":"assets","locale":""},"screenshot-3.PNG":{"filename":"screenshot-3.PNG","revision":2658736,"resolution":"3","location":"assets","locale":""},"screenshot-4.PNG":{"filename":"screenshot-4.PNG","revision":2658736,"resolution":"4","location":"assets","locale":""},"screenshot-5.PNG":{"filename":"screenshot-5.PNG","revision":2658736,"resolution":"5","location":"assets","locale":""},"screenshot-6.png":{"filename":"screenshot-6.png","revision":2658736,"resolution":"6","location":"assets","locale":""},"screenshot-7.png":{"filename":"screenshot-7.png","revision":2658736,"resolution":"7","location":"assets","locale":""}},"screenshots":{"1":"The SETTINGS PAGE contains all parameters, which are available for the configuration of this plugin.","2":"The SETTINGS PAGE contains all parameters, which are available for the configuration of this plugin.","3":"Weather Forecast Widget - TEMPLATE 1","4":"Weather Forecast Widget - TEMPLATE 2","5":"Weather Forecast Widget - TEMPLATE 3","6":"Weather Forecast Widget - ALERT TEMPLATE 1 with alerts","7":"Weather Forecast Widget - ALERT TEMPLATE 1 without alerts"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[10469,80,4899,7878,7956],"plugin_category":[43],"plugin_contributors":[198303],"plugin_business_model":[],"class_list":["post-139199","plugin","type-plugin","status-publish","hentry","plugin_tags-openweathermap","plugin_tags-shortcode","plugin_tags-weather","plugin_tags-weather-forecast","plugin_tags-weather-widget","plugin_category-customization","plugin_contributors-adminbergtourentipptirol","plugin_committers-adminbergtourentipptirol"],"banners":{"banner":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/banner-772x250.png?rev=2636468","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/icon-256x256.png?rev=2512552","icon_2x":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/icon-256x256.png?rev=2512552","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/screenshot-1.PNG?rev=2658736","caption":"The SETTINGS PAGE contains all parameters, which are available for the configuration of this plugin."},{"src":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/screenshot-2.PNG?rev=2636474","caption":"The SETTINGS PAGE contains all parameters, which are available for the configuration of this plugin."},{"src":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/screenshot-3.PNG?rev=2658736","caption":"Weather Forecast Widget - TEMPLATE 1"},{"src":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/screenshot-4.PNG?rev=2658736","caption":"Weather Forecast Widget - TEMPLATE 2"},{"src":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/screenshot-5.PNG?rev=2658736","caption":"Weather Forecast Widget - TEMPLATE 3"},{"src":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/screenshot-6.png?rev=2658736","caption":"Weather Forecast Widget - ALERT TEMPLATE 1 with alerts"},{"src":"https:\/\/ps.w.org\/weather-forecast-widget\/assets\/screenshot-7.png?rev=2658736","caption":"Weather Forecast Widget - ALERT TEMPLATE 1 without alerts"}],"raw_content":"<!--section=description-->\n<h4>GENERAL<\/h4>\n\n<p>The weather data for this widget will be retrieved from the <a href=\"https:\/\/openweathermap.org\/api\">OpenWeatherMap API<\/a> with your own API key.<\/p>\n\n<h4>OPENWEATHERMAP API<\/h4>\n\n<p>\u26a0\ufe0f <strong>Important Note:<\/strong> OpenWeatherMap has transitioned from version One Call API 2.5 to the new <strong>One Call API 3.0<\/strong>.<br \/>\nAs of now, <strong>usage of the API is no longer possible without adding valid billing information (e.g. a credit card)<\/strong> to your OpenWeatherMap account \u2013 even for the free tier.<\/p>\n\n<p>This means that the <strong>Weather Widget will not work anymore<\/strong> unless:\n- you switch to the new <strong>One Call 3.0 API<\/strong>, and\n- you have a valid payment method on file in your OpenWeatherMap account.<\/p>\n\n<p>\ud83d\udd12 <strong>Recommendation:<\/strong><br \/>\nTo avoid unexpected charges, it is highly recommended to set a <strong>billing cap \/ usage limit<\/strong> in your OpenWeatherMap account under <a href=\"https:\/\/home.openweathermap.org\/plans\">Billing Plans<\/a> after adding a payment method.<\/p>\n\n<p>For pricing details and limits, visit: <a href=\"https:\/\/openweathermap.org\/price\">Pricing - OpenWeatherMap<\/a><\/p>\n\n<h4>INPUT DATA<\/h4>\n\n<p>You can show the weather for a <strong>CITY<\/strong> (input data: city name) or for specific <strong>COORDINATES<\/strong> (input data: latitude &amp; longitude coordinates) in the widget.<\/p>\n\n<h4>PLACEMENT\/SHORTCODE<\/h4>\n\n<p>The weather widget can be implemented in a page, a post or into the widget area with the help of the shortcode <strong>[weather_forecast_widget]<\/strong>. Furthermore you\u00b4ll be able to pass different attributes to each shortcode to override your settings for this widget placement (e.g. manage widget title with an shortcode attribute).<\/p>\n\n<h4>TEMPLATES<\/h4>\n\n<p>Currently you can choose 3 templates for the widget.\n* <strong>Template 1<\/strong>\n    * Current day\u00b4s weather with a weather forecast for the next 3 days\n* <strong>Template 2<\/strong>\n    * <strong>Template 2 uses Bootstrap!<\/strong>\n    * Current day\u00b4s weather with an hourly weather forecast and a weather forecast for the next 3 days\n* <strong>Template 3<\/strong>\n    * <strong>Template 3 uses Bootstrap!<\/strong>\n    * Weather for the current day and for the next 7 days, each with an hourly weather forecast and a weather forecast for the next 3 days\n* <strong>Alert Template 1<\/strong>\n    * <strong>Alert Template 1 uses Bootstrap!<\/strong>\n    * Active weather alerts<\/p>\n\n<h4>BACKGROUND IMAGE<\/h4>\n\n<p>For this widget, you\u00b4ll be able to choose <strong>your own background image<\/strong>. Either you set a static background image in the widget settings or you choose the dynamic variant (thumbnail of the page\/post, where the shortcode is placed) will be used as a background image.<\/p>\n\n<h4>WEATHER DATA<\/h4>\n\n<p>In addition to the <strong>daily weather forecast<\/strong>, an <strong>hourly weather forecast<\/strong> can also be displayed in the widget. Both the daily and hourly weather forecast can be collapsed.<\/p>\n\n<h4>WEATHER ALERTS<\/h4>\n\n<p>The weather widget also shows weather alerts. These alerts are dismissable.<\/p>\n\n<h4>WEATHER ICONS<\/h4>\n\n<p>In the widget you\u00b4ll find awesome and beautiful weather icons. In the plugins settings page you can choose which weather icons you want to use for the widget.\n* <strong>Animated Icons Filled<\/strong>\n* <strong>Animated Icons Not Filled<\/strong>\n* <strong>Static Icons<\/strong><\/p>\n\n<h4>LAZY LOADING<\/h4>\n\n<p>You have the possibility to load the widget with <strong>lazy loading<\/strong> (ajax) to load the data only when necessary.<\/p>\n\n<h4>CACHING<\/h4>\n\n<p>Nowadays <strong>caching<\/strong> is an important topic. This weather forecast widget makes it possible to cache the received weather data for the next visitor, who will visit your website page\/post next time. You\u00b4ll be able to set your desired caching time in the settings (caching time possible up to 1 hour =&gt; this should ensure that the weather data in the widget is as current as possible). With this caching possibility you\u00b4ll also save API calls.<\/p>\n\n<h4>SHORTCODE EXAMPLES<\/h4>\n\n<ul>\n<li>Retrieve weather data for a city \n\n<ul>\n<li><strong>[weather_forecast_widget city=\"Kufstein\"]<\/strong><\/li>\n<\/ul><\/li>\n<li>Retrieve weather data for a city and show city name as title text\n\n<ul>\n<li><strong>[weather_forecast_widget city=\"Kufstein\" title_cityname=\"X\"]<\/strong><\/li>\n<\/ul><\/li>\n<li>Retrieve weather data for specific coordinates\n\n<ul>\n<li><strong>[weather_forecast_widget lat=\"47.5824\" lon=\"12.1627\"]<\/strong><\/li>\n<\/ul><\/li>\n<li>Retrieve weather data for specific coordinates and show \"Weather for Weather Widget\" as title text\n\n<ul>\n<li><strong>[weather_forecast_widget lat=\"47.5824\" lon=\"12.1627\" title_overwrite=\"Weather for Weather Widget\"]<\/strong><\/li>\n<\/ul><\/li>\n<li>Retrieve weather data with lazy loading and template 3 for specific coordinates and expand the hourly and daily forecast initially\n\n<ul>\n<li><strong>[weather_forecast_widget lazy_loading=\"X\" template=\"3\" hourly_forecast=\"show\" daily_forecast=\"show\" lat=\"47.5824\" lon=\"12.1627\"]<\/strong><\/li>\n<\/ul><\/li>\n<li>Retrieve weather alerts with lazy loading and alert template 1 for specific coordinates and expand the weather alerts initially\n\n<ul>\n<li><strong>[weather_forecast_widget lazy_loading=\"X\" template=\"alert_1\" alerts=\"show\" lat=\"47.5824\" lon=\"12.1627\" max_width=\"500px\"]<\/strong><\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>SETTINGS<\/h4>\n\n<ul>\n<li>Input box for your <strong>OPEN WEATHER MAP API key<\/strong> (the api key will be tested for validity while saving!)<\/li>\n<li>Dropdown box to choose if caching of the weather data is necessary and if yes, which <strong>CACHE TIME<\/strong> should be used.<\/li>\n<li>Media uploader\/selector to choose a <strong>BACKGROUND IMAGE<\/strong> for the widget (optional - otherwise the page\/post thumbnail will be used)<\/li>\n<li>Radiobuttons to select the <strong>WIDGET TITLE TEXT<\/strong>, which will be displayed in the widget. This setting will be used as <strong>a default if nothing else will be passed in the shortcode<\/strong>. If you\u00b4ll pass <strong>title_cityname<\/strong> or <strong>title_overwrite<\/strong> as a shortcode attribute, this attribute will be processed in the widget output.<\/li>\n<li>Dropdown to choose the <strong>POST META FIELD<\/strong> for the title text, if you selected the readio button \"<strong>Post Meta Field (choose one of the dropdown below)<\/strong>\"<\/li>\n<li>Choose, which <strong>WEATHER VALUES<\/strong> should be shown in the widget<\/li>\n<li>Choose, which <strong>UNITS<\/strong> should be used to display the weather values<\/li>\n<li>Choose, which <strong>WEATHER ICONS<\/strong> should be used for the widget<\/li>\n<\/ul>\n\n<h4>TRANSLATIONS<\/h4>\n\n<ul>\n<li>German - adminbergtourentipptirol<\/li>\n<\/ul>\n\n<h3>Credits<\/h3>\n\n<ul>\n<li>Static Weather Icons provided from <strong><a href=\"https:\/\/github.com\/erikflowers\/weather-icons\">Erik Flowers Weather Icons<\/a><\/strong><\/li>\n<li>Animated Weather Icons provided from <strong><a href=\"https:\/\/github.com\/basmilius\/weather-icons\">Basmilius Weather Icons<\/a><\/strong><\/li>\n<\/ul>\n\n<!--section=installation-->\n<h4>Via your ADMIN PANEL<\/h4>\n\n<ol>\n<li>Visit \"Plugins &gt; Add New\"<\/li>\n<li>Search for \"Weather Forecast Widget\"<\/li>\n<li>Activate the \"Weather Forecast Widget\" through the plugins menu in your admin panel<\/li>\n<li>Go to \"After activation\" below.<\/li>\n<\/ol>\n\n<h4>MANUALLY<\/h4>\n\n<ol>\n<li>Download <strong>weather-forecast-widget.zip<\/strong> - <a href=\"https:\/\/wordpress.org\/plugins\/weather-forecast-widget\">from Weather Forecast Widget Plugin Folder<\/a> - and unzip<\/li>\n<li>Upload the <strong>weather-forecast-widget<\/strong> folder to the \"\/wp-content\/plugins\/\" directory using your FTP client<\/li>\n<li>Activate the \"Weather Forecast Widget\" through the plugins menu in your admin panel<\/li>\n<li>Go to \"After activation\" below.<\/li>\n<\/ol>\n\n<h4>AFTER ACTIVATION<\/h4>\n\n<ol>\n<li>Go to \"Weather Forecast Widget &gt; Settings\" in your admin panel<\/li>\n<li>Input your Open Weather Map API key and choose your desired settings.<\/li>\n<li>You're done and you can now implement the shortcode in your sidebar, posts and pages.<\/li>\n<\/ol>\n\n<!--section=changelog-->\n<h4>1.1.7<\/h4>\n\n<ul>\n<li>Compatibility check for WordPress 6.8.2 confirmed<\/li>\n<li>Migration of API requests from OpenWeatherMap One Call 2.5 to One Call 3.0<\/li>\n<li>Minor improvements and cleanup<\/li>\n<\/ul>\n\n<h4>1.1.6<\/h4>\n\n<ul>\n<li>Compatibility check for WordPress 6.6.2 confirmed<\/li>\n<li>Minor improvements and cleanup<\/li>\n<li>Added notice about OpenWeatherMap One Call 3.0 changes (API key now requires billing)<\/li>\n<li>Preparation for integration of <a href=\"https:\/\/www.weatherapi.com\/\">Weather API<\/a><\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Bug fixing: Removed a div end tag that was redundant<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>New: Bootstrap is only loaded by this plugin if it has not yet been activated (by the active theme or other active plugins).<\/li>\n<li>New: New template: Alert Template 1 (\"alert_1\").<\/li>\n<li>New: New shortcode parameter \"alerts\".<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Bug fixing: Especially Template 2 + Template 3<\/li>\n<li>Bug fixing: Display the name of the day in one line in the daily forecast<\/li>\n<li>Bug fixing: There is an overflow in the hourly forecast on smaller devices (e.g. on smartphones) . Therefore, on smaller devices, only up to 3 columns are displayed over the day. On larger devices, all hourly forecast columns will remain.<\/li>\n<li>New: New shortcode parameters \"show_hourly_forecast\", \"show_daily_forecast\", \"show_alerts\".<\/li>\n<li>New: From now on several [weather_forecast_widget] shortcodes can be used on one page with activated lazy loding (ajax).<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Bug fixing incompability between bootstrap templates and some themes<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Bug fixing incompability between bootstrap templates and some themes<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Bug fixing: Template 1<\/li>\n<li>New: Template 2<\/li>\n<li>New: Template 3<\/li>\n<li>New: Lazy loading shortcode attribute\/functionality<\/li>\n<li>New: Hourly\/daily weather forecast functionality<\/li>\n<li>New: Animated weather icons embedded<\/li>\n<li>New: Show weather alerts<\/li>\n<li>New: Using Bootstrap and Fontawesome<\/li>\n<li>Update the \"Tested up to\" value<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Bug fixing: Template 1<\/li>\n<li>Update the \"Tested up to\" value<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial load of the plugin.<\/li>\n<\/ul>","raw_excerpt":"&quot;Weather Forecast Widget&quot; displays current weather and hourly\/daily forecasts in a widget using a shortcode.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/139199","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=139199"}],"author":[{"embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/adminbergtourentipptirol"}],"wp:attachment":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=139199"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=139199"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=139199"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=139199"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=139199"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=139199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}