Download the PHP package vannut/statamic-weather-addon without Composer
On this page you can find all versions of the php package vannut/statamic-weather-addon. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package statamic-weather-addon
Weather Forecast
Display the current weather or a 7-day forecast for any lat/lon on earth.
Attention: Find something broken or missing: please create an issue!
OpenWeatherMap
The weather data itself is coming from the OpenWeatherMap api. Especially the One-Call API which delivers all the relevant data in one call. And to make it even better: It's free for the first 1,000,000 calls/month (or 60 calls/minute)
Installation
- Install add on through composer:
composer require vannut/statamic-weather-addon
- Create an account at OpenWeatherMap.
- After signing in go to API keys and generate a new one.
- Go to your Statamic Control Panel and look for the Weather entry. It should be in the sidebar.
- Fill out the settings-form with your api-key, latitude & longitude
- Go to the Current Data page and fetch your first weather forecast!
- Or Go to the Command line and perform the first initial fetch of your specific data:
php artisan weather:fetchForecast
Renewing the forecast
Nothing is as changeable as the weather. Therefore this addon adds a hourly call to the scheduler of Statamic/Laravel. All you have to do is make sure the scheduler is run, by means of a cron-job. Take a look at Laravels documentation on this!
Usage
This addon does not provide any styling, it just caches the json response and passes the raw data through to the two tags.
You can find every field in the api-response on the api-docs of openweathermap.
Next to the data provided by the API, the addon adds a couple of nice additional fields:
You'll have two tags to your disposal: {{ forecast }}
and {{ current_weather }}
Simple 7 day forecast
With the {{ forecast }}
tag you will be able to display a card per day with the forecast.
This data is located in the days
array which you can traverse and add your styling magic.
This is a very simple example:
Current weather
Want to display the current weather of your location? Use the {{ current_weather }}
tag. As this is a json-collection you can get its data as following:
Widget
You can add a basic Forecast widget to your CP dashboard, by adding it in your /config/statamic/cp.php
: