This is the most robust and standard WordPress way. You store your prices in a single location, and then use code/shortcodes to display that value wherever needed.
How it works: You install a plugin like Advanced Custom Fields (ACF) or use a built-in Theme Options Panel. You create a field for each fixed price (e.g., fixed_fee_price).
Update Process: You go to the ACF Options Page (or Theme Options) and change the value of fixed_fee_price once.
Display on Pages: On your pages, instead of using a text shortcode like [price1], you use a shortcode that retrieves the value from that centralized field, like [show_custom_field field="fixed_fee_price"].
If your prices are just simple text, you can create a custom shortcode that returns the current value you've stored in a central location.
How it works:
You define a function in your theme's functions.php file (or a custom plugin) that defines the price:
PHP
function fixed_price_shortcode() {
return '10'; // <--- This is where you set the centralized value
}
add_shortcode('fixed_price', 'fixed_price_shortcode');
On your pages, you use the shortcode: The fixed fee is [fixed_price].
Update Process: To change the price from '10' to '15', you only edit the value in the functions.php file (or custom plugin code) once. All pages using [fixed_price] will instantly update.
There are plugins specifically designed to let you create a reusable content block (like a price listing or a call-to-action) and insert it across many pages.
Examples: Plugins often called "Reusable Blocks" or "Global Content Blocks." Some page builders like Elementor or Divi have Global Modules features that let you design a price element and link all instances to the original.
How it works: You create a Global Block containing the price text. You insert this block on all necessary pages.
Update Process: You edit the content of the Global Block in one place, and it updates everywhere the block is used.
Your proposed solution of linking two separate text shortcodes (price1 and price2) is generally not how web development works. HTML ID elements are meant for styling or unique scripting, not for content synchronization.
The goal is to eliminate the need for price1 and price2 and replace them with a single source, e.g., fixed_fee, that you reference multiple times.
Old Method (Hard to manage)New Method (Centralized)Page A: Price 1: [price1]Page A: Price: [fixed_fee]Page B: Price 2: [price2]Page B: Price: [fixed_fee]Update: Edit Page A, then Edit Page B.Update: Edit the centralized value once.
I recommend starting with Method 1 (Advanced Custom Fields or similar) as it provides the most flexibility, especially since you have different prices per country and fixed fees. You could set up fields for:
global_fixed_fee
us_variable_price
ca_variable_price
Would you like me to find a popular, highly-rated plugin that offers the "Global Content Block" functionality, or should we focus on using Advanced Custom Fields?