Skip to content
No results
  • Home
  • Tutorials
  • Plugins
    • Flow POS – Free WooCommerce POS Plugin (Point of Sale for WordPress)
    • Raffly – Raffles to WooCommerce
    • Wizard Cart Import
    • AR Model Viewer for WooCommerce
  • Projects
  • Tools
  • Contact
LinkedIn GitHub WordPress WhatsApp TikTok
LinkedIn GitHub WordPress WhatsApp TikTok
racmanuel.dev
  • Home
  • Tutorials
  • Plugins
    • Flow POS – Free WooCommerce POS Plugin (Point of Sale for WordPress)
    • Raffly – Raffles to WooCommerce
    • Wizard Cart Import
    • AR Model Viewer for WooCommerce
  • Projects
  • Tools
  • Contact
Contacto

racmanuel.dev

AR Model Viewer for WooCommerce

4
  • Getting Started
  • Description
  • Requisites
  • Installation Guide

Custom Fields Booster

5
  • HTML
  • Code Scan
  • Checklist
  • Action Button
  • Address

Flow POS - Point of Sale for WooCommerce

1
  • Hooks and Filters
View Categories
  • Home
  • Docs
  • Custom Fields Booster
  • Checklist

Checklist

2 min read

Provides a checklist UI with optional progress and storage modes.

The field stores selected items as an array of indexes or labels based on the chosen mode.

Use Cases #

  • Track content review tasks
  • Collect completion status for onboarding steps
  • Record compliance checks
  • Store per-entry progress lists
  • Maintain editorial checklists

Field Preview #

A list of checkboxes with optional progress text and a progress bar.

How to Use #

  1. Add the Checklist field to a Field Group.
  2. Enter Items (one per line).
  3. Enable Show progress if desired.
  4. Choose Columns (1 or 2).
  5. Toggle Editable.
  6. Select Store value as (Number or Name).
  7. Save the Field Group and edit a post.

Field Settings #

SettingDescriptionDefault
ItemsOne item per lineItem 1, Item 2, Item 3
Show progressShow completed count and a progress bar1
ColumnsLayout columns for items (1 or 2)1
EditableAllow editors to check/uncheck items1
Store value asSave by item position or item textindex

Notes:

  • Stored values are normalized, de-duplicated, and sorted.

Value & Storage #

Saved as: Post meta

Storage type: Array

Return format: array

REST format: not specified

Saved structure:

  • Array of integers (1-based positions) when store mode is index
  • Array of strings (item labels) when store mode is label

Important details:

  • Invalid values are discarded during normalization.
  • Required validation enforces at least one selection when enabled.

Output Examples #

PHP #

$selected = get_field('my_checklist');

if (is_array($selected)) {
    foreach ($selected as $item) {
        echo esc_html((string) $item);
    }
}

Twig #

{% set selected = fn('get_field', 'my_checklist') %}
{% if selected %}
  {% for item in selected %}
    {{ item|e }}
  {% endfor %}
{% endif %}

Compatibility #

  • Repeaters
  • Flexible Content
  • Options Pages
  • Frontend forms (acf_form)
  • REST API
  • Multisite

Hooks (Developer) #

Hooks Summary #

HookTypePurpose
custom_fields_booster_checklist_defaultsFilterModify default settings.
custom_fields_booster_checklist_supportsFilterModify ACF support flags.
custom_fields_booster_checklist_before_settingsActionRun logic before rendering settings UI.
custom_fields_booster_checklist_after_settingsActionRun logic after rendering settings UI.
custom_fields_booster_checklist_before_enqueueActionRun logic before enqueuing assets.
custom_fields_booster_checklist_after_enqueueActionRun logic after enqueuing assets.
custom_fields_booster_checklist_before_renderActionRun logic before rendering UI.
custom_fields_booster_checklist_after_renderActionRun logic after rendering UI.
custom_fields_booster_checklist_store_modeFilterOverride storage mode.
custom_fields_booster_checklist_is_editableFilterOverride editable state.
custom_fields_booster_checklist_itemsFilterModify checklist items.
custom_fields_booster_checklist_wrapper_attrsFilterModify wrapper attributes.
custom_fields_booster_checklist_progress_templateFilterCustomize progress text.
custom_fields_booster_checklist_after_uiActionRuns after the checklist UI block.
custom_fields_booster_checklist_update_valueFilterModify value before save.
custom_fields_booster_checklist_item_completedActionFires for each newly completed item on save.
custom_fields_booster_checklist_completed_allActionFires when all items are completed on save.
custom_fields_booster_checklist_updated_valueActionFires after normalization before save.
custom_fields_booster_checklist_load_valueFilterModify value after loading.
custom_fields_booster_checklist_validate_valueFilterModify validation result.
custom_fields_booster_checklist_format_valueFilterModify value returned by get_field().

Filters #

Filter: custom_fields_booster_checklist_store_mode

Purpose: Override the storage mode.

When: You need to force a consistent mode across fields.

add_filter('custom_fields_booster_checklist_store_mode', function ($mode, $field, $post_id) {
    return 'label';
}, 10, 3);

Filter: custom_fields_booster_checklist_items

Purpose: Modify the items list.

When: You need to add or remove items dynamically.

add_filter('custom_fields_booster_checklist_items', function ($items, $field, $post_id) {
    $items[] = 'New item';
    return $items;
}, 10, 3);

Filter: custom_fields_booster_checklist_update_value

Purpose: Modify the normalized value before save.

When: You need to transform stored values.

add_filter('custom_fields_booster_checklist_update_value', function ($selected, $value, $post_id, $field, $store_mode) {
    return $selected;
}, 10, 5);

Actions #

Action: custom_fields_booster_checklist_after_ui

Runs after the checklist UI block renders.

add_action('custom_fields_booster_checklist_after_ui', function ($field, $post_id, $selected, $total, $store_mode) {
    // Custom logic.
}, 10, 5);

Assets #

This field enqueues assets whenever the input is rendered (admin and frontend via acf_form()):

  • admin/js/cfb-field-checklist.js
  • admin/css/cfb-field-checklist.css

REST API #

Schema: not specified

REST Validation #

Standard ACF validation only.

Security & Escaping #

  • Output escapes attributes and labels in the field UI.
  • escaping_html support is disabled for this field.

Notes / Limitations #

  • Items are re-indexed from 1 based on the configured list.

Changelog #

  • 1.0.0 — Initial release
Updated on 24/02/2026
Free

Was the documentation helpful?

  • Happy
  • Normal
  • Sad
Code ScanAction Button
Table of Content
  • Use Cases
  • Field Preview
  • How to Use
  • Field Settings
  • Value & Storage
  • Output Examples
    • PHP
    • Twig
  • Compatibility
  • Hooks (Developer)
    • Hooks Summary
    • Filters
    • Actions
  • Assets
  • REST API
  • REST Validation
  • Security & Escaping
  • Notes / Limitations
  • Changelog

racmanuel.dev

Ayudamos a crecer tu empresa mediante soluciones tecnológicas personalizadas. Nos especializamos en desarrollar herramientas que optimizan procesos, aumentan la eficiencia y generan resultados visibles.

Información de Contacto

  • Teléfono: +52 (444) 380 57 40
  • WhatsApp: +52 (444) 380 57 40
  • Correo: developer@racmanuel.dev
  • Dirección: 78250 San Luis Potosí, S.L.P., San Luis Potosí, México
  • Home
  • Tutorials
  • Plugins
  • Projects
  • Tools
  • Contact

Copyright © 2024. Hecha ❤️ con WordPress.