Massoftind Custom Fields & Field Builder

Description

Massoftind Custom Fields & Field Builder is a modern custom fields and field builder plugin for WordPress. Build reusable field groups with a clean visual UI, add fields to the post edit metabox, nest repeaters and flexible layout blocks, attach media and relationship fields, and render values safely in your theme with get_field-style helpers.

Use it as a standalone custom field builder, register custom post types and custom taxonomies, or migrate from ACF (Advanced Custom Fields) with the built-in import tool — location rules, conditional logic, repeaters, and flexible content layouts carry over.

Highlights

  • Visual field builder — drag-and-drop fields, search, duplicate, Browse Fields type switcher
  • 54 field types — basic, date/time, media, content, choices, relations, layout, and advanced (table, phone, country, address, tags, image hotspot, and more)
  • Nested structures — Repeater, Group, Accordion, Tabs, Layout Blocks
  • Smart location rules — post type, template, taxonomy, user form, and custom filters
  • Conditional logic — show/hide fields based on other field values
  • Developer-first — copy-ready PHP snippets, Filters & Hooks guide, optional REST API
  • Bricks Builder{mfb_field} Dynamic Data tags + Massoftind Repeater query loop (coexists with ACF Pro {acf_…})
  • Elementor — Massoftind Dynamic Tags for all 54 field types (text, image, URL, gallery, color, number) including Table, Phone, Country, Tags, and Markdown
  • Multilingual-ready — WPML / WCML and qTranslate-X / qTranslate-XT
  • Try instantlyWordPress Playground live demo

ACF migration & compatibility

  • Migrate from ACF — Tools Migrate from ACF scans real Advanced Custom Fields (free or PRO) field groups and imports them with a report of skipped or downgraded field types
  • ACF alternative — standalone custom fields plugin with metabox UI, repeaters, flexible content (Layout Blocks), and theme helpers (massoftind_fb_get, have_rows, optional get_field aliases)
  • Import / export JSON — move field groups between sites; compatible portable field-group JSON is normalized on import
  • Bricks ACF tag alias — keep existing {acf_…} dynamic tags and repeater query loops after switching from ACF Pro

Gutenberg custom fields & blocks

  • Block bindings — bind core blocks (Paragraph, Image, Heading, etc.) to custom field values via the massoftind-fb/field binding source
  • Massoftind Field Group block — pick a field group in the block editor and edit fields in a modal (WYSIWYG, media, conditional logic)
  • Custom blocks registry — create named Gutenberg blocks from the admin; attach field groups with a Block location rule
  • Front-end rendering — block field values use the same formatting filters as post meta fields

Try a live demo

Open WordPress Playground with the plugin preinstalled:

Try Massoftind Custom Fields & Field Builder in WordPress Playground

Video tutorials

Plugin overview — field builder, field groups, location rules, and template helpers:

Import from CPT UI — migrate custom post types from Custom Post Type UI into Field Builder:

Field types

  • Basic: Text, Textarea, Number, Email, URL, Password, Hidden, Slug, Phone, Range, Color
  • Date & time: Date, Date & Time, Time, Date Range
  • Media: Image, Image Hotspot, Gallery, File, Video, YouTube
  • Content: WYSIWYG, Code Editor, Markdown, Shortcode, Link, Page Link, oEmbed, Google Map, Message
  • Choices: Select, Checkbox, Radio, Button Group, Toggle, Star Rating, Country, Tags
  • Relations: Post Object, Relationship, Taxonomy, User, Nav Menu, Post Types
  • Layout: Repeater, Group, Accordion, Tabs, Layout Blocks, Clone, Separator
  • Advanced: Icon Picker, Address, Table

Modern media & gallery

  • Gallery and Image return formats: Image ID, Image URL, or Image Array
  • Gallery layouts: Card / Masonry with optional lightbox
  • Per-image Link URL + Link Target (_blank, _self, _parent, _top) in the Media sidebar
  • Theme loops can use $img['external_url'] and $img['target'] (or massoftind_fb_the_gallery())

Relationships & taxonomies

  • Relationship field and post object picker — dual-list UI with search, filters, and drag reorder
  • WYSIWYG field, gallery field, and other meta fields stored as prefixed post meta
  • Allow Multiple with optional Min / Max selection limits
  • WPML-aware titles — Available and Selected stay in the current admin language
  • Taxonomy multi-select preserves pick order; optional Exclude Terms picker
  • Taxonomy Min / Max when multiple is enabled

