Hidden Input

A field that stores a value without displaying an editable input to editors. Supports a static default value or dynamic tokens that resolve at save time — useful for recording metadata like which user saved a post, the save date, or the current post ID.

Pro field

Hidden Input requires the Extra Fields for ACF Pro license.

Settings

SettingDefaultOptionsDescription
Default Value(empty)Any stringStatic value stored when no dynamic token is selected.
Dynamic Token(none)user_id · post_id · date · timeAuto-populates the field with a resolved value at save time.
Auto Updatefalseon/offRe-evaluate and overwrite the token value on every save (not just the first).

Dynamic tokens

TokenResolves to
{{user_id}}Current logged-in user’s ID
{{post_id}}Current post’s ID
{{date}}Current date in Y-m-d format
{{time}}Current time in H:i:s format

Return values

Returns a plain string — the static default or the resolved token value.

$user_id = get_field('created_by');
// "42"

$save_date = get_field('last_modified_date');
// "2026-06-15"

Usage

Recording who created a post

  1. Add a Hidden Input field named created_by.
  2. Set Dynamic Token to {{user_id}}.
  3. Leave Auto Update disabled (so it only captures the original author).
$creator_id = (int) get_field('created_by');
$creator    = get_userdata($creator_id);

if ($creator) {
    echo 'Posted by: ' . esc_html($creator->display_name);
}

Tracking the last save date

  1. Add a Hidden Input named last_saved.
  2. Set Dynamic Token to {{date}}.
  3. Enable Auto Update so it refreshes on every save.
$saved = get_field('last_saved');
if ($saved) {
    echo 'Last updated: ' . esc_html(date_format(date_create($saved), 'F j, Y'));
}

Static version flag

  1. Add a Hidden Input named schema_version.
  2. Set Default Value to 2 (or whatever your current schema version is).
  3. No token needed.
$version = get_field('schema_version');
if ((int)$version < 2) {
    // Run a migration for old posts
}

Querying by saved date

// Get posts saved today
$posts = get_posts([
    'meta_query' => [[
        'key'   => 'last_saved',
        'value' => date('Y-m-d'),
    ]],
]);