Free plugin Version 2.2.0 Updated

Christmas Snow for WordPress documentation

Christmas Snow adds a falling snow effect to your WordPress site. You can set the flakes, motion, display rules and a yearly schedule from one settings screen with a live preview, and a shortcode is included.

Try the live demo Get Christmas Snow for WordPress

Overview

Christmas Snow draws falling snow over your WordPress site. It uses a lightweight HTML5 Canvas engine and starts working as soon as you activate it, so you don't have to set anything up first.

When you want to change the look, open Settings > Christmas Snow. You can choose snowflake characters, emoji, soft dots or your own image. You can also set how much snow falls and how fast, choose where the snow appears and who sees it, and limit it to a date range that repeats every year. A live preview shows each change before you save, and six presets give you a starting point in one click.

The plugin is for any site that wants a seasonal touch, from blogs to WooCommerce stores. WooCommerce cart, checkout and account pages are excluded by default. Visitors who ask their device to reduce motion don't see the animation.

Requirements

  • WordPress 5.0 or later
  • PHP 7.0 or later

Installation

Christmas Snow is a free plugin on WordPress.org. It does not need WooCommerce or any other plugin.

  1. In your WordPress admin, go to Plugins > Add New.

  2. Search for Christmas Snow.

  3. Click Install Now, then click Activate.

  4. Optional: go to Settings > Christmas Snow to change the effect. The snow already runs with the default settings after activation.

Quick start

  1. Check that the snow is live

    Go to Settings > Christmas Snow. The badge at the top right of the header should say Snowfall is live. If Enable snowfall on the General tab is off, the badge says Snowfall is turned off.

  2. Pick a preset

    In the Presets box on the right, click a look such as Classic Christmas, Gentle Drift or Heavy Blizzard. The Live preview updates straight away. A preset only changes the appearance and motion settings. Your display rules and schedule stay as they are.

  3. Fine tune the flakes

    Open the Appearance tab to choose the Flake type, characters and colours. Then open the Motion tab to set how many flakes fall, their speed, the wind and the cursor interaction. Watch the Live preview while you change things.

  4. Decide where and when it snows

    On the Display Rules tab, choose whether the snow shows on the whole site, the home page only or selected content. On the Schedule tab, turn on Only show during a date range and pick a season, for example 1 December to 6 January.

  5. Save and check your site

    Click Save changes. Changes apply to your site as soon as you save. Open your site in a new tab to see the snow.

#General tab

You'll find the settings screen at Settings > Christmas Snow. You can also click Settings next to the plugin on the Plugins page. The header shows the plugin version and a status badge that tells you what your current settings do:

  • Snowfall is live: the snow is running.
  • Snowfall is turned off: Enable snowfall is off.
  • Waiting for the season to start on ...: a schedule is set and today is outside it.
  • Shortcode only: Only load where the shortcode is used is on under Advanced.

The General tab has two cards.

Snowfall has the master switch and the comfort options:

  1. Leave Enable snowfall on to run the effect. Turn it off to stop the snow everywhere without deactivating the plugin.
  2. Keep Respect reduced motion and Pause in background tabs on. They protect visitors and save battery.
  3. To have the snow stop after a while, enter a number of seconds in Stop the snow after. Leave it at 0 to keep it snowing.
  4. Turn on Let visitors turn the snow off to show a small on/off button in the bottom left corner of your site.

Placement controls where the snow is drawn:

  1. If the snow covers a sticky header or a popup, lower Layer (z-index) until the snow sits behind it.
  2. To show snow only inside one area of the page (for example your header), enter a CSS selector in Limit to a container, such as .site-header. Leave it empty to cover the whole window.

Click Save changes when you're done.

Christmas Snow settings screen on the General tab, with the Snowfall and Placement cards, the live preview, presets and shortcode boxes
The General tab. The status badge at the top right shows whether the snow is live.

#Live preview, presets and shortcode box

Three boxes on the right stay in view on every tab.

Live preview shows the snow with your current, unsaved settings. Use Pause to stop the animation (the button then reads Play). Under Preview background, choose a dark, blue or light background to check how the flakes look on different colours.

Presets fills in the appearance and motion settings in one click. Your display rules and schedule are left alone. After you click a preset you see Preset applied. Remember to save your changes. The preset only takes effect on your site after you click Save changes.