Builder & admin experience

  • Drag-and-drop field builder with nested Sub Fields
  • Location rules (post type, page template, taxonomy, role, Gutenberg block, and more)
  • Conditional logic on fields
  • Import / export field groups as JSON
  • Custom post types, custom taxonomies, Site Sections, List Views, and Content Order
  • Settings: Preferences, Field Usage Guide, Filters & Hooks reference
  • Optional Classic Editor toggle and SVG upload control
  • Onboarding checklist and in-plugin documentation

Multilingual & integrations

  • WPML custom fields — translate/copy field values; WCML product sync; review WPML Settings Custom Fields Translation
  • qTranslate fields — language buttons on text-like fields with qTranslate-X / qTranslate-XT
  • Yoast SEO / Premium and Rank Math / Pro — custom field variables
  • WooCommerce location rules for products
  • WP All Import Pro / WP All Export Pro field exposure
  • Elementor (Free + Pro) — Massoftind Dynamic Tags group

Template helpers

Use in your theme:

  • massoftind_fb_get() / massoftind_fb_update()
  • massoftind_fb_have_rows() / massoftind_fb_the_row() / massoftind_fb_sub_field()
  • massoftind_fb_image() / massoftind_fb_gallery() / massoftind_fb_the_gallery()
  • massoftind_fb_terms() / massoftind_fb_date() and more

Optional template-compatibility aliases (get_field, have_rows, …) can be enabled in Settings for existing theme code.

Bricks Builder

When Bricks Builder is active (Settings Bricks Dynamic Data on by default):

  • Use {mfb_field_name} in Dynamic Data (group Massoftind Custom Fields & Field Builder)
  • Options: {mfb_option:field_name}
  • Repeaters: Query Loop type Massoftind Repeater, set Meta Key to the repeater name, use {mfb_row:sub_field} inside the loop
  • ACF Pro can stay installed — {acf_…} tags are not changed; rebind templates to {mfb_…} only when migrating fields
  • Or deactivate ACF: with Bricks ACF tag alias (default on), existing {acf_…} tags and ACF repeater query loops are resolved by Massoftind — no Bricks template edits

Elementor

When Elementor is active (Settings Elementor Dynamic Tags on by default):

  • Elementor dynamic tags — open any widget control that supports Dynamic Tags group Massoftind Custom Fields & Field Builder
  • Tags: Massoftind Field (text), Image, URL, Gallery, Color, Number
  • Source: Current post / term or Site Sections / Options
  • Nested Group fields appear as parent_child names in the picker
  • Prefer these tags for new CMS builds; optional ACF shim still helps some Elementor Pro ACF widgets after migration

Privacy & third-party services

  • Does not phone home or send site data to Massoftind
  • YouTube fields may load thumbnails/embeds from YouTube only when configured — see YouTube Terms
  • SVG uploads are off by default (Settings Allow SVG Uploads)

Optional companion

Works alongside Dynamic Content Builder for front-end listings. No other plugins are required to use Field Builder.

Screenshots

Installation

  1. Upload the massoftind-field-builder folder to /wp-content/plugins/, or install via Plugins Add New Upload Plugin.
  2. Activate Massoftind Custom Fields & Field Builder.
  3. Open Field Builders in the admin menu.
  4. Create a field group, add fields, set location rules, and save.
  5. Edit matching content and use template helpers (or the developer panel snippets) in your theme.

FAQ

Do I need another custom fields plugin?

No. Massoftind Custom Fields & Field Builder is a standalone custom field builder with its own metabox UI, repeaters, relationship fields, and theme helpers.

Can I migrate from ACF (Advanced Custom Fields)?

Yes. With real ACF (free or PRO) active, open Field Builders Migrate from ACF, select field groups, and import them. Location rules, conditional logic, repeaters, and flexible content layouts are converted; unsupported field types are reported.

Is this an ACF alternative?

Yes. It is a full custom fields plugin on its own — field groups, metabox UI, repeaters, flexible content (Layout Blocks), options (Site Sections), custom post types, and custom taxonomies. Optional ACF compatibility helpers ease theme and page-builder migration.

Does it work with Gutenberg and block bindings?

