WordPress plugin for parsing and displaying NOAA weather forecasts with automatic alert detection.
Features
- Automated NOAA Parsing: Downloads and parses weather forecasts hourly
- Alert Detection: Automatically extracts warnings, watches, and advisories
- Three Forecast Types:
- Standard Forecast (miz071.txt)
- Marine Forecast (lmz845.txt)
- Extended Forecast
- Smart Caching: Efficient file-based caching system
- Flexible Display: Multiple shortcodes with different formats
- Emoji Support: Visual indicators for weather conditions and alert severity
Installation
- Upload the plugin folder to
/wp-content/plugins/
- Activate the plugin through the ‘Plugins’ menu in WordPress
- The plugin will automatically create
/wp-content/wx/ directory for cache files
- Forecasts will be downloaded automatically every hour
Alert System
The plugin automatically detects and categorizes weather alerts:
Alert Types
WARNING (🔴 Severe)
- Highest severity
- Requires immediate action
- Examples: Gale Warning, Tornado Warning, Flood Warning
- Emoji indicators: 🌬️💨 (Gale), ⛈️ (Storm), 🌪️ (Tornado), ❄️ (Winter)
WATCH (🟠 High)
- Conditions are favorable for severe weather
- Be prepared to take action
- Examples: Tornado Watch, Flood Watch, Winter Storm Watch
- Emoji indicators: 👀⚠️ (Generic), ⛈️👀 (Storm), 🌪️👀 (Tornado)
ADVISORY (🟡 Moderate)
- Less severe but still important
- Examples: Small Craft Advisory, Wind Advisory, Fog Advisory
- Emoji indicators: ⛵⚠️ (Small Craft), 💨 (Wind), 🌫️ (Fog)
Shortcodes
Alert Shortcodes
Display weather alerts and warnings:
No active alerts
⛵⚠️
ADVISORY: SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
No active alerts
Marine Alerts
⛵⚠️
ADVISORY: SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
[weather_alerts] - Standard forecast alerts
[marine_alerts] - Marine forecast alerts (e.g., Gale Warnings)
[extended_alerts] - Extended forecast alerts
[all_weather_alerts] - All alerts from all forecast types
Format Options:
⛵⚠️
ADVISORY: SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
⛵⚠️ SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
[marine_alerts format="banner"] - Large banner style (default)
[marine_alerts format="list"] - Compact list style
Individual Forecast Periods
Display a specific forecast period:
THROUGH EARLY EVENING 🌧️ ❄️
Snow showers likely. New snow accumulation an inch or less. Highs in the upper 30s. North winds 5 to 15 mph with gusts to around 25 mph. Chance of snow 70 percent.
– Standard forecast, first period
THROUGH EARLY EVENING ⛈️ ❄️ 💨 🌊
North winds 15 to 25 knots. Snow showers, rain showers likely and a slight chance of thunderstorms. Waves 7 to 10 feet.
– Marine forecast, first period
THROUGH EARLY EVENING 🌧️ ❄️
Snow showers likely. New snow accumulation an inch or less. Highs in the upper 30s. North winds 5 to 15 mph with gusts to around 25 mph. Chance of snow 70 percent.
– Extended forecast, first period
[weather_verbose index="0"] - Standard forecast, first period
[weather_marine index="0"] - Marine forecast, first period
[weather_extended index="0"] - Extended forecast, first period
Index values:
0 = First period (e.g., “REST OF TODAY”)
1 = Second period (e.g., “TONIGHT”)
2 = Third period, etc.
All Forecasts
Display all forecast periods:
Snow showers likely. New snow accumulation an inch or less. Highs in the upper 30s. North winds 5 to 15 mph with gusts to around 25 mph. Chance of snow 70 percent.
Snow showers in the evening, then a chance of snow showers after midnight. Snow accumulation 1 to 4 inches. Lows around 20. North winds 5 to 10 mph. Gusts up to 40 mph decreasing to 25 mph after midnight. Chance of snow 100 percent.
Mostly sunny with a slight chance of snow showers in the morning, then snow showers in the afternoon. Snow accumulation 1 to 2 inches. Highs in the mid 30s. North winds 5 to 10 mph with gusts to around 20 mph becoming northwest 5 to 15 mph with gusts to around 30 mph in the afternoon. Chance of snow 90 percent.
Snow showers. Snow accumulation 1 to 3 inches. Lows in the mid 20s. Northwest winds around 10 mph. Gusts up to 30 mph decreasing to 20 mph after midnight. Chance of snow 90 percent.
Cloudy. A chance of snow showers in the morning, then a chance of snow showers, possibly mixed with rain showers in the afternoon. Highs in the mid 40s near Lake Michigan and around 40 inland. Southwest winds 5 to 15 mph with gusts to around 30 mph. Chance of precipitation 40 percent.
Partly cloudy. A 20 percent chance of rain showers after midnight. Lows around 30. Southwest winds 5 to 15 mph with gusts to around 30 mph.
Partly sunny. Highs in the mid 40s.
Partly cloudy. Lows in the lower 30s.
Mostly sunny. Highs in the upper 40s.
Partly cloudy. Lows in the lower 30s.
Mostly sunny. Highs in the lower 50s.
Partly cloudy in the evening then becoming mostly cloudy. A 20 percent chance of rain showers. Lows in the mid 30s.
Mostly cloudy with a 20 percent chance of rain showers. Highs in the upper 50s.
Partly cloudy in the evening then becoming mostly cloudy. A 50 percent chance of rain showers. Lows in the lower 40s.
Mostly cloudy with a 50 percent chance of rain showers. Highs in the mid 50s.
– All standard forecasts
North winds 15 to 25 knots. Snow showers, rain showers likely and a slight chance of thunderstorms. Waves 7 to 10 feet.
Northeast winds to 30 knots. Snow showers likely in the evening, then a chance of snow showers after midnight. Waves 7 to 10 feet subsiding to 4 to 6 feet after midnight.
North winds 15 to 25 knots backing northwest to 30 knots early in the afternoon. Snow showers. Waves 3 to 5 feet building to 6 to 9 feet early in the afternoon.
Northwest winds to 30 knots. Snow showers and a slight chance of rain showers. Waves 8 to 12 feet.
West winds to 30 knots backing southwest gales to 40 knots in the late morning and afternoon. Cloudy with a chance of rain and snow showers. Waves 6 to 8 feet building to 7 to 11 feet early in the afternoon.
West gales to 40 knots. Partly cloudy. Waves 8 to 12 feet.
West gales to 40 knots. Partly sunny. Waves 7 to 11 feet.
West winds 20 to 25 knots decreasing to 15 to 20 knots early in the afternoon. Mostly sunny. Waves 6 to 8 feet.
Southeast winds 10 to 15 knots backing east early in the afternoon. Mostly sunny. Waves 1 to 3 feet.
– All marine forecasts
Snow showers likely. New snow accumulation an inch or less. Highs in the upper 30s. North winds 5 to 15 mph with gusts to around 25 mph. Chance of snow 70 percent.
Snow showers in the evening, then a chance of snow showers after midnight. Snow accumulation 1 to 4 inches. Lows around 20. North winds 5 to 10 mph. Gusts up to 40 mph decreasing to 25 mph after midnight. Chance of snow 100 percent.
Mostly sunny with a slight chance of snow showers in the morning, then snow showers in the afternoon. Snow accumulation 1 to 2 inches. Highs in the mid 30s. North winds 5 to 10 mph with gusts to around 20 mph becoming northwest 5 to 15 mph with gusts to around 30 mph in the afternoon. Chance of snow 90 percent.
Snow showers. Snow accumulation 1 to 3 inches. Lows in the mid 20s. Northwest winds around 10 mph. Gusts up to 30 mph decreasing to 20 mph after midnight. Chance of snow 90 percent.
Cloudy. A chance of snow showers in the morning, then a chance of snow showers, possibly mixed with rain showers in the afternoon. Highs in the mid 40s near Lake Michigan and around 40 inland. Southwest winds 5 to 15 mph with gusts to around 30 mph. Chance of precipitation 40 percent.
Partly cloudy. A 20 percent chance of rain showers after midnight. Lows around 30. Southwest winds 5 to 15 mph with gusts to around 30 mph.
Partly sunny. Highs in the mid 40s.
Partly cloudy. Lows in the lower 30s.
Mostly sunny. Highs in the upper 40s.
Partly cloudy. Lows in the lower 30s.
Mostly sunny. Highs in the lower 50s.
Partly cloudy in the evening then becoming mostly cloudy. A 20 percent chance of rain showers. Lows in the mid 30s.
Mostly cloudy with a 20 percent chance of rain showers. Highs in the upper 50s.
Partly cloudy in the evening then becoming mostly cloudy. A 50 percent chance of rain showers. Lows in the lower 40s.
Mostly cloudy with a 50 percent chance of rain showers. Highs in the mid 50s.
– All extended forecasts
[weather_verbose_all] - All standard forecasts
[weather_marine_all] - All marine forecasts
[weather_extended_all] - All extended forecasts
Format Options:
North winds 15 to 25 knots. Snow showers, rain showers likely and a slight chance of thunderstorms. Waves 7 to 10 feet.
Northeast winds to 30 knots. Snow showers likely in the evening, then a chance of snow showers after midnight. Waves 7 to 10 feet subsiding to 4 to 6 feet after midnight.
North winds 15 to 25 knots backing northwest to 30 knots early in the afternoon. Snow showers. Waves 3 to 5 feet building to 6 to 9 feet early in the afternoon.
Northwest winds to 30 knots. Snow showers and a slight chance of rain showers. Waves 8 to 12 feet.
West winds to 30 knots backing southwest gales to 40 knots in the late morning and afternoon. Cloudy with a chance of rain and snow showers. Waves 6 to 8 feet building to 7 to 11 feet early in the afternoon.
West gales to 40 knots. Partly cloudy. Waves 8 to 12 feet.
West gales to 40 knots. Partly sunny. Waves 7 to 11 feet.
West winds 20 to 25 knots decreasing to 15 to 20 knots early in the afternoon. Mostly sunny. Waves 6 to 8 feet.
Southeast winds 10 to 15 knots backing east early in the afternoon. Mostly sunny. Waves 1 to 3 feet.
| Period | Forecast |
|---|
| THROUGH EARLY EVENING ⛈️ ❄️ 💨 🌊 | North winds 15 to 25 knots. Snow showers, rain showers likely and a slight chance of thunderstorms. Waves 7 to 10 feet. |
| TONIGHT 🌧️ ❄️ 💨 🌊 | Northeast winds to 30 knots. Snow showers likely in the evening, then a chance of snow showers after midnight. Waves 7 to 10 feet subsiding to 4 to 6 feet after midnight. |
| MONDAY 🌧️ ❄️ 💨 🌊 | North winds 15 to 25 knots backing northwest to 30 knots early in the afternoon. Snow showers. Waves 3 to 5 feet building to 6 to 9 feet early in the afternoon. |
| MONDAY NIGHT 🌧️ ❄️ 💨 🌊 | Northwest winds to 30 knots. Snow showers and a slight chance of rain showers. Waves 8 to 12 feet. |
| VETERANS DAY 🌧️ ❄️ ☁️ 🌬️💨 🌊 | West winds to 30 knots backing southwest gales to 40 knots in the late morning and afternoon. Cloudy with a chance of rain and snow showers. Waves 6 to 8 feet building to 7 to 11 feet early in the afternoon. |
| TUESDAY NIGHT 🌙⛅ 🌬️💨 🌊 | West gales to 40 knots. Partly cloudy. Waves 8 to 12 feet. |
| WEDNESDAY ☀️ 🌬️💨 🌊 | West gales to 40 knots. Partly sunny. Waves 7 to 11 feet. |
| THURSDAY ☀️ 💨 🌊 | West winds 20 to 25 knots decreasing to 15 to 20 knots early in the afternoon. Mostly sunny. Waves 6 to 8 feet. |
| FRIDAY ☀️ 💨 🌊 | Southeast winds 10 to 15 knots backing east early in the afternoon. Mostly sunny. Waves 1 to 3 feet. |
THROUGH EARLY EVENING ⛈️ ❄️ 💨 🌊: North winds 15 to 25 knots. Snow showers, rain showers likely and a slight chance of thunderstorms. Waves 7 to 10 feet.
TONIGHT 🌧️ ❄️ 💨 🌊: Northeast winds to 30 knots. Snow showers likely in the evening, then a chance of snow showers after midnight. Waves 7 to 10 feet subsiding to 4 to 6 feet after midnight.
MONDAY 🌧️ ❄️ 💨 🌊: North winds 15 to 25 knots backing northwest to 30 knots early in the afternoon. Snow showers. Waves 3 to 5 feet building to 6 to 9 feet early in the afternoon.
MONDAY NIGHT 🌧️ ❄️ 💨 🌊: Northwest winds to 30 knots. Snow showers and a slight chance of rain showers. Waves 8 to 12 feet.
VETERANS DAY 🌧️ ❄️ ☁️ 🌬️💨 🌊: West winds to 30 knots backing southwest gales to 40 knots in the late morning and afternoon. Cloudy with a chance of rain and snow showers. Waves 6 to 8 feet building to 7 to 11 feet early in the afternoon.
TUESDAY NIGHT 🌙⛅ 🌬️💨 🌊: West gales to 40 knots. Partly cloudy. Waves 8 to 12 feet.
WEDNESDAY ☀️ 🌬️💨 🌊: West gales to 40 knots. Partly sunny. Waves 7 to 11 feet.
THURSDAY ☀️ 💨 🌊: West winds 20 to 25 knots decreasing to 15 to 20 knots early in the afternoon. Mostly sunny. Waves 6 to 8 feet.
FRIDAY ☀️ 💨 🌊: Southeast winds 10 to 15 knots backing east early in the afternoon. Mostly sunny. Waves 1 to 3 feet.
- Cards Format (default)
[weather_marine_all format="cards"]
- Grid layout with styled cards
- Best for visual appeal
- Each period in its own card
- Table Format
[weather_marine_all format="table"]
- Structured table layout
- Good for comparing periods
- Compact view
- Simple Format
[weather_marine_all format="simple"]
- Plain text with minimal styling
- Fastest to load
- Good for sidebar widgets
Example Usage
Display Marine Alerts and Today’s Forecast
<!-- Show any marine warnings prominently -->
⛵⚠️
ADVISORY: SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
<!– Show current marine conditions –> <h3>Current Marine Conditions</h3>
THROUGH EARLY EVENING ⛈️ ❄️ 💨 🌊
North winds 15 to 25 knots. Snow showers, rain showers likely and a slight chance of thunderstorms. Waves 7 to 10 feet.
Complete Weather Page
<!-- All active alerts -->
<div class="weather-alerts-section">
<h2>Active Weather Alerts</h2>
Marine Alerts
⛵⚠️
ADVISORY: SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
</div> <!– Standard forecast –> <div class=”standard-forecast”> <h2>Local Forecast</h2>
Snow showers likely. New snow accumulation an inch or less. Highs in the upper 30s. North winds 5 to 15 mph with gusts to around 25 mph. Chance of snow 70 percent.
Snow showers in the evening, then a chance of snow showers after midnight. Snow accumulation 1 to 4 inches. Lows around 20. North winds 5 to 10 mph. Gusts up to 40 mph decreasing to 25 mph after midnight. Chance of snow 100 percent.
Mostly sunny with a slight chance of snow showers in the morning, then snow showers in the afternoon. Snow accumulation 1 to 2 inches. Highs in the mid 30s. North winds 5 to 10 mph with gusts to around 20 mph becoming northwest 5 to 15 mph with gusts to around 30 mph in the afternoon. Chance of snow 90 percent.
Snow showers. Snow accumulation 1 to 3 inches. Lows in the mid 20s. Northwest winds around 10 mph. Gusts up to 30 mph decreasing to 20 mph after midnight. Chance of snow 90 percent.
Cloudy. A chance of snow showers in the morning, then a chance of snow showers, possibly mixed with rain showers in the afternoon. Highs in the mid 40s near Lake Michigan and around 40 inland. Southwest winds 5 to 15 mph with gusts to around 30 mph. Chance of precipitation 40 percent.
Partly cloudy. A 20 percent chance of rain showers after midnight. Lows around 30. Southwest winds 5 to 15 mph with gusts to around 30 mph.
Partly sunny. Highs in the mid 40s.
Partly cloudy. Lows in the lower 30s.
Mostly sunny. Highs in the upper 40s.
Partly cloudy. Lows in the lower 30s.
Mostly sunny. Highs in the lower 50s.
Partly cloudy in the evening then becoming mostly cloudy. A 20 percent chance of rain showers. Lows in the mid 30s.
Mostly cloudy with a 20 percent chance of rain showers. Highs in the upper 50s.
Partly cloudy in the evening then becoming mostly cloudy. A 50 percent chance of rain showers. Lows in the lower 40s.
Mostly cloudy with a 50 percent chance of rain showers. Highs in the mid 50s.
</div> <!– Marine forecast –> <div class=”marine-forecast”> <h2>Marine Forecast</h2>
North winds 15 to 25 knots. Snow showers, rain showers likely and a slight chance of thunderstorms. Waves 7 to 10 feet.
Northeast winds to 30 knots. Snow showers likely in the evening, then a chance of snow showers after midnight. Waves 7 to 10 feet subsiding to 4 to 6 feet after midnight.
North winds 15 to 25 knots backing northwest to 30 knots early in the afternoon. Snow showers. Waves 3 to 5 feet building to 6 to 9 feet early in the afternoon.
Northwest winds to 30 knots. Snow showers and a slight chance of rain showers. Waves 8 to 12 feet.
West winds to 30 knots backing southwest gales to 40 knots in the late morning and afternoon. Cloudy with a chance of rain and snow showers. Waves 6 to 8 feet building to 7 to 11 feet early in the afternoon.
West gales to 40 knots. Partly cloudy. Waves 8 to 12 feet.
West gales to 40 knots. Partly sunny. Waves 7 to 11 feet.
West winds 20 to 25 knots decreasing to 15 to 20 knots early in the afternoon. Mostly sunny. Waves 6 to 8 feet.
Southeast winds 10 to 15 knots backing east early in the afternoon. Mostly sunny. Waves 1 to 3 feet.
</div>
Sidebar Widget
<!-- Compact alert display -->
⛵⚠️ SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
<!– Today’s weather only –>
THROUGH EARLY EVENING 🌧️ ❄️
Snow showers likely. New snow accumulation an inch or less. Highs in the upper 30s. North winds 5 to 15 mph with gusts to around 25 mph. Chance of snow 70 percent.
Real-World Alert Examples
Gale Warning (Marine)
🌬️💨 WARNING: GALE WARNING IN EFFECT THROUGH LATE TONIGHT
Small Craft Advisory
⛵⚠️ ADVISORY: SMALL CRAFT ADVISORY IN EFFECT UNTIL 8 PM
Winter Storm Watch
❄️👀 WATCH: WINTER STORM WATCH FROM FRIDAY EVENING THROUGH SATURDAY
Styling
The plugin includes comprehensive CSS classes for customization:
Alert Styling
.weather-alert-banner – Banner format alerts
.alert-severe – Red styling for warnings
.alert-high – Orange styling for watches
.alert-moderate – Yellow styling for advisories
Forecast Styling
.weather-card – Individual forecast cards
.weather-table – Table format styling
.weather-type-marine – Marine-specific colors
.weather-type-extended – Extended forecast colors
Custom CSS Example
/* Make marine warnings more prominent */
.weather-type-marine .alert-severe {
border-left-width: 8px;
font-size: 1.2em;
}
/* Change card colors */
.weather-type-marine .weather-card-header {
background: linear-gradient(135deg, #005f73 0%, #0a9396 100%);
}
Data Files
The plugin creates these files in /wp-content/wx/:
Forecast Files
extracted_verbose.php – Parsed standard forecasts
extracted_marine.php – Parsed marine forecasts
extracted_extended.php – Parsed extended forecasts
Alert Files
alerts_verbose.php – Standard forecast alerts
alerts_marine.php – Marine forecast alerts (warnings, advisories)
alerts_extended.php – Extended forecast alerts
Raw Files
miz071.txt – Raw standard forecast from NOAA
lmz845.txt – Raw marine forecast from NOAA
extended.txt – Raw extended forecast from NOAA
Manual Updates
Use the admin page to manually trigger forecast updates:
- Go to Weather Verbose in WordPress admin
- Click Download & Parse Forecasts Now
- Check the status section to verify updates
Troubleshooting
Alerts Not Appearing
- Check if alerts exist: View the raw forecast files in
/wp-content/wx/
- Verify parsing: Check that
alerts_marine.php contains data
- Manual update: Trigger a manual forecast download
- Check shortcode: Ensure using correct shortcode (e.g.,
⛵⚠️
ADVISORY: SMALL CRAFT ADVISORY IN EFFECT THROUGH TUESDAY AFTERNOON
not No active alerts
for marine warnings)
Example Alert Detection
The parser looks for lines like:
...GALE WARNING IN EFFECT THROUGH LATE TONIGHT...
...SMALL CRAFT ADVISORY UNTIL 8 PM EST...
...WINTER STORM WATCH FROM FRIDAY EVENING...
Cache Issues
If forecasts seem outdated:
- Delete files in
/wp-content/wx/
- Trigger manual update from admin page
- Check file timestamps in admin page
Technical Details
Update Schedule
- Automatic: Every hour via WordPress cron
- Manual: Admin page button
- Cron job: Can be triggered via
wp-cron.php
Alert Detection Logic
The parser:
- Identifies alert lines (starting with
...)
- Extracts alert text
- Categorizes by type (WARNING, WATCH, ADVISORY)
- Assigns severity level
- Adds appropriate emoji
- Stores separately from forecasts
Performance
- File-based caching: No database queries
- Efficient parsing: Regex-based extraction
- Smart updates: Only downloads when scheduled
- Minimal overhead: Cached PHP arrays
Support
For issues or questions:
- Check
/wp-content/debug.log for errors
- Verify NOAA URLs are accessible
- Ensure
/wp-content/wx/ is writable
Version
Current version: 1.0.0
Author
Rick Xaver, genius