Preset What it looks like
Gentle Drift Few, small, slow and faint snowflakes.
Classic Christmas White snowflake characters at the standard amount and speed.
Heavy Blizzard Lots of fast soft dots with strong wind and gusts.
Golden Sparkle Star and sparkle characters in gold, pale yellow and white.
Festive Emoji A few larger holiday emoji (tree, gift, snowman, snowflake, bell).
Settling Snow Soft dots that build a drift along the bottom of the screen.

Shortcode shows [christmas_snow] and an example with attributes. Click a code block to copy it. See the Shortcodes section below for details.

#Appearance tab

The Appearance tab controls what each flake looks like.

Flake style

Choose a Flake type first. The fields below it change to match your choice:

Flake type What you set Best for
Characters and emoji Characters and Colours Classic snowflakes, stars, sparkles or holiday emoji
Soft dots (fastest) Colours Heavy snowfall and slower devices
Custom image Flake image Your own artwork

Characters and emoji

  1. In Characters, type the characters you want, with a space between each one. For example ❄ ❅ ❆, ✦ ✧ ⋆ or 🎄 🎁 ⛄.
  2. Under Colours, click the swatch to pick a colour. Click + Add colour to add more. With more than one colour, the flakes mix them at random (up to eight colours).

Soft dots (fastest)

The Characters field is hidden. Set the dot colours under Colours as above.

Custom image

  1. Click Choose image and pick or upload an image in the media library, then click Use this image.
  2. A small transparent PNG or SVG works best. Keep it under 100px for a crisp result.
  3. To pick a different image, click Remove and choose again.

If you save Custom image without choosing an image, the plugin switches the flake type back to Characters and emoji.

Size and opacity

Each flake gets a random size between Smallest flake and Largest flake, and a random opacity between Minimum opacity and Maximum opacity. Lower both opacity values for a subtle effect that sits behind your content. Softness blurs the flakes for a dreamy look. Depth effect makes distant flakes smaller, slower and fainter.

Appearance tab with Flake type set to Characters and emoji, the Characters field, a white colour swatch and the size and opacity sliders
With Characters and emoji you set the characters and their colours.
Appearance tab with Flake type set to Soft dots (fastest), showing only the Colours field in Flake style
Soft dots hide the Characters field and keep the colour picker.
Appearance tab with Flake type set to Custom image, showing the Flake image box and the Choose image button
Custom image replaces the characters and colours with a media library picker.

#Motion tab

The Motion tab sets how much snow falls and how it moves.

How much snow

Set Flakes on desktop and Flakes on mobile. Keep the mobile count well below the desktop count, because phones have far less drawing power to spare. Screens narrower than Mobile breakpoint use the mobile count.

Falling and wind
  1. Set Slowest fall and Fastest fall. A wider gap between the two looks more natural.
  2. Move Wind direction below 0 to blow the snow to the left, or above 0 to blow it to the right.
  3. Gusts slowly swings the wind back and forth. Sway sets how much each flake drifts from side to side.
  4. Turn on Spin the flakes to rotate them. Spin speed appears when spin is on.
Interaction

Choose what happens when a visitor moves the pointer through the snow with Cursor interaction. When you pick None, the Interaction strength slider is hidden. For the other choices, use it to set how strong the effect is. Cursor interaction costs a little performance on very dense snowfall.

Settling snow

Turn on Let snow settle at the bottom to build a drift along the bottom of the screen as flakes land. Maximum drift height appears when it's on and limits how tall the drift can grow.

Motion tab with the How much snow, Falling and wind, Interaction and Settling snow cards
All motion settings, with spin, cursor interaction and settling snow turned on.
Motion tab with Cursor interaction set to None and no Interaction strength slider
With None selected, the Interaction strength slider is hidden.
Motion tab with Spin the flakes turned off and the Spin speed slider hidden
Spin speed only shows while Spin the flakes is on.
Motion tab with Let snow settle at the bottom turned off and no Maximum drift height slider
Maximum drift height only shows while settling snow is on.

#Display Rules tab

The Display Rules tab decides which pages show the snow and which visitors see it.

Where the snow appears

Under Show on, pick one choice:

  • The entire site: snow on every page.
  • The home page only: snow only on your front page or blog home.
  • Selected content types and pages: two more fields appear. Under Content types, tick the types that should show snow (for example Post and Page). In Always show on these IDs, list extra post or page IDs as comma separated numbers, for example 12, 45, 108.