Yes. Use block bindings (massoftind-fb/field) to bind core blocks to field values, the Massoftind Field Group block for modal editing, and the Custom Blocks registry for named Gutenberg blocks tied to field groups.

Can I register custom post types and taxonomies?

Yes. Field Builders Post Types and Taxonomies let you register CPTs and taxonomies from the admin (labels, supports, rewrite rules, and more) without extra code.

Can I try it before installing?

Yes — WordPress Playground live demo.

Where are field values stored?

As prefixed post meta (and option storage for Site Sections). Field-group definitions use an internal custom post type.

How do I set a Link URL on a gallery image?

Open the Gallery field Edit on a thumbnail in Attachment Details set optional Link URL and Link Target. Values appear in Image Array as external_url and target.

Can I limit how many items a Relationship or Taxonomy field allows?

Yes. Enable Allow Multiple, then set optional Minimum Selections and Maximum Selections (0 = no limit).

Can I move field groups between sites?

Yes. Use Tools Export and Import for JSON field-group definitions (and related Post Types / Taxonomies / Site Sections when present).

Is there a REST API?

Yes, optional. Enable under Field Builders Settings. Endpoints require authenticated users with the right capabilities.

Does this phone home?

No.

Does it work with qTranslate-X?

Yes. With qTranslate-X or qTranslate-XT, text-like fields (including Markdown and Address sub-fields) use Language Switching Buttons. Helpers return the active language on the front end — including Bricks and Elementor dynamic tag output via massoftind_fb_format_value.

Does it work with Yoast SEO, Rank Math, WP All Import / Export?

Yes, when those plugins are active (SEO variables, sitemap exclusions, import/export field exposure).

Does it work with WPML / WooCommerce Multilingual?

Yes. Fields register for translate/copy; WCML product translation UI is supported. Override under WPML Settings Custom Fields Translation.

Does it work with Bricks Builder and ACF Pro?

Yes. Bricks Dynamic Data shows a Massoftind Custom Fields & Field Builder group with {mfb_field_name} tags for all 54 field types — including Table, Phone, Country, Address, Tags, Markdown, and Image Hotspot (readable text or image output). While ACF Pro is active, Bricks’ {acf_…} tags stay native to ACF. After you deactivate ACF and import field JSON into Massoftind, enable Settings Bricks ACF tag alias (default on) so the same {acf_…} tags and ACF repeater loops keep working through Massoftind — no Bricks template or core edits. For repeaters you can also use Query Loop type Massoftind Repeater and {mfb_row:sub_field}.

Does it work with Elementor?

Yes. With Elementor active, Dynamic Tags include a Massoftind Custom Fields & Field Builder group (text, image, URL, gallery, color, number) with all 54 field types in the picker — including Table, Phone, Country, Address, Date Range, Slug, Tags, Markdown, Post Types, Icon Picker, and Nav Menu. Image Hotspot works in Image/URL tags. Bind Heading, Image, Button, and Gallery widgets to your fields — including Site Sections / Options. Keep field names when migrating from ACF; use the Massoftind tags for a reliable CMS workflow (Elementor Pro’s ACF tags remain best-effort via the optional ACF shim).

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Massoftind Custom Fields & Field Builder” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.9.199

  • Docs: WordPress.org readme videos now use embedded YouTube players (shortcode format) with titles for each tutorial.

1.9.198

  • Docs: added CPT UI import video tutorial to in-plugin documentation and readme.

1.9.197

  • Fix: Table field — adding columns before rows no longer breaks “Add row” (new rows match header column count).
  • Compat: Elementor repeater row tags format sub-fields like massoftind_fb_sub_field() (Image URL return format, qTranslate, etc.).

1.9.196

  • Fix: Repeater / accordion sub-fields respect Image Return Format (Image URL) in massoftind_fb_sub_field() and developer code examples.

1.9.195

  • Fix: Image field Return Format “Image URL” now returns the attachment URL from massoftind_fb_get() / get_field().

1.9.194

  • New: Table, Phone, Country, Address, Date Range, Slug, Tags, Image Hotspot, Markdown, and Post Types field types (54 total).
  • Improve: ACF migration imports matching addon field slugs (table, phone_number, country_selector, tags_input, etc.) as native types.
  • Compat: Bricks, Elementor, WPML, and qTranslate support for all new field types — readable Bricks/Elementor output, WPML JSON registration for structured fields, qTranslate LSB for Markdown and Address inputs.

