Free Weather Website Templates

They're free, but use at your own risk

The scripts referenced here are used in the operation of this weather station, and may be freely copied and used to support your station. Please note that you use these scripts at your own risk. No warranty is expressed or implied. I accept no liability for any damages that may ensue from their use.
You will need to configure them for your own particular weather station website.
RSS feed for Scripts Updates A RSS Feed is available to help keep you informed on updates to the scripts.

Many of these scripts are now available on GitHub at

Buy Me A Coffee If you find one or more of the scripts useful to you, please consider making a donation to help offset the routine expenses of operation of this website.
Thanks for your kind support!

A Version History is available -- check back from time to time to see if there are updates to scripts you have downloaded earlier. Announcements of version updates and new scripts are made on and Weather-Watch forums and saratogaWXPHP Twitter account as they become available.

Note: Twitter widget has been disabled 3-Jul-2023 since it no longer displays the recent update Tweets.

This page was updated Wednesday, 13-May-2020 10:48 AM

PHP/AJAX Website Template Set - CumulusMX Setup


There are two needed setups required in Cumulus for the proper operation of your template set. Please follow the setup instructions in the sections below to have CumulusMX upload your CUtags.php file and your AJAX update data file (realtime.txt). If you are running Cumulus V1.9, use Cumulus V1.9 setup instead of this page.

Setup to upload CUtags.php

Select either the CUtags-comments.txt file (larger, but with comments) or the CUtags.txt (smaller, without comments) as the template file source from the distribution WXtags-template-files directory.

NOTE: you may want to delete the following two lines from your chosen file:


as they result in a much larger CUtags.php file. They contain 3600 data points for wind direction and wind speed which are not used by the templates. I recommend you just delete those lines and save your FTP upload bandwidth.

Place the chosen file (after possible editing) in your cumulus/web directory

Browse to the CumulusMX control website (http://{ip-addr}:8998/index.html where {ip-addr} is the IP address of the system running CumulusMX) and open the Settings, Extra Web Files page and select an unused entry:

Cumulus setup

In the Local Filenames, press Browse and select the chosen file as the local filename.
In the Remote Filenames box, enter the directory and CUtags.php as the Remote Filename to use.
Leave the Binary? box unchecked,
Check the Process? box.
Leave the Realtime? box unchecked.
Check the FTP? box.

Then you can view the uploaded tags on your website as: (see the raw source after processing by Cumulus) (see the contents of the resulting $WX[] array with Cumulus tag names and data values

Note: if you experience issues with your website showing PHP error messages like "unexpected end in CUtags.php", it may be due to a slow FTP connection such that your browser is accessing the website as Cumulus is uploading the CUtags.php, and has not yet finished.
To remedy this issue, you can upload your tags file to CUtags-new.php, make sure that CUtags.php is writable by PHP, and the V1.04 of top.php will automatically copy CUtags-new.php to CUtags.php to ensure you have a complete/fresh copy when your website is accessed.

Enable real-time updates using AJAX

Then browse to Settings, Internet Settings, and expand the Web/FTP settings panel.

Cumulus Realtime

Check the 'Auto update'.
Uncheck the 'Include standard files' as the built-in HTML pages are not used by the template.
Check the 'Include graph data files'. (Note: these are used by the wxgraphs.php page to display station graphs)
Set the Upload Interval, and Check all the Realtime entries.
Set the Realtime Upload interval to 10 Seconds
Press Save button at the page bottom to save the settings.

You should now be able to see a data file on your website

This file will be used by the ajaxCUwx.js JavaScript to provide AJAX updates to your pages.