Awesome Weather Widget


Pro Version available. Dark Sky Weather Provider, Weather icons, AJAX loading, 5 New Layouts, Ability to make Custom Templates, User Location Detection.

This plugin allows you to easily add super clean (and awesome) weather widgets to your site.

Weather by OpenWeatherMap

The weather data is generated by OpenWeatherMap. They require a free API Key to access the data. Once you have the API Key, you can save it in the WordPress admin under 'Settings' -> 'Awesome Weather'

Help Guides

There are lots of juicy Help Guides on my website. These will answer most of the questions you have. Some popular ones include:

About the Developer

The development of this plugin was done by Hal Gatewood mostly when I should be sleeping. I have a full time job that is not building WordPress plugins, so please remember that we you submit your support tickets. I also do not work for OpenWeatherMap and have no control over the quality of the weather data returned from them. Sorry.


Use the built in widget with all of its marvelous settings or add it to a page or theme with the shortcode:
[awesome-weather owm_city_id=”4544349″] or [awesome-weather location="Oklahoma City"]

Settings Overview

  • Location: Enter a string like “Montreal”. You can even get your City ID from OpenWeatherMap and use that.
  • Units: F (default) or C
  • Size: wide (default) or tall
  • Override Title: Change the title in the header bar to whatever, sometimes it pulls weather from a close city
  • Forecast Days: How many days to show in the forecast bar
  • Hide stats: Hide the text stats like humidity, wind, high and lows, etc
  • Background: URL to an image that will be used as the background of the entire widget
  • Custom Background Color: Add a hex color to override the default colors
  • Inline Styles: Add inline CSS styles to your widget
  • Background Image Based on Weather: Use different images for different weather types Help Guide
  • Text Color: Change the text color of the widget without CSS
  • Locale: New locale attribute for shortcodes allows you to change the weather description text without having to change your whole WordPress installation.


  • Portuguese – alvarogois
  • German – Anne Bremer
  • Polish – Femcio
  • Dutch – Marco Rooze
  • Swedish – AJ
  • French – Gilles D.
  • Italian – Cesare C.
  • Russian – Alex
  • Spanish – Joaquín B.
  • Greek – John T.
  • Finnish – Mikko A.
  • Hungarian – Istvan H.
  • Arabic – Fouad Y.
  • Croatian – Vinko P.
  • Nederlands – Schoene H.
  • Turkish – Saban K.


  • Basic wide layout
  • Basic tall layout
  • Micro, using the checkbox 'Hide Stats'
  • Widget Settings
  • Background Image Option (1.2)
  • Add inline styles to your widget and set custom background colors (1.3.1)
  • Use different background images based on weather (1.5)
  • Search for the City ID directly in the widget settings (1.5)


  1. Add plugin to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Register for an OpenWeatherMap API Key
  4. Add your API Key to the settings field in ‘Settings’ -> ‘Awesome Weather’ (added in version 1.5.3)
  5. Use shortcode or widget to display awesome weather on your awesome site

The easiest shortcode setting is just: [awesome-weather location="Oklahoma City"]


September 1, 2019
So I just downloaded this easy awesome weather widget one hour ago and been trying to set it up ever since. Download was the only easy part, followed by registration on their web site to obtain an API key. And what a website it is. Mess. Needed 10 minutes to find where the API key is. Almost quit... Then happy and armed with my brand new API key in clipboard I go and paste it right in. FINALLY. Opening widget settings again and filling my city name as requested. The city was not found it said. Try something like "London or New York" was written bellow, so I did. London I searched. Not found. So I googled it. Then I saw that it is a long term problem no one is talking about and on their support forum they say you need to download cities ID's and use an ID of your city. I click on the link and there opens a list of city packages. Unclear list. In zip RAR formats. WELL, how about NO? All this trouble and I'm not even sure I'm gonna like the style of the widget. So yea, one star.
March 1, 2019
I'm using this widget long period of time in couple blogs. Everything looks ok. Widget have simple functionality and stylish design. Thank you!
February 20, 2019
Does not allow for geolocate to populate location, only allowed as a fixed location.
Read all 85 reviews

Contributors & Developers

“Awesome Weather Widget” is open source software. The following people have contributed to this plugin.


“Awesome Weather Widget” has been translated into 10 locales. Thank you to the translators for their contributions.