1.9.193

  • New: Icon Picker, oEmbed, Separator, and Nav Menu field types.
  • Improve: ACF migration now imports icon_picker and oembed as native types instead of downgrading.

1.9.192

  • Remove: Frontend forms feature — [massoftind_fb_form] shortcode, massoftind-fb/form block, and related Settings toggles.

1.9.191

  • Fix: readme short description within WordPress.org 150-character limit.

1.9.190

  • UI: Clearer admin sidebar labels (All Field Groups, Global Options, Gutenberg Blocks, Admin Table Columns, Sort Content Order, Export Field Groups, Import from ACF).
  • Docs: WordPress.org readme SEO — improved short description, ACF migration & Gutenberg sections, new FAQ entries, tag update (acf migration).

1.9.189

  • Rename: Display name is now Massoftind Custom Fields & Field Builder (slug and URLs unchanged).
  • Fix: Plugin Check sanitization for block field AJAX POST inputs.

1.9.188

  • New: Gutenberg Block Bindings (massoftind-fb/field) — bind core blocks to MFB field values.
  • New: “Massoftind Field Group” Gutenberg block with modal field editing (WYSIWYG, media, conditional logic).
  • New: Custom Blocks registry — create named Gutenberg blocks from admin, attach field groups via Block location rules.
  • New: Migrate from ACF tool — import real ACF field groups with a skipped/downgraded field report.
  • Fix: Custom blocks no longer render unrelated field groups (strict block location matching).
  • Security: REST public endpoint no longer leaks WP_User/WP_Post/WP_Term object internals; AJAX post search respects read_post capability.

1.9.187

  • Fix: Plugin Check compliance — removed phpunit.xml.dist from the release package (dev-only file), replaced unlink() with wp_delete_file() in the SVG upload sanitizer, and renamed internal helper functions to use the full massoftind_fb_ prefix (no leading underscore) per WordPress naming conventions.

1.9.186

  • Security: REST public field-values endpoint now fails closed (returns nothing, not everything) when the field allowlist is empty; Password fields are never exposed through it.
  • Security: Field group builder/dev-code JSON bootstrap hardened against stored XSS via crafted choice labels (JSON_HEX escaping + tag stripping on save).
  • Security: Hidden Login “block other logins” now verifies a real nonce instead of a guessable static marker.
  • Security: SVG uploads are sanitized on disk at upload time (not just when inlined), with a stronger sanitizer covering more script/handler/URI vectors.
  • Security: Frontend form submissions restricted to public, registered post types; Local JSON directory setting confined under wp-content; list view column headers escaped on output; direct-access guards added to remaining stub files.

1.9.185

  • Fix: Fallback value service missing have_option_rows and related template-compat methods; stop permanently caching fallback before plugin bootstrap completes.

1.9.184

  • Fix: Parse error in must-use safety loader (duplicate <?php tag in generated MU plugin file).

1.9.183

  • Fix: Term Description WYSIWYG scoped to add/edit forms (no editor UI in taxonomy list table).
  • Fix: massoftind_fb_* helper stubs and must-use safety loader during plugin updates.

1.9.182

  • Fix: Critical error on 1.9.181 — restore TermDescriptionEditor and term description editor script.

1.9.181

  • Fix: Site Section link fields — removing a link persists after save (legacy option purge; empty URL clears qTranslate title leftovers).
  • New: Taxonomy term Description — WYSIWYG editor on all term add/edit screens; post-style HTML allowed.

1.9.180

  • UI: Relationship field — infinite scroll in Available list (auto-loads next page on scroll; fills viewport when the first page is short).

1.9.179

  • New: File field — image MIME types (jpg, jpeg, png, gif, webp, avif, svg) in Allowed File Types; front-end accepts images when configured (ACF parity).
  • UI: Repeater/Group Row layout — CSS grid columns; Relationship and WYSIWYG span full row; link URL overflow and quicktags fixes in row/table layouts.
  • Fix: Relationship search — paginated results with Load more (50/page, filterable max 100); no longer capped at ~20 items.
  • Fix: Plugin Check — Local JSON uses WP_Filesystem; frontend form flash args sanitized; VIP-safe relationship exclusion.