With Selected content types and pages, archives and search results follow the Post box.

Never show on

These exclusions apply whatever you picked under Show on:

  • These IDs: comma separated post or page IDs that should never show snow.
  • WooCommerce cart, checkout and account pages: strongly recommended, so nothing decorative sits between a customer and the pay button. It is on by default.
  • Search results and 404 pages: turn on to skip those pages.
Who sees it
  • Devices: show on All devices, Desktop only or Mobile only. Device detection happens on the server, so a page cache that does not vary by device may serve the wrong result. Leaving this on All devices and lowering the mobile flake count is the safer choice.
  • Hide on small screens: skips the snow when the browser window is narrower than the Mobile breakpoint set on the Motion tab. This check runs in the visitor's browser, so it works with any page cache.
  • Visitors: show to Everyone, Logged in users only or Logged out visitors only.
  • Hide from these roles: tick user roles that should never see the snow. This is useful for keeping the effect away from staff while they work.
Display Rules tab with Show on set to The entire site, the Never show on exclusions and the Who sees it options
Display rules with the snow shown on the entire site.
Display Rules tab with Selected content types and pages chosen, showing Content types checkboxes and the Always show on these IDs field
Choosing Selected content types and pages reveals Content types and Always show on these IDs.

#Schedule tab

Use the Schedule tab to run the snow only during your holiday season.

  1. Turn on Only show during a date range.
  2. Under Season starts, choose a month and a day, for example December and 1.
  3. Under Season ends, choose a month and a day, for example January and 6.
  4. Click Save changes.

The range repeats every year, so you only set it once. A range that crosses New Year works fine. Outside the season, the status badge reads Waiting for the season to start on followed by your start date, and no snow appears on your site. If the start and end dates are the same, the snow shows all year.

Schedule tab with Only show during a date range turned off
With the schedule off, the snow runs all year.
Schedule tab with the date range turned on, Season starts set to December 1 and Season ends set to January 6
A season from 1 December to 6 January that repeats every year.

#Advanced tab

The Advanced tab has performance and control options.

Performance
  • Frame rate limit caps how often the snow is redrawn. Lower it to save battery on laptops and phones. 30 still looks smooth for falling snow.
  • Load the script in the footer keeps the snow out of the way of your page rendering. Leave it on unless something needs the script earlier.
Control
  • Only load where the shortcode is used turns off automatic display. The snow then only loads on pages that contain [christmas_snow]. The status badge shows Shortcode only.
  • Show the admin bar shortcut adds a snow item to the toolbar for administrators. On any front end page it shows Snow: on or Snow: off. Its menu has Preview this page without snow (or Preview this page with snow) and Snow settings.
Plugin catalogue

Keep the Plugins tab up to date is off by default. When it's off, the Plugins tab shows the list built into the plugin and nothing is requested. When it's on, the plugin asks propluginslab.io once a day for the current plugin list and offer, and the Plugins tab gets a Refresh button. Your visitors never trigger these requests.

Advanced tab with the Performance, Control and Plugin catalogue cards
Frame rate, script loading, shortcode only mode and the admin bar shortcut.

#Tools tab

The Tools tab lets you back up, move and reset your configuration.

Export settings

Click Download JSON file to save your configuration as a file named like christmas-snow-settings-2026-12-01.json. Keep it as a backup or use it on another site.

Import settings

  1. Open an exported file in a text editor and copy its contents.
  2. Paste them into the box under Import settings.
  3. Click Import settings.

Everything is checked before it's saved. A file that names only some settings changes only those. When the import works, you see Settings imported successfully.

Reset

Click Reset all settings to put every setting back to how it was when you first installed the plugin. Confirm the prompt Reset every setting back to its default? This cannot be undone. You then see All settings have been reset to their defaults.

Current configuration

This read only box shows your saved settings. It's handy when you ask for support.

Tools tab with the Export settings, Import settings, Reset and Current configuration cards
Export, import and reset your snow configuration.

#Plugins tab

The Plugins tab lists other plugins and add-ons by ProPluginsLab. Use the filter buttons (All, Free plugins, Pro plugins, Add-ons) to narrow the list. Plugins already on your site are marked Installed or Active. For free plugins you can click View details or, when available, Install now. Pro plugins and add-ons have a Get plugin button that opens the store.

