Title: Glovario – Reusable Site Content
Author: bottegawp
Published: <strong>October 25, 2026</strong>
Last modified: October 25, 2026

---

Search plugins

![](https://ps.w.org/glovario/assets/banner-772x250.png?rev=3764057)

![](https://ps.w.org/glovario/assets/icon.svg?rev=3764057)

# Glovario – Reusable Site Content

 By [bottegawp](https://profiles.wordpress.org/bottegawp/)

[Download](https://downloads.wordpress.org/plugin/glovario.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/glovario/#description)
 * [Reviews](https://wordpress.org/plugins/glovario/#reviews)
 *  [Installation](https://wordpress.org/plugins/glovario/#installation)
 * [Development](https://wordpress.org/plugins/glovario/#developers)

 [Support](https://wordpress.org/support/plugin/glovario/)

## Description

Select any text in the block editor, the Classic Editor, Elementor (the Text Editor
widget and Elementor 4’s Paragraph, Heading, and Button), or Beaver Builder’s Text
Editor module and click **Make variable**: it becomes a reusable Site Variable and
is replaced with its shortcode. The same dialog finds the text in your other posts
and pages, shows every place in context, and replaces only the ones you choose. 
Click **Insert variable** to drop an existing variable into any sentence.

Glovario keeps frequently repeated public site content in one place. Create a labeled
variable such as `company_phone`, then insert `[glvr key="company_phone"]` or select
it in the Site Variable block. Updating the variable updates every dynamic usage.

#### See it in action

Change a phone number once, and every page updates:

Give a sentence a second language, and let visitors switch with one click:

A holiday notice and a Christmas logo that switch on by themselves, and back:

#### What’s included

Glovario supports Text, Multiline text, URL, Email, Number, and Image values without
management limits. Image variables use pictures from your Media Library, so a logo
or banner can be changed once everywhere, or differ by language or date. Organize
variables into categories; search, filter, sort, and paginate the list; use shortcodes,
canonical `{{glvr:key}}` tokens, or the searchable Site Variable block; and copy
dynamic read-only WordPress values such as the site name, URL, current year, and
current date. A compact Overview, Usage Inspector, safe deletion previews, and guided
exact-content conversion help administrators adopt and maintain variables safely.

Glovario also schedules alternative values (for example holiday opening hours or
a time-limited offer) and gives variables a different value per language for two
languages. It follows Polylang, TranslatePress, or Weglot automatically, and for
a bilingual site without a multilingual plugin it includes a cookie-based language
switcher (site-wide flag, block, or shortcode) that switches WordPress, theme, and
plugin texts together with your variables. Editors and clients can be allowed to
update values without administrator access. Glovario Provides portable JSON import/
export, dedicated database tables, a small object cache, native WordPress administration,
and no generic front-end JavaScript.

We’re considering a Pro version. If there’s something you’d like Glovario to do,
tell us through the Share your feedback button on the plugin’s screens, which opens
a short survey in your language.

Site Variables are intended for reusable public content. Do not store passwords,
API secrets, access tokens, or credentials.

### Privacy and external services

Glovario does not implement telemetry, remote notices, or background calls to external
services. The only request it causes is WordPress’s own list of available languages,
which WordPress fetches from WordPress.org when you open Locale Settings (the same
request WordPress makes on its General Settings screen). The Share your feedback
button only opens a survey hosted by Tally (https://tally.so) in a new browser tab
when you click it; nothing is sent from your site, and what you choose to answer
there is covered by Tally’s own privacy policy.

When an administrator enables Standalone mode and a visitor chooses a language, 
the chosen language code is stored for one year in the first-party, HTTP-only, SameSite
=Lax `glovario_locale` preference cookie. No visitor data is sent to an external
service by the language switcher.

## Screenshots

[⌊Select text in the block editor and click Make variable: it becomes a reusable
variable, with a category and optional language and scheduled values.⌉⌊Select text
in the block editor and click Make variable: it becomes a reusable variable, with
a category and optional language and scheduled values.⌉[

Select text in the block editor and click Make variable: it becomes a reusable variable,
with a category and optional language and scheduled values.

[⌊Replace everywhere now: the same text on your other pages, each place shown in
context with a checkbox, so you choose which ones become the variable.⌉⌊Replace 
everywhere now: the same text on your other pages, each place shown in context with
a checkbox, so you choose which ones become the variable.⌉[

Replace everywhere now: the same text on your other pages, each place shown in context
with a checkbox, so you choose which ones become the variable.

[⌊Insert variable: search your variables and insert one at the cursor.⌉⌊Insert variable:
search your variables and insert one at the cursor.⌉[

Insert variable: search your variables and insert one at the cursor.

[⌊The same buttons in Elementor's Text Editor widget (and in the Classic Editor 
and Beaver Builder).⌉⌊The same buttons in Elementor's Text Editor widget (and in
the Classic Editor and Beaver Builder).⌉[

The same buttons in Elementor’s Text Editor widget (and in the Classic Editor and
Beaver Builder).

[⌊All variables in one list, with categories, values, and ready-to-copy shortcodes
and tokens.⌉⌊All variables in one list, with categories, values, and ready-to-copy
shortcodes and tokens.⌉[

All variables in one list, with categories, values, and ready-to-copy shortcodes
and tokens.

[⌊A scheduled value and an Italian value for one variable.⌉⌊A scheduled value and
an Italian value for one variable.⌉[

A scheduled value and an Italian value for one variable.

[⌊The built-in language switcher: visitors choose a language and your variables 
follow.⌉⌊The built-in language switcher: visitors choose a language and your variables
follow.⌉[

The built-in language switcher: visitors choose a language and your variables follow.

## Blocks

This plugin provides 2 blocks.

 *   Site Variable Display the current value of a Glovario variable.
 *   Glovario Language Switcher Switch the WordPress request locale and Site Variables
   in standalone mode.

## Installation

 1. Upload the plugin folder to `/wp-content/plugins/`, or install it through the WordPress
    Plugins screen.
 2. Activate Glovario.
 3. Start from text you already have: in the block editor, Classic Editor, Elementor,
    or Beaver Builder, select text you repeat across the site (a phone number, an email
    address, opening hours) and click **Make variable**. Give it a name, and the selection
    becomes a variable; **Replace everywhere now** can swap the same text in the rest
    of your content too.
 4. To show a variable somewhere else, click **Insert variable** where the cursor is,
    or add the Site Variable block.
 5. You can also create variables by hand under Glovario  Site Variables in the administration
    menu and copy their shortcode or token.

Deactivation does not remove variables. Uninstall removes data only if the administrator
first enables the explicit data-removal setting.

## FAQ

### How do I display a variable?

Use `[glvr key="company_phone"]`, place `{{glvr:company_phone}}` in supported frontend
text content, insert the searchable Site Variable block, or call `glovario_get_value('
company_phone' )` from theme code.

### What are built-in variables?

Built-ins are read-only values retrieved directly from WordPress, including `glovario_builtin_site_name`,`
glovario_builtin_site_description`, `glovario_builtin_site_url`, `glovario_builtin_admin_email`,`
glovario_builtin_current_year`, and `glovario_builtin_current_date`. They work through
shortcode, token, block, Usage Inspector, and PHP API, and stay current without 
a saved duplicate.

### Can a shortcode have a fallback?

Yes: `[glvr key="company_phone" fallback="Contact us"]`.

### Can one variable reference another?

Yes. Text and Multiline values can contain `[glvr key="another_key"]`, including
across multiple levels. Nested references inherit the same request and language 
context, so scheduled and language-specific values apply at every level. Cycles 
and excessive reference trees stop safely, using the nested shortcode fallback when
supplied.

### Can I use a Site Variable in a page or post title?

Yes. Enable title integration under Glovario  Site Variables, then insert a variable
from the editor’s Site Variable in title panel or type `[glvr key="company_name"]`
directly in the title. The shortcode remains visible while editing and resolves 
on the frontend. Themes and page builders that use WordPress’s normal title filters
inherit the result; integrations that read the raw database title may need an adapter.

### What happens to a page address made from a title with a variable?

When a published title like “Call us at [glvr key=…]” gives the page its address,
the address uses the value at that moment. If you change the value later, the variable’s
screen lists the addresses made from the earlier value and asks whether to update
them. Old addresses keep working: they redirect to the new ones.

### Does Weglot translate my variable values again?

Weglot translates the whole page. When a variable has its own value for the visitor’s
language, Glovario marks it so Weglot leaves it unchanged (in shortcodes, tokens,
and the Site Variable block). Titles, menus, and HTML attributes cannot carry that
mark: there, correct the text in your Weglot translation list or add a Weglot glossary
rule that keeps it unchanged.

### Is the value copied into post content?

No. Shortcodes, tokens, and blocks store only the variable key and resolve the latest
value on every render.

### Can Glovario convert text that already exists on my site?

Yes. Choose Find matching content after creating a variable, from its row action,
or under Glovario  Content Conversion. Glovario scans only when requested, previews
exact matches in standard WordPress post content, lets you select content items,
and replaces supported text-node occurrences with `{{glvr:key}}` after confirmation.
It preserves WordPress revisions and leaves attributes, URLs, scripts, styles, code/
preformatted regions, shortcodes, unsupported blocks, metadata, widgets/options,
and third-party builder storage untouched.

### What happens when I delete a used variable?

Glovario shows a real detected usage example and lets you leave the reference, replace
detected references with the variable’s current value, or remove them. Replacement
previews highlight the exact change. If no usage is detected, deletion proceeds 
immediately. Detection is not exhaustive for PHP, themes, plugins, or third-party
storage.

### Can I store passwords or API keys?

No. Variables are reusable site content and can be visible on the front end. They
are not a secrets vault.

### Which import and export formats are supported?

JSON. An export contains your variables, their categories, scheduled and language
values, and image references; importing it into another site recreates missing categories
and finds the same images in that site’s Media Library. Every file is fully validated
before anything is written, and a preview shows what would change.

### What happens if my site uses more than two languages?

Glovario is built for bilingual sites: it handles a default language and one second
language, and no more. On a site with more languages, variables cannot have a value
for the others; visitors in those languages see each variable’s default value, and
a red notice in the admin names your multilingual plugin and lists the languages
concerned. The plugin is still useful there for content that does not change with
the language, such as addresses, phone numbers, and email addresses.

### Does it work with Elementor 4’s new widgets?

Yes. The Paragraph, Heading, and Button widgets have the Make variable and Insert
variable buttons in their text toolbar, both in the panel and in the floating toolbar
when you edit the text directly on the page. The editor canvas shows each variable’s
current value, and the widget keeps the shortcode, so later changes to the variable
appear everywhere.

### Can Glovario switch languages without another multilingual plugin?

Yes, for two languages (the default and one more). In Standalone mode, enable the
compact site-wide flag switcher under Locale Settings, insert the Glovario Language
Switcher block, or use `[glvr_locale_switcher]`. The site-wide option is off by 
default and, when enabled, appears with safe spacing in the top-right header area
on every public page. A visitor’s allowlisted choice switches the frontend WordPress
request locale, installed translation files, locale-aware formatting, document language,
and locale-conditioned Site Variables together.

The switcher does not create or translate separate posts, menus, slugs, media, or
URLs. Those require authored translations or a full multilingual plugin. When Polylang,
TranslatePress, or a configured Weglot installation is active, Glovario automatically
defers to it and hides the standalone selector. An unconfigured Weglot installation
does not disable Glovario’s selector. With other multilingual plugins, choose the
WordPress request locale mode under Locale Settings so Glovario follows the language
WordPress uses for each page.

### Does the standalone language switcher work with page caching?

Yes, with supported cache plugins. LiteSpeed Cache, WP Super Cache, and W3 Total
Cache keep one cached copy per language, so visitors who chose the second language
also get cached pages, and saving a variable refreshes every copy. On OpenLiteSpeed
servers, restart the web server once after switching to Standalone mode so it applies
the new cache rule (Locale Settings reminds you). W3 Total Cache’s Disk: Enhanced
mode cannot keep a second copy, so Glovario makes visitors who chose the second 
language skip it (they get correct, uncached pages). Cloudflare, Varnish, and similar
caches do not cache visitors with cookies in their standard setup; if yours caches
every page (for example a Cloudflare “Cache Everything” rule), add a rule that skips
the cache when the `glovario_locale` cookie is present. On Cloudflare: Caching, 
Cache Rules, a rule for `(http.cookie contains "glovario_locale=")` with Bypass 
cache. Locale Settings warns when it recognises Cloudflare, Fastly, or Varnish in
front of your site. On Varnish, in `vcl_recv`: `if (req.http.Cookie ~ "glovario_locale
=") { return (pass); }`. On nginx FastCGI cache: `fastcgi_cache_bypass $cookie_glovario_locale;
fastcgi_no_cache $cookie_glovario_locale;`.

Locale Settings reports every detected provider, raw and normalized locale mappings,
the provider Glovario follows, WordPress and Glovario locale values, provider destinations,
and missing language packs. It warns when multiple multilingual providers are active
or when the multilingual plugin’s current language is not one of the two configured
languages.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Glovario – Reusable Site Content” is open source software. The following people
have contributed to this plugin.

Contributors

 *   [ bottegawp ](https://profiles.wordpress.org/bottegawp/)

[Translate “Glovario – Reusable Site Content” into your language.](https://translate.wordpress.org/projects/wp-plugins/glovario)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/glovario/), check out
the [SVN repository](https://plugins.svn.wordpress.org/glovario/), or subscribe 
to the [development log](https://plugins.trac.wordpress.org/log/glovario/) by [RSS](https://plugins.trac.wordpress.org/log/glovario/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

First public release.

 * Make variable and Insert variable in the block editor, the Classic Editor, Elementor,
   and Beaver Builder: turn selected text into a variable, with a category, a scheduled
   value, and a value for a second language, and replace the same text on your other
   pages after reviewing the list.
 * Unlimited variables of type Text, Multiline text, URL, Email, Number, and Image(
   from the Media Library, with a size option), with categories, search, filters,
   and read-only built-in values such as the site name and the current year.
 * Shortcodes, `{{glvr:key}}` tokens, the Site Variable block, titles and menus,
   and PHP functions. Titles and descriptions in Yoast SEO and Rank Math show the
   values too.
 * Scheduled values and values for two languages, following Polylang, TranslatePress,
   or Weglot, or the built-in cookie-based language switcher.
 * Usage Inspector, guided conversion of existing text, safe deletion with reference
   replacement, and JSON import and export.
 * Value-only editing for editors and clients with the `glovario_edit_variable_values`
   capability.
 * Translation-ready: the interface follows each user’s WordPress language, with
   translations delivered through translate.wordpress.org.

## Meta

 *  Version **1.0.0**
 *  Last updated **5 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [dynamic content](https://wordpress.org/plugins/tags/dynamic-content/)[multilingual](https://wordpress.org/plugins/tags/multilingual/)
   [reusable content](https://wordpress.org/plugins/tags/reusable-content/)[shortcode](https://wordpress.org/plugins/tags/shortcode/)
   [variables](https://wordpress.org/plugins/tags/variables/)
 *  [Advanced View](https://wordpress.org/plugins/glovario/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/glovario/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/glovario/reviews/)

## Contributors

 *   [ bottegawp ](https://profiles.wordpress.org/bottegawp/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/glovario/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://ko-fi.com/bottegawp)