1.9.178

  • Compat: Elementor row tags run through massoftind_fb_format_value (qTranslate parity with Bricks); WPML registers seamless/prefixed Clone names; frontend forms disconnect WPML duplicates before save. Bricks / qTranslate cores untouched.
  • New: WPGraphQL — massoftindField / massoftindFields on GraphQL post types + RootQuery (Settings toggle).
  • New: Local JSON CI — WP-CLI wp mfb local-json status|push|pull [--force]; Tools documents deploy sync.
  • UI: Conditional logic — starts_with / ends_with / >= / <=, AND separators, live rule summary.
  • New: Relationship — Term mode (term), meta key/value/compare filters, bidirectional for users and terms; min selection blocks publish.
  • New: Elementor Pro Loop Grid — Query ID mfb_repeater; row tags use active loop index.
  • New: Frontend forms — shortcode [massoftind_fb_form] and block massoftind-fb/form (Settings Frontend forms / Guest).
  • New: Stronger Clone — seamless vs group, prefix names, field picker; seamless splices at match time.
  • New: CPT editor — custom post statuses (slug|Label); PHPUnit smoke suite (composer test).
  • New: Local field groups API + Local JSON push/pull; Relationship Bidirectional (same-language posts); Button Group and Page Link fields; massoftind_fb_meta_query(); optional public REST field-values (default off).
  • New: Elementor Free Repeater Row tags + Layout Blocks in picker; nested path resolve; Row URL / Row Number tags.
  • Fix: REST field-values raw edit-safe reads + optional ?lang= for WPML; option-values and term-values REST endpoints.
  • New: CPT capability_type / map_meta_cap, Labels, attach Taxonomies; List View switcher; Export site package; Developer Panel Bricks/Elementor snippets.
  • Fix: Featured list filter skip when List View owns table; Author filter user dropdown; Taxonomy Filter only (hide column).

1.9.177

  • New: Taxonomies Show as list filter — term dropdown on the post list toolbar (same row as dates / Filter). Auto-wires into active List Views; fallback filter when no List View. Filterable ≠ Sortable clarified in List View editor.

1.9.176

  • Fix: Uninstall keeps field groups, settings, Site Sections, List Views, and field/option values so delete reinstall restores previous data. Only regenerable caches are cleared.

1.9.175

  • UI: Tools Content Sync shows a clear “Sync complete” success panel, toast, and “Sync again” button when batched sync finishes.

1.9.174

  • New: Settings Featured Posts — star toggle on list tables, edit metabox, list filter / Featured view, optional radio or max-count limits. Integrates with List Views; WPML Copy sync for featured meta.
  • New: Settings Hidden Login — custom login slug, hide wp-admin for guests, optional block of administrator sign-in on other forms.
  • Fix: Group/Repeater collapse when Layout is Table or Row; PHPCS sanitization/escaping for Featured Posts, Hidden Login, and Featured Image admin CSS.
  • UI: Plain-language Settings copy (General, Filters & Hooks, Field Usage Guide); Usage Guide shows field name + description (no category pills); Settings tabs stay on one row.

1.9.173

  • Fix: WPML Copy on Site Section fields now mirrors values across languages (options are stored per-language; Copy previously only applied to post meta). Explicit Copy once seeds empty language keys from the default language. Edit the default language to change shared Copy fields. Type-default copy-once does not auto-seed (keeps qTranslate / prior independent option behaviour). Bricks, Elementor, and Content Order untouched.

1.9.172

  • Fix: WPML “Don’t translate” on fields did not persist — save synced every radio and unchecked options cleared the value, so the UI fell back to Copy once.

1.9.171

  • New: Repeater and Group fields include a Layout setting (Block / Table / Row) so each section can change how sub fields appear in the editor only — front-end templates, Bricks, Elementor, WPML, and qTranslate are unchanged.

1.9.170

  • Compat: Content Order front-end menu_order hardened for Bricks/Elementor (respect explicit orderby), WPML (no term/product query changes), qTranslate untouched; opt-out via massoftind_fb_skip_content_order.

1.9.169

  • Fix: Content Order applies menu_order on the front end for enabled post types (Custom Post Order parity) so theme WP_Query loops no longer need a manual orderby. WooCommerce product queries stay untouched; term ordering remains admin-only (WPML-safe).

1.9.168

  • Fix: Developer Panel snippets for Site Section–only groups now use massoftind_fb_get( 'field', 'option' ) (and matching get_field / massoftind_fb_field) instead of post-context getters.