By default the tab shows a list built into the plugin and makes no outside requests. To see the current list, turn on Keep the Plugins tab up to date on the Advanced tab. A Refresh button then appears on this tab.

The settings screen also shows a banner about ProPluginsLab's WooCommerce plugins. You can dismiss it with the close button, and it stays hidden for 30 days.

Plugins tab listing free plugins, pro plugins and an add-on from ProPluginsLab with filter buttons at the top
The built in plugin list, filterable by type.

Settings reference

Settings > Christmas Snow > General

The master switch, comfort options and placement of the snow layer.

The Settings > Christmas Snow > General screen
Settings > Christmas Snow > General

#Enable snowfall

Checkbox Default: On

The master switch. Turn this off to stop the effect everywhere without deactivating the plugin.

When to change it

Turn it off after the season if you want to keep your settings for next year without deactivating the plugin.

#Respect reduced motion

Checkbox Default: On

Skips the animation for visitors who asked their device to reduce motion.

When to change it

Leave it on. It is recommended, and it is an accessibility requirement on many sites.

#Pause in background tabs

Checkbox Default: On

Stops drawing while the browser tab is not visible, so the effect costs nothing in the background.

When to change it

Leave it on.

#Stop the snow after

Number Default: 0

Seconds of snowfall per page view, from 0 to 3600. When the time is up no new flakes appear and the snow gently fades out. Use 0 to keep it snowing.

When to change it

Enter a short time, such as 10 or 20 seconds, if you want a brief festive greeting rather than constant snow.

#Let visitors turn the snow off

Checkbox Default: Off

Adds a small button in the bottom left corner that turns the snow off and on. The choice is remembered in the visitor's browser, and nothing is stored on your site.

When to change it

Turn it on if you want to give visitors control over the effect.

#Layer (z-index)

Number Default: 999999

How high the snow sits in the stack of page elements. Higher numbers draw the snow above more elements.

When to change it

Lower this if the snow covers a sticky header, a menu or a popup.

#Limit to a container

Text

Optional CSS selector, for example .site-header. The snow is then drawn only inside that element. Leave it empty to cover the whole window.

When to change it

Use it to show snow only in your header or a banner. If the selector does not match anything, the snow falls back to the full window.

Settings > Christmas Snow > Appearance

What each flake looks like: its type, characters or image, colours, size, opacity and softness.

The Settings > Christmas Snow > Appearance screen
Settings > Christmas Snow > Appearance

#Flake type

Dropdown Default: Characters and emoji

Chooses what the flakes are made of. The fields below change to match your choice.

When to change it

Keep characters for classic snowflakes and emoji, pick dots for heavy snowfall, or use an image for your own artwork.

3 options

Characters and emojiDefault

Draws the characters you type in Characters, such as snowflakes, stars or holiday emoji, in your chosen colours.

Soft dots (fastest)

Draws simple soft round dots. It is the fastest option, so choose it for heavy snowfall or slower devices.

Custom image

Uses an image from your media library as each flake. Choose it to show your own artwork. If no image is chosen when you save, the type switches back to Characters and emoji.

#Characters

Text Default: ❄ ❅ ❆

Shown when Flake type is set to Characters and emoji.

The characters used as flakes, separated by spaces. Emoji work too, for example ✦ ✧ ⋆ or 🎄 🎁 ⛄.

When to change it

Change it to give the snow a different theme, such as stars or holiday emoji.

#Flake image

Media

Shown when Flake type is set to Custom image.

The image used for each flake. Click Choose image to pick one from the media library, or Remove to clear it. A small transparent PNG or SVG works best. Keep it under 100px for a crisp result.

#Colours

Text Default: #ffffff

Shown when Flake type is set to Characters and emoji or Soft dots (fastest).

The flake colours. Add more than one colour with + Add colour to mix them randomly across the flakes, up to eight colours.

When to change it

Pick colours that stand out against your site background, for example gold for a sparkle effect.

#Colour 1

Color Default: #ffffff

Shown when Flake type is set to Characters and emoji or Soft dots (fastest).

The colour picker for the first colour in the list. Each added colour gets its own picker (Colour 2, Colour 3 and so on) and a button to remove it.

#Smallest flake

Slider Default: 10

The smallest flake size in pixels, from 1 to 80.

#Largest flake

Slider Default: 22