Translate “Awesome Weather Widget” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Change log


  • Improvements to City Lookup
  • Either location attribute or owm_city_id is required, not both now!
  • Code cleanup


  • As per consensus in the support forums, we have changed the forecast temp to use the max temp instead of the generic variable returned from the weather data


  • Another attempted fix to the forecast days


  • Attempted fix to forecast days due to OpenWeatherMap API Change


  • Get just the weather data with function: awesome_weather_data
  • trim value of the API key in awe_get_appid
  • removing trailing slash for background images on some systems double slashes were being added


  • PHP7 Support
  • New lat and lon attributes to get weather by coordinates


  • Updated language to allow for custom translations located at: wp-content/languages/awesome-weather/awesome-weather-{locale}.mo
  • Checkbox to hide the attribution in the widget settings or use shortcode attribute hide_attribution=”1″


  • Language fixes and improvements
  • OpenWeatherMap attribution added as per licensing requirements
  • High and Low temperature fix


  • Wording changes to help improve user experience, thus new updated .pot file
  • Bug fix for AWESOME_WEATHER_APPID constant, wasn’t always being used.
  • Changed awesome-weather-widget.js to awesome-weather-widget-admin.js
  • Moved Widget functions into widget.php file
  • Fixed locations searches that contain commas
  • Check for variables exist before trying to display them (minimizes PHP Notices)
  • Rounding wind speed to nearest integer
  • Added filters used in the PRO version to keep consistancy

  • Added SK to locales and a filter to modify list of available locales

  • Fix trailing slash issue with one of the preset background image checks


  • Two new filters available to remove to the Google font Open Sans. (awesome_weather_use_google_font AND awesome_weather_google_font_queue_name)
  • Added new missing background preset atmosphere.jpg


  • New constant for the AppID: AWESOME_WEATHER_APPID. Set in wp-config.php for multisite installations
  • Shortcode attribute for locale: locale="fr"
  • Shortcode attribute for the units display symbol: units_display_symbol="°F"


  • Preset background images added for the ‘Use Different Background Images Based on Weather’ option
  • Color picker to choose a font color for the whole widget
  • CSS whitespace: no-wrap on the little degree symbols
  • Fixed wind speed to mph for ‘Imperial’ and m/s for Celsius as per the OpenWeatherMap weather data section
  • Updated .pot file

  • Added an error message in the admin widget page to let users know they need an APPID


  • Added spot for API key in ‘Settings’ -> ‘Awesome Weather’
  • Added new setting to decide how to show error messages.


  • Updated WP_Widget construct to prevent future breaking.


  • Changed .custom class to .awe_custom


  • You can now speed up your weather and provide better accuracy by using the new Search box in the widget to find the OpenWeatherMap City ID.
  • We also added the ability to use different background images by weather. Also new CSS properties using the weather condition code and text are added so you can target based on weather type.
  • Added several new filters to modify aspects of the weather widget like changing the C and F to a Degree symbol.
  • Fixed an issue where changing the forecast days would not clear the cache.
  • Default cache is now 30 minutes

  • Hungarian language added (thanks Istvan Hidegkuti

  • Finnish language added (thanks Mikko Anttila)

More languages correctly supported from the OpenWeatherMap API


  • Fixed spanish translations for weather description
  • Transient bug for languages also


Added box-sizing: border-box to hopefully clean up the widget in many themes.


  • New translations added.
  • Caching fixes
  • Fixed checkboxes in widget settings
  • Checked to be working with WordPress 3.9


  • Extended forecast now uses WP current_time to determine what days to show, setting in ‘Settings’ -> ‘General’
  • Added a Widget Title field that uses the standard widget code from the sidebar (optional)
  • Fixed bottom margin issue for Firefox
  • Minor CSS tweaks
  • Support for OpenWeatherMaps City ID, just insert in the Location field.
  • Support for rgba() in the Custom Background Color
  • Changed default cached time from 1 hour to 3 hours
  • Cleaned up two PHP notices in admin


Fixed issue with Location stripping spaces from text cause weather to not get accessed. Thanks @storkontheroof!


Moved Google Font out of CSS into enqueue


  • Improved support for poorly coded themes that load the before_title and after_title with extra divs and don’t take into account that widgets may not use a title.
  • Portuguese translation created by user: alvarogois


  • Added setting for color override
  • Added URL param to clear transient cache ‘?clear_awesome_widget’
  • Added new translations for the days of the week in the extended forecast
  • Improved caching support
  • Ability to add inline styles to the widget shortcode


  • Upgraded to most recent OpenWeatherMap APIS
  • Ready for translations
  • Current Locales available from OpenWeatherMap:
  • English – en, Russian – ru, Italian – it, Spanish – sp, Ukrainian – ua, German – de, Portuguese – pt, Romanian – ro, Polish – pl, Finnish – fi, Dutch – nl, French – fr, Bulgarian – bg, Swedish – se, Chinese Traditional – zh_tw, Chinese Simplified – zh_cn, Turkish – tr


  • Improved error handling with API calls


  • Widget with custom background CSS issue.


  • Forecast now stops showing today.


  • remove file_get_contents and used wp_remote_get


  • Background Image Option in widget


  • Background Image Option


  • Errors are now commented out. Look in the source to see what the problem is.
  • Ability to add link to openweathermap for extended forecast


  • Removed debugging code, sorry!


  • Changed API endpoints


  • Initial load of the plugin.