1.9.167

  • Fix: Featured Image selection did not stick after Set/Update — core writes preview + _thumbnail_id only into #postimagediv; our stable metabox now receives the same HTML so the thumbnail saves and shows.

1.9.166

  • Fix: Featured Image preview matched default WP look — our metabox id was missing core #postimagediv image max-width styles (full-width photo); constrain thumbnail to 266px sidebar size and show box header + Remove link like core.

1.9.165

  • Fix: Featured Image missing again after 1.9.164 — use stable metabox id (removers target core postimagediv), keep modern Set featured image modal via media-editor bind, DOM fallback injects the box into the sidebar if stripped.

1.9.164

  • Fix: Featured Image opened the old thickbox uploader instead of the modern “Set featured image” modal — metabox id must be postimagediv for media-editor.js; enqueue media-editor and bind the modern frame.

1.9.163

  • Fix: Featured Image missing on CPT edit screens only when Field Builder is active — after-title paint no longer triggers WP already_sorted (which dropped side boxes); register Featured Image under our own metabox id so postimagediv removers cannot wipe it.

1.9.162

  • Fix: Featured Image still missing on CPT UI screens after 1.9.161 — normalize WP_Screen args, force global theme post-thumbnails, re-add metabox on admin_head, block-editor-compatible box, print CSS directly.

1.9.161

  • Fix: Featured Image still missing after 1.9.160 — re-add on do_meta_boxes (when other plugins remove it), force for all custom show_ui post types, place box at high priority near Publish.

1.9.160

  • Fix: Featured Image forced for all CPT UI post types (e.g. Image Galleries) — restores thumbnail support, theme post-thumbnails, re-adds metabox at late priority, and unhides postimagediv from Screen Options hidden list.

1.9.159

  • Fix: Taxonomy Add form — Category Image (and other Field Builder media fields) now clear after AJAX “Add new category” (WordPress only cleared visible inputs).
  • New: Taxonomy list table shows Image field thumbnails (e.g. Category Image column).

1.9.158

  • Fix: Featured Image on CPT UI post types (e.g. Image Galleries) when Field Builder registered the CPT first without thumbnail — restore CPT UI Featured Image support, theme post-thumbnails, and force the classic editor metabox.

1.9.157

  • Fix: Featured Image on CPT UI and other external post types — Set featured image metabox and button now work when Field Builder field groups are attached (not only for post types registered inside Field Builder).

1.9.156

  • Fix: Gallery Logos UI — overlapping thumbs / stacked Edit× icons after reorder (jQuery UI Sortable + flex; also broken when gallery sits in a hidden meta tab).
  • Fix: Gallery uses float layout, clears leftover absolute positioning, refreshes on meta-tab switch.
  • Compat: Admin UI only — Bricks, Elementor, WPML, and qTranslate value/rendering paths unchanged.

1.9.155

  • Fix: Gallery field — reordering images no longer leaves duplicate Edit/Remove icons; improved drag helper/placeholder.
  • New: Repeater rows are drag-sortable via a grip handle (order saved on publish).
  • Fix: Content Order — correct pagination offset when saving, more reliable sortable init, Quick Edit re-bind.
  • Compat: Bricks, Elementor, WPML, and qTranslate paths unchanged.

1.9.154

  • Fix: get_field( $name, get_queried_object() ) / massoftind_fb_get() accept WP_Term objects (ACF parity) so taxonomy term banners and term meta render on archives.
  • Compat: Bricks, Elementor, WPML, and qTranslate paths unchanged — term values still run through massoftind_fb_format_value.

1.9.153

  • Fix: Menu SVG icons — convert theme <img class="menu_svg_image" src="….svg"> to sanitized inline <svg> on the front end (no theme edit). Works even when Allow SVG Uploads is off.
  • Note: Allow SVG Uploads remains upload-only. Front-end menu inlining is separate.

1.9.152

  • Fix: get_field( $name, $item ) / massoftind_fb_get() accept menu item objects (ACF parity) so Appearance Menus fields like Menu SVG resolve on the front end.
  • Fix: Template-compat post ID normalizer extracts ->ID from objects instead of falling back to the current page.
  • Fix: Image fields on nav_menu_item return a URL string (unless Return Format is Image Array) so existing <img src="' . $icon . '"> theme filters work without edits.