The largest flake size in pixels, from 1 to 80. Flakes are sized randomly between the smallest and largest values.

When to change it

Raise it for bigger emoji, lower it for a fine powdery snow.

#Minimum opacity

Slider Default: 0.45

The faintest a flake can be, from 0 (invisible) to 1 (solid).

#Maximum opacity

Slider Default: 0.95

The most solid a flake can be, from 0 to 1. Each flake gets a random opacity between the two values.

When to change it

Lower both values for a subtle effect that sits behind your content.

#Softness

Slider Default: 0

Blurs the flakes for a dreamy look, from 0 to 8 pixels.

When to change it

Anything above 0 costs some performance, so keep it low on busy pages.

#Depth effect

Checkbox Default: On

Makes distant flakes smaller, slower and fainter so the snowfall gains a sense of depth.

When to change it

Turn it off if you want every flake to look the same distance away.

Settings > Christmas Snow > Motion

How much snow falls, how fast it moves, how the wind blows, how flakes react to the pointer and whether snow settles.

The Settings > Christmas Snow > Motion screen
Settings > Christmas Snow > Motion

#Flakes on desktop

Slider Default: 100

The number of flakes on screens at or above the mobile breakpoint, from 1 to 400.

When to change it

Lower it for a light dusting, raise it for a heavier snowfall.

#Flakes on mobile

Slider Default: 40

The number of flakes on screens narrower than the mobile breakpoint, from 1 to 400.

When to change it

Keep this well below the desktop count. Phones have far less drawing power to spare.

#Mobile breakpoint

Number Default: 768

Screen width in pixels, from 320 to 2000. Screens narrower than this use the mobile flake count. Hide on small screens on the Display Rules tab uses the same width.

#Slowest fall

Slider Default: 0.4

The slowest speed a flake can fall, from 0.05 to 10.

#Fastest fall

Slider Default: 1.2

The fastest speed a flake can fall, from 0.05 to 10. Each flake falls at a random speed between the two.

When to change it

A wider gap between the two values makes the snowfall look more natural.

#Wind direction

Slider Default: 0

Steady sideways wind, from -5 to 5. Negative blows the snow to the left, positive to the right.

#Gusts

Slider Default: 0.5

Slowly swings the wind back and forth instead of holding one direction, from 0 to 5.

When to change it

Set it to 0 for a perfectly steady wind.

#Sway

Slider Default: 1

How much each flake drifts from side to side on its way down, from 0 to 5.

#Spin the flakes

Checkbox Default: On

Rotates the flakes as they fall.

When to change it

Turn it off for emoji or images that should stay upright.

#Spin speed

Slider Default: 1

Shown when Spin the flakes is turned on.

How fast the flakes rotate, from 0 to 5.

#Cursor interaction

Dropdown Default: None

What happens when a visitor moves the pointer through the snow. It costs a little performance on very dense snowfall.

When to change it

Pick an effect for a playful touch, or None for the lightest setup.

4 options

NoneDefault

The pointer does not affect the snow. Choose it for the lightest setup.

Push flakes away

Flakes move away from the pointer, as if it clears a path through the snow.

Pull flakes in

Flakes are drawn towards the pointer.

Gentle wind towards the cursor

A soft wind blows the snow towards the pointer instead of pushing single flakes.

#Interaction strength

Slider Default: 1

Shown when Cursor interaction is set to Push flakes away, Pull flakes in or Gentle wind towards the cursor.

How strongly the pointer affects the flakes, from 0 to 5.

#Let snow settle at the bottom

Checkbox Default: Off

Builds a drift along the bottom of the screen as flakes land.

When to change it

Turn it on for a cosy winter scene. The Settling Snow preset turns it on for you.

#Maximum drift height

Slider Default: 40

Shown when Let snow settle at the bottom is turned on.

The tallest the settled drift can grow, from 2 to 200 pixels.

When to change it

Keep it low so the drift does not cover buttons or text at the bottom of the screen.

Settings > Christmas Snow > Display Rules

Where the snow appears, which pages it skips and which visitors see it.

The Settings > Christmas Snow > Display Rules screen
Settings > Christmas Snow > Display Rules

#The entire site

Choice Default: The entire site

The Show on choice: decides which pages show the snow.

When to change it

Keep The entire site for most sites. Pick Selected content types and pages to limit the snow to some content.

3 options

The entire siteDefault

