Feature · Gutenberg · Blockenberg

Icon picker: one control for Dashicons, SVG, and images

Blocks do not each ship a different icon UI. They call bkbgIconPicker.IconPickerControl (editor) and buildFrontendIcon (front). The same file is registered with WordPress deps for the editor and without them for the front.

Get Blockenberg

Blockenberg is a Gutenberg block library. These features are plugin-wide editor tools, not Elementor extensions.

Get Blockenberg

What it actually does

The picker includes a Dashicons list with search, an SVG path dictionary (check, arrow, star, heart, bolt, and more), special SVG markup for disc/square, and an image upload path.

Editor APIs: IconPickerControl, buildEditorIcon, buildSaveIcon, iconPickerProps. Front: buildFrontendIcon. Data: svgPaths, dashicons, iconTypeOptions.

Block scripts list bkbg-icon-picker in the shared editor dependency array in blockenberg.php. Frontend scripts depend on bkbg-icon-picker-frontend.

Where it lives in WordPress

Any Blockenberg block that shows an icon control (buttons, lists, feature grids, etc.). Scripts: bkbg-icon-picker (editor) and bkbg-icon-picker-frontend (front), both pointing at assets/js/icon-picker.js.

How to use it

  1. Insert a block that has an icon. Open General (or the icon panel).
  2. Choose icon type. Dashicon vs bundled SVG vs image.
  3. Search Dashicons or pick an SVG name. The control filters the dashicon list as you type.
  4. Or upload an image. Stored as media; the frontend builder outputs an img.
  5. Check the front end. Interactive blocks load icon-picker-frontend with their frontend.js.

Controls and behavior

PieceWhat the plugin does
iconTypeWhich renderer to use.
Dashicons subsetNot every WordPress dashicon — the file ships a curated list.
svgPathsInline path data for bundled icons.
Image uploadMedia library ID/URL via the picker.

When this is the right tool

Notes from the code

If a block’s frontend.js is missing from the dependency list, icons may render in the editor only. That is a per-block enqueue issue, not a second picker. blockenberg.com.

FAQ

Can I paste Font Awesome CSS classes?

The picker is Dashicons, bundled SVG paths, or an image — not a FA kit.

Why is the icon missing on the published page?

The block’s frontend.js must depend on bkbg-icon-picker-frontend, which the plugin registers globally.

Other plugin features

Get Blockenberg

Install the plugin from WordPress.org, then use this feature in the native block editor.

Get Blockenberg