1.9.151

  • New: Elementor Dynamic Tags — Massoftind Field / Image / URL / Gallery / Color / Number group for CMS page building without ACF.
  • New: Settings Elementor Dynamic Tags (on by default); source Current post/term or Site Sections / Options.
  • Compat: Bricks, WPML, and qTranslate paths unchanged.

1.9.150

  • New: Location rule Menu Item (nav_menu) — attach fields to Appearance Menus items (ACF-compatible, e.g. Menu SVG).
  • New: ACF import maps nav_menu / menu_item / nav_menu_item location rules; values save as nav_menu_item post meta for get_field( $name, $item_id ) (Elementor Pro, Bricks, themes).
  • Compat: WPML menu-item duplicates disconnect on save; qTranslate still formats via existing massoftind_fb_format_value on get.

1.9.149

  • Fix: Bricks loop get_field() values run through massoftind_fb_format_value again (qTranslate [:lang] decode).
  • Fix: Stale Massoftind repeater context clears when Bricks starts a non-MFB query; container-root gating still blocks Our Story–style tag theft.
  • Fix: Bricks text/link dynamic data applies the same format filter before shortcodes.

1.9.148

  • Fix: Nested have_rows( 'group_field' ) inside a repeater/group (e.g. video_section in banner_section) no longer drops associative group values — hero video loops work again.

1.9.147

  • Fix: Bricks repeater loop tags like {acf_item_repeater_item_heading} render again (Mission / Why Live Local empty boxes).
  • Fix: Loop-row resolution matches the active repeater path (not a shorter FieldCatalog root), and settings no longer wipe loop tags before the loop runs.
  • Fix: get_field() reads the active Bricks Massoftind loop row so Bricks’ native ACF provider gets sub-field values.

1.9.146

  • Fix: get_sub_field() keeps numeric attachment IDs (instead of converting them to arrays) when the sub-field definition is missing, so wp_get_attachment_image() works with Image ID return format.
  • Fix: Stronger repeater parent lookup when resolving nested image/file sub-fields.
  • New: massoftind_fb_attachment_image() / massoftind_fb_get_attachment_image() helpers that render SVGs and other attachments that wp_get_attachment_image() skips.

1.9.145

  • Fix: Bricks query loops no longer leave stale row context that steals later {mfb_*} / group field tags (e.g. Our Story after Mission/Vision).
  • Fix: ACF Star Rating Field import type star_rating_field maps to native Star Rating so admin no longer shows “This field type is not available.”
  • Fix: Bricks dynamic data for star_rating fields outputs star HTML instead of a bare number.

1.9.144

  • Fix: WordPress shortcodes in Text/Textarea fields (e.g. [current_year]) run through do_shortcode() when rendered in Bricks dynamic data and via massoftind_fb_get().

1.9.143

  • Fix: Bricks homepage/catalog sections empty when fields are on the front page but values live in Site Sections or legacy ACF Options keys — option fallback no longer blocked by front-page location rules.
  • Fix: Resolve {acf_*} in Bricks Heading/Text/Link element settings before render (catalog + service sections).
  • Fix: WPML-safe — post-only fields still never fall back to globals; legacy ACF option keys are detected before blocking.

1.9.142

  • Fix: Bricks {acf_*} Site Section / global fields resolve when called without :optionget_field() and get_field_object() now fall back to wp_options (footer, homepage sections, contact info).
  • Fix: Nested group sub-fields and underscore paths (footer_connect_section_heading) read from Site Section option storage.
  • Fix: Option fallback is gated to Site Section fields only — post-assigned fields with empty meta stay empty (WPML per-translation). qTranslate still decodes via existing massoftind_fb_format_value on options.

1.9.141

  • Fix: Bricks Logo/Image fatal (preg_split(): array given) — remove early render_tag hook at priority 5 that returned image arrays before Bricks’ ACF provider runs.
  • Fix: Resolve dynamic logo image fields via filter_element_settings on the Logo element.

1.9.140

  • Fix: Bricks {acf_*} dynamic tags render again — keep Bricks’ native ACF provider and resolve tags early via BricksSupport (1.9.139 had disabled the provider, leaving raw {ACF_…} in templates).
  • Fix: Site Section / options fields (footer globals) resolve by full field path, not only the first underscore segment.

For earlier releases, see the changelog.txt file bundled with the plugin.