Snow on every page, apart from anything excluded under Never show on or Who sees it.

The home page only

Snow only on your front page or blog home. Choose it for a light seasonal greeting.

Selected content types and pages

Snow only on the content types you tick under Content types, plus any IDs in Always show on these IDs. Archives and search results follow the Post box.

#Post

Checkboxes Default: Post, Page

Shown when Show on is set to Selected content types and pages.

The Content types list: the public content types that show snow. The list holds every public content type on your site.

When to change it

Tick only the types where you want snow, for example Page for your static pages.

3 options

Post

Shows snow on single blog posts, and on the blog home, archives and search results.

Page

Shows snow on your pages.

Media

Shows snow on media attachment pages.

#Always show on these IDs

Text

Shown when Show on is set to Selected content types and pages.

Comma separated post or page IDs that always show snow, for example 12, 45, 108, even if their content type is not ticked.

When to change it

Use it to add a few single pages, such as a holiday landing page.

#These IDs

Text

Comma separated post or page IDs that should never show snow.

When to change it

Use it for pages where the snow gets in the way, such as a contact form or a landing page.

#WooCommerce cart, checkout and account pages

Checkbox Default: On

Hides the snow on the WooCommerce cart, checkout and My Account pages.

When to change it

Strongly recommended. Nothing decorative should sit between a customer and the pay button.

#Search results

Checkbox Default: Off

Hides the snow on search results pages.

#404 pages

Checkbox Default: Off

Hides the snow on page not found (404) pages.

#All devices

Choice Default: All devices

The Devices choice: which devices show the snow. Device detection happens on the server, so a page cache that does not vary by device may serve the wrong result.

When to change it

Leaving this on All devices and lowering the mobile flake count is the safer choice. To hide the snow on phones with page caching, use Hide on small screens instead.

3 options

All devicesDefault

Snow on desktops, tablets and phones. The safest choice with page caching.

Desktop only

Snow only on devices the server detects as desktop computers.

Mobile only

Snow only on devices the server detects as mobile.

#Hide on small screens

Checkbox Default: Off

Skips the snow when the browser window is narrower than the mobile breakpoint set under Motion. The check runs in the visitor's browser, so it works with any page cache.

When to change it

Turn it on to keep phones free of snow on a cached site.

#Everyone

Choice Default: Everyone

The Visitors choice: whether logged in state matters.

3 options

EveryoneDefault

Every visitor sees the snow.

Logged in users only

Only people logged in to your site see the snow, for example members or customers with an account.

Logged out visitors only

Only visitors who are not logged in see the snow, which keeps it away from you and your staff while you work.

#Administrator

Checkboxes

The Hide from these roles list: logged in users with a ticked role never see the snow. The list shows every user role on your site, including roles added by other plugins.

When to change it

Useful for keeping the effect away from staff while they work.

6 options

Administrator

Hides the snow from site administrators.

Editor

Hides the snow from editors.

Author

Hides the snow from authors.

Contributor

Hides the snow from contributors.

Subscriber

Hides the snow from subscribers.

Demo Admin

A custom role registered on this site. Tick it to hide the snow from users with that role. Your own custom roles appear in this list in the same way.

Settings > Christmas Snow > Schedule

Limit the snow to a season that repeats every year.

The Settings > Christmas Snow > Schedule screen
Settings > Christmas Snow > Schedule

#Only show during a date range

Checkbox Default: Off

Shows the snow only between the season start and end dates. The range repeats every year, so you can set it once and forget about it.

When to change it

Turn it on so the snow starts and stops by itself each holiday season.

#Month

Dropdown Default: December

Shown when Only show during a date range is turned on.

The month of Season starts. The list holds the twelve months, January to December.

12 options

January

The season starts in January.

February

The season starts in February.

March

The season starts in March.

April

The season starts in April.

May

The season starts in May.

June

The season starts in June.

July

The season starts in July.

August

The season starts in August.

September

The season starts in September.

October

The season starts in October.

November

The season starts in November.

DecemberDefault

The season starts in December, the usual choice for Christmas.

#Day

Dropdown Default: 1

Shown when Only show during a date range is turned on.

The day of the month of Season starts. The list holds the days 1 to 31.

Settings > Christmas Snow > Advanced

Performance, shortcode only mode, the toolbar shortcut and updates for the Plugins tab.

