seljeVisitorsFlags

plugin banner

Display visited countries as flags via shortcode.

Author:Tormod Seljenes (profile at wordpress.org)
WordPress version required:6.0
WordPress version tested:6.9.4
Plugin version:1.0.0
Added to WordPress repository:06-04-2026
Last updated:06-04-2026
Rating, %:0
Rated by:0
Plugin URI:https://seljenes.no/seljetools/
Total downloads:0
plugin download
Click to start download

seljeVisitorsFlags lets you display country flags anywhere on your WordPress site using a simple shortcode. It’s ideal for showing the countries you’ve visited, highlighting where your visitors come from, or adding an international feel to landing pages, sidebars, and content sections.

After activation, go to Tools seljeVisitorsFlags to choose which countries to show, arrange their order, and configure display defaults. Once saved, you can output the flags with the default shortcode:

[seljev_flags]

You can also build customized shortcodes using the built-in Shortcode Builder tab, which helps you generate variants for different pages without needing to remember every parameter.

Frontend display options include a normal static list/grid and a continuous scrolling ticker (scroller). Ticker mode is designed to look smooth and modern, while still being mindful of performance: the animation pauses when it’s off-screen or when the browser tab is hidden.

The plugin includes multiple visual options so the output can match your site: sizing, spacing, alignment, and optional names/tooltip labeling. Flag images include explicit dimensions to reduce layout shifts during loading for a more stable page layout.

Accessibility and admin usability are also considered: tooltip behavior supports keyboard focus, and the country picker provides clear feedback (including a live selected-count indicator). You can quickly select all countries, apply EU/EEA presets, clear your selection with confirmation, and undo a clear action if you clicked it by mistake.

Whether you want a clean row of flags, a polished animated scroller, or a simple “countries list” section, seljeVisitorsFlags keeps setup fast and output flexible—without requiring a page builder or custom code.

Find this free plugin useful? Please support my work on this plugin by sending me a one-time donation (50% of the proceeds go to Ukraine).

Key features

  • Choose countries from a searchable list
  • Drag-and-drop reorder of selected countries
  • Bulk actions: Select all, Select EU, Select EEA
  • Static display and continuous scrolling ticker/scroller mode
  • Shortcode Builder for easy customized shortcodes
  • Tooltip keyboard focus support
  • Performance-friendly scroller (pauses off-screen / tab hidden)
  • Reduced layout shift by setting explicit image dimensions

Find this free plugin useful? Please support my work on this plugin by making a donation.

Documentation

Getting started (admin page)

After activating the plugin, go to:

Tools -> seljeVisitorsFlags

You will see four tabs:

  • Countries
  • Settings
  • Shortcodes
  • Preview

Countries tab (choose which flags to show)

  1. Use the Search box to find countries quickly.
  2. Click a country to add it to Selected countries.
  3. In Selected countries, drag to reorder the flags (this affects display order).
  4. Use bulk actions if needed:
    • Select all
    • Select EU
    • Select EEA
    • Clear all
  5. Click Save Changes when you are done.

Tip: If you do not select any countries, the shortcode output may be empty.

Settings tab (display defaults)

These settings control the default output for the [seljev_flags] shortcode (unless you override them in a shortcode).

Common settings:

  • Flag size (px): controls how large each flag appears.
  • Flag source:
    • FlagCDN (SVG): load SVG flags from flagcdn.com
    • User flags folder: load flags from your own uploaded files

If using User flags folder:

  • Upload your flag files into the plugin user flags folder (as shown in the Settings tab).
  • Use ISO 2-letter country codes as filenames, typically uppercase (example: NO.svg or NO.png).
  • The plugin will try .svg first, then .png.

Display mode:

  • Show all flags (static)
  • Continuous scroller (ticker)

If you choose Continuous scroller:

  • Scroller direction: choose the scroll direction.
  • Scroller speed (seconds per loop): lower = faster, higher = slower (allowed range: 5 to 120).
  • Edge fade: fades the flags near the edges of the scroller.
  • Bouncing flags: adds a subtle bounce animation while scrolling.

If you choose Show all flags (static):

  • Layout: row or grid
  • Columns (grid only)
  • Gap (px): spacing between flags
  • Align: left, center, or right
  • Names: none, tooltip, or caption
  • Entrance animation settings: animation, duration, stagger, trigger

Shortcodes tab (copy and paste)

The main shortcode is:

[seljev_flags]

This uses:

  • Your selected countries (from the Countries tab)
  • Your display defaults (from the Settings tab)

You can also generate a shortcode that includes specific countries, for example:

[seljev_flags countries=”NO,SE,DK”]

Shortcode Builder (recommended)

In the Shortcodes tab, use the Shortcode Builder to create a shortcode with options (toggles/selects) without memorizing attributes.

  1. Choose whether to use saved selection or specify countries.
  2. Choose a display mode (default/static/ticker).
  3. Configure only the options relevant to that mode.
  4. Copy the generated shortcode using the Copy button.

Preview tab (test before publishing)

Use Preview to test how the flags will look with your current settings before placing the shortcode on a live page.

If Preview is empty:

  • Make sure you selected at least one country and saved.

Troubleshooting

No flags show up:

  • Select at least one country in the Countries tab and click Save Changes.
  • If using countries=”…”, ensure you used valid ISO 2-letter codes (comma-separated, e.g. [seljev_flags countries=”NO,SE,DK”]).

Some flags missing when using User flags folder:

  • Confirm the file exists for that country code (SVG or PNG).
  • Check filename casing (some servers treat NO.svg and no.svg differently).

Scroller too fast/slow:

  • Adjust Scroller speed (seconds per loop). Lower is faster, higher is slower.

Copy button does not work:

  • Some browsers or security settings may block clipboard access. Try another browser if needed.

Screenshots
FAQ
ChangeLog