Appearance
Dynamic Tags
Voxel Toolkit extends Voxel's dynamic data system with extra modifiers, methods, and properties. They work anywhere Voxel accepts a dynamic tag — Elementor widgets, email templates, and post type settings.
Voxel Toolkit → Dynamic Tags lists what's currently available on your site, and Tag Usage scans your templates for where each one is actually used.
Properties follow their function
Most properties only exist when the function that provides them is enabled. @post(reading_time) needs the Reading Time widget enabled; @user(online_status) needs Online Status. If a tag returns nothing, check the function is switched on first.
Modifiers
Modifiers transform the value of a tag. Chain them with a pipe, the same as Voxel's built-in modifiers.
| Modifier | What it does |
|---|---|
file_size | Outputs the size of a file field's value |
file_extension | Outputs the file extension |
address_part | Extracts a single component from an address — city, state, postcode, and so on |
tally | Counts items in the value |
sold | Outputs sold/stock state for a product |
generate_qr_code | Generates a QR code from the value |
see_more | Truncates long text with a "see more" toggle |
initial | Reduces a name to its initial — useful for avatars and privacy |
Methods
| Method | Group | What it does |
|---|---|---|
profile_completion | @user(), @author() | Returns how complete the profile is, driven by the Profile Progress widget's field configuration |
summary | @order() | Returns an order summary |
render_post_tag | @site() | Renders any @post() tag in the context of a different post |
render_post_tag
Provided by the Post Fields Anywhere function. It lets you output a field from one post while rendering another — for example showing a parent listing's address on a child post.
@site().render_post_tag(post_id, @post(field_name))Properties
Post
| Property | Provided by |
|---|---|
reading_time | Reading Time widget |
word_count | Reading Time widget |
campaign_amount_donated | Campaign Progress widget |
campaign_number_of_donors | Campaign Progress widget |
campaign_percentage_donated | Campaign Progress widget |
article_helpful_yes_count | Article Helpful widget |
article_helpful_no_count | Article Helpful widget |
article_helpful_total_votes | Article Helpful widget |
article_helpful_percentage | Article Helpful widget |
article_helpful_latest_yes | Article Helpful widget |
article_helpful_latest_no | Article Helpful widget |
feed_position | Recurring Events |
is_team_member | Team Members |
ai | AI Post Summary — @post(ai.summary) |
User and Author
| Property | Group | Provided by |
|---|---|---|
membership_expiration | @user(), @author() | Membership Notifications |
online_status | @user(), @author() | Online Status |
is_online | @user(), @author() | Online Status |
last_seen | @user(), @author() | Online Status |
unread_notifications | @user() | Title Notification Badge |
unread_messages | @user() | Title Notification Badge |
Site
| Property | Provided by | Example |
|---|---|---|
options | Site Options | @site(options.field_name) |
visitor | Visitor Location | @site(visitor.location) |
Share count
The Share Count function adds @post(share_count), which returns how many times a post has been shared through Voxel's share menu.