The Settings > Christmas Snow > Advanced screen
Settings > Christmas Snow > Advanced

#Frame rate limit

Slider Default: 60

The most frames per second the snow is drawn at, from 10 to 120.

When to change it

Lower this to save battery on laptops and phones. 30 still looks smooth for falling snow.

#Only load where the shortcode is used

Checkbox Default: Off

Stops the snow from appearing automatically. It waits for [christmas_snow] to appear on the page.

When to change it

Turn it on when you want snow on just one or two pages and place the shortcode there.

#Show the admin bar shortcut

Checkbox Default: On

Adds a snow indicator to the toolbar so you can check the status and preview any page with or without snow. Only administrators see it.

When to change it

Turn it off if you prefer a cleaner toolbar.

#Keep the Plugins tab up to date

Checkbox Default: Off

When on, the plugin asks propluginslab.io once a day for the current plugin list and offer shown on the Plugins tab, and the tab gets a Refresh button. When off, the tab shows the list built into the plugin and nothing is requested.

When to change it

Leave it off if you don't want your site to contact outside services. Turning it off also removes the daily scheduled request.

Settings > Christmas Snow > Tools

Import a saved configuration and see your current settings. Export and reset are buttons on the same tab.

The Settings > Christmas Snow > Tools screen
Settings > Christmas Snow > Tools

#{"density": 100, ...}

Text area

The Import settings box. Paste the contents of an exported JSON file here and click Import settings. Everything is validated before it is saved, and only the settings named in the file change.

When to change it

Use it to copy your snow setup from one site to another, or to restore a backup.

#Current configuration

Text area

A read only view of all your saved settings.

When to change it

Copy it when you contact support or want a quick look at every value.

Shortcodes

[christmas_snow]

Turns the snow on for the page or post where you add it, even if **Show on** under Display Rules would leave that page out. The **Never show on** and **Who sees it** rules, the schedule and **Enable snowfall** still apply. The shortcode outputs nothing on the page itself. Attributes change the snow on that page only. Leave them out to use your saved settings.

[christmas_snow density="150" color="#ffd700" size="20" speed="1.5" wind="2"]
AttributeDefaultDescription
density-Number of flakes on desktop, from 1 to 1000. The mobile count is set to 40% of this number.
color-One hex colour, or several separated by commas (up to eight), for example `#ffd700, #ffffff`.
characters-The flake characters or emoji, separated by spaces, for example `✦ ✧ ⋆`.
type-Flake type for this page: `unicode` for characters and emoji or `circle` for soft dots.
speed-An average fall speed. The slowest fall is set to half of it and the fastest to one and a half times it.
wind-Wind direction from -10 to 10. Negative blows left, positive blows right.
size-The largest flake size in pixels. The smallest flake is set to 60% of it.
zindex-The layer (z-index) of the snow on this page.

On your site

Visitors see snow falling over your pages. It is drawn on a transparent layer above your content, so links and buttons underneath still work. The canvas is marked as decorative, so screen readers ignore it.

What visitors see depends on your settings:

  • Flakes fall with the characters, dots or image, colours, sizes and motion you chose. If cursor interaction is on, the snow reacts to the pointer.
  • With Let snow settle at the bottom on, a drift builds up along the bottom of the screen.
  • Phones and small screens get the lower mobile flake count.
  • With Let visitors turn the snow off on, a small button in the bottom left corner reads Turn snow off (or Turn snow on). The choice is remembered in the visitor's browser.
  • With Stop the snow after set, the snow fades out after that many seconds.
  • Visitors who ask their device to reduce motion see no animation while Respect reduced motion is on.
  • Administrators see a Snow: on or Snow: off item in the toolbar. Use it to preview the page with or without snow.
A site home page with a dark winter theme and snowflakes drifting over the content
The snow falls over the whole page while visitors read and scroll.
Another page of the site with the snowfall effect running over the content
With Show on set to The entire site, every page gets the same snowfall.

Frequently asked questions

Do I have to configure anything?

No. The snow runs with the default settings as soon as you activate the plugin. The settings at Settings > Christmas Snow are there when you want to change the effect.

Will the snow slow down my site?

The script is small and loads in the footer. The snow is drawn from cached images rather than redrawn from scratch, and the animation stops when the browser tab is not visible. To lighten it further, lower the flake count, lower Frame rate limit under Advanced, or set Flake type to Soft dots (fastest).

