Appearance
The pricing table and member panel
Two pieces, each available four ways:
| Pricing table | Membership panel | |
|---|---|---|
| Block editor | VX Pricing Table block | VX Membership block |
| Elementor | widget of the same name | widget of the same name |
| Bricks | element of the same name | element of the same name |
| Anywhere | [vxm_pricing] | [vxm_membership] |
The pricing table
Your plans, what each allows, and a button that goes straight to FluentCart's checkout for the chosen price.
Each card lists what the plan carries in plain words — "5 properties," "Featured badge on every listing," "Up to 40 photos per listing," "Listings run for 60 days." When plans are sold at more than one interval, a toggle above the cards switches between monthly and yearly. Whole prices drop the ".00." A member sees the plan they hold marked, and only the plans their role can hold.
When "No plan" allows anything, a free card leads the table.
| Setting | Shortcode | What it does |
|---|---|---|
| Plans to show | plans="basic,pro" | Which plans, in order, by key. Empty shows every plan on sale. |
| Recommended plan | highlight="pro" | One plan to mark as recommended. |
| Button text | button="Get {plan}" | {plan} becomes the plan's name. |
| List what each plan allows | show_allowances="0" | On by default. |
| Free card | show_free="0" | On by default, when "No plan" allows something. |
| Free card name | free_label="Starter" | Defaults to Starter. |
| Free card link | free_url="/register/" | Defaults to WordPress's registration page. |
text
[vxm_pricing plans="agent,agent_pro" highlight="agent_pro" button="Choose {plan}"]The membership panel
What the signed-in member has: their plans with their status, when each renews or ends, what they have used per post type, and their buttons.
- Payment trouble shows a line asking them to update their payment details to keep their posts live.
- A canceled plan shows the date it ends.
- Change plan lists the switches they can make, with FluentCart Pro.
- Manage billing opens FluentCart's customer portal.
- See all plans (or Upgrade your plan for someone with none) goes to your pricing page.
A member with no plan sees the free level as their plan when "No plan" allows anything. A signed-out visitor sees a Log in button.
| Setting | Shortcode | What it does |
|---|---|---|
| Show what they have used | show_usage="0" | On by default. |
| Pricing page | pricing_url="/pricing/" | Where the plans button goes. Without it, the button is not shown. |
In FluentCart's customer portal
The module adds a Membership tab to FluentCart's own customer dashboard, with the same panel. Members who manage their subscription there find their allowance next to it.
Style controls
The pricing table and the panel share one set of style controls in every builder: Accent, Card background, Text, Secondary text, Borders, Corner radius, and, for the pricing table, Columns (1 to 4). Each is a CSS custom property (--vxm-mb-accent and so on), so a theme can set them too.
Query Loop options
WordPress's Query Loop block has no setting to sort by plan priority, show only featured posts, or list the viewer's own posts. Add one of these class names under the block's Advanced → Additional CSS classes:
| Class | What the loop shows |
|---|---|
vxm-by-priority | Sorted by plan priority, then newest. |
vxm-featured-only | Only posts their plan features. |
vxm-mine | The viewer's own posts, in every status they can have — live, pending, draft, paused, expired. Nothing for guests. |
vxm-same-author | Posts by the author of the page being shown, such as an agent's page listing their homes. |
They combine: vxm-mine vxm-by-priority is a member's own listings, best first. vxm-mine matters on a member dashboard because a subscriber cannot open wp-admin's lists and would otherwise never see their own paused or pending posts. Pair it with @post_plan(status) to say why each one is where it is — see Tags, rules, and emails.