Does it work on phones?

Yes. Phones get their own, lower flake count under Motion. To hide the snow on phones completely, turn on Hide on small screens under Display Rules. It checks the window width in the visitor's browser, so it works with page caching.

Can I use it in a WooCommerce store?

Yes. Cart, checkout and account pages are excluded by default, so nothing decorative sits between a customer and the pay button. You can change this with WooCommerce cart, checkout and account pages under Display Rules.

Can I show the snow on only one page?

Yes, in two ways. Either set Show on to Selected content types and pages, untick the content types and enter the page ID in Always show on these IDs. Or turn on Only load where the shortcode is used under Advanced and add [christmas_snow] to that page.

Can I use emoji or my own image instead of snowflakes?

Yes. Set Flake type to Characters and emoji and type any characters you like, separated by spaces. Or set it to Custom image and pick a small transparent PNG or SVG from your media library.

How do I make the snow appear only in December?

Open the Schedule tab, turn on Only show during a date range and set the start and end dates. The range repeats every year, and ranges that cross New Year work correctly.

Can visitors switch the snow off?

Yes. Turn on Let visitors turn the snow off under General. A small button appears in the bottom left corner, and each visitor's choice is remembered in their own browser. Nothing is stored on your site.

Does a preset overwrite my display rules or schedule?

No. A preset only fills in the appearance and motion settings. Your display rules and schedule stay as they are. Click Save changes after choosing a preset.

Will I lose my settings when I update or deactivate?

No. Settings are kept when you deactivate and update the plugin. They are only removed if you delete the plugin. To keep a copy, use Download JSON file on the Tools tab.

Does the plugin contact outside services?

Only if you turn on Keep the Plugins tab up to date under Advanced. It is off by default. When it's on, the plugin fetches the plugin list for the Plugins tab from propluginslab.io once a day. Your visitors never trigger any outside requests.

Troubleshooting

The status badge says "Snowfall is turned off"

The master switch is off. Open the General tab, turn on Enable snowfall and click Save changes.

The status badge says "Waiting for the season to start on ..." and no snow appears

Only show during a date range is on and today falls outside your season. Open the Schedule tab and check Season starts and Season ends, or turn the schedule off to show the snow all year.

The status badge says "Shortcode only" and most pages have no snow

Only load where the shortcode is used is on under Advanced. In this mode the snow only loads on pages that contain [christmas_snow]. Turn it off to let Display Rules decide again, or add the shortcode to the pages you want.

"That did not look like a valid settings file. Nothing was changed."

The text pasted into Import settings was not valid JSON, or it did not contain any known Christmas Snow settings. Open the file you got from Download JSON file in a text editor, copy its whole contents and paste them again. Don't edit the file by hand unless you keep valid JSON.

The snow covers my sticky header, menu or a popup

Lower Layer (z-index) on the General tab until the snow sits behind that element, then click Save changes. You can also limit the snow to one area with Limit to a container.

I can't see the snow, but other people can

Check these in order:

  1. If your device has a reduced motion setting turned on, the animation does not run while Respect reduced motion is on.
  2. Under Display Rules, check Visitors and Hide from these roles. Your own role may be excluded.
  3. If you clicked Turn snow off on your site, the button now reads Turn snow on. Click it to bring the snow back in your browser.
  4. Use the toolbar item Snow: on or Snow: off to see whether the snow runs on the current page.
Mobile only or Desktop only shows the wrong result

Device detection for Devices happens on the server, so a page cache that does not vary by device can serve the wrong version. Set Devices to All devices. Then lower Flakes on mobile, or turn on Hide on small screens, which works with any page cache. Clear your page cache after saving.

My custom image is gone and the snow shows snowflake characters again

If you save with Flake type set to Custom image but no image chosen, the plugin switches back to Characters and emoji. Set Flake type to Custom image again, click Choose image, pick the image, click Use this image, then click Save changes.

"Could not reach the plugin catalogue. Please try again later."

Clicking Refresh on the Plugins tab could not reach propluginslab.io. Try again later. The tab keeps showing the list it already has, and the snow on your site is not affected.

"Turn on "Keep the Plugins tab up to date" under Advanced first."

Refreshing the Plugins tab needs the catalogue updates setting. Open the Advanced tab, turn on Keep the Plugins tab up to date, click Save changes, then go back to the Plugins tab and click Refresh.