Migration to Genesis Custom Blocks
- New: Full migration UI to Genesis Custom Blocks, the new home of our custom block efforts
- The new plugin has the same features, and your existing blocks and content should work the same after migration
Small bugfixes, improved testing
- Fix: Prevent a console warning for a prop in WP 5.5
- New: More JS component tests, and an e2e test
Removed upgrade screen, dependency updates
- Tweak: By default, the upgrade screen is hidden
- Tweak: Minor package.json dependency updates for security and reliability
Improved stability, small bugfixes.
- Fix: Now block_field() returns null if the second argument is true, preventing confusion.
- New: JavaScript component tests, improving reliability.
- New: Linting for accessibility issues.
Some UI improvements, bugfixes, and improved stability.
- Fix: Improved import error feedback, and cleaner methods
- Fix: Editor bug from
@wordpress/nux
package being deprecated - New: Improved stability, including JS tests and query limit
- New: Pre-commit hook to lint only staged files
Some small tweaks to the Block Importer and onboarding dialogs.
- New: Selective import now allows you to choose which of the blocks contained in your export file you'd like to import
- Fix: Onboarding notices are fixed so that they show in the right places, and at the right times
This is a bugfix release, focused mostly on compatibility with WordPress 5.3.
- Fix: Themes can now hook into the
block_lab_add_blocks
action from thefunctions.php
file - Fix: Classic Text fields now function as expected when inside a repeater
- Fix: Rare instances of a
NaN
error when duplicating fields - Fix: Style fixes for the Block Editor in WordPress 5.3
Ready for a big release? We're really happy to be introducing quite a number of highly requested features, including a PHP API for registering blocks with code, a new text field with lists and headings, and some neat workflow efficiencies when building your block.
- New: There's now a PHP API for registering blocks using code (instead of the WP Admin UI). Documentation is here for now, but more on its way soon
- New: Classic Text control (for Block Lab Pro users)! This field is similar to Rich Text, but has a few extra options for things like lists and headings
- New: Duplicate fields – building your block is now so much easier, with the ability to duplicate rows
- New: Repeater Row Count function – a helper function that returns the total amount of rows in a given repeater. Documentation here
- New: Repeater Row Index function – a helper function that returns the current row, while looping through a repeater. Documentation here
- Tweak: We've removed our dependency on global variables. This is mostly a best practice thing, not user facing. More details here.
- Tweak: We've refactored quite a lot about our block Loader class, to make it more robust, secure, and maintainable
- Tweak: Loads of new unit and integration tests - these help prevent us from introducing bugs or regressions in the future
- Fix: Bug which affected sites which had removed or renamed the admin user role
- Fix: Empty Rich Text fields now no longer output a single
</p>
tag
You can now add a Minimum and Maximum Rows setting to repeaters, allowing you to specify a lower and upper limit on how many repeater rows can be added.
- New: The repeater field now includes a minimum and maximum row setting
- Fix: Location and Width settings are now visible again when adding a new field
- Fix: Using block_sub_field() with an image now correctly outputs the image URL instead of the ID
This release applies some finishing touches to the repeater field. It also introduces a new "Field Width" feature, which lets you choose the width of the fields as seen in the Editor.
- New: Function to reset repeater rows: reset_block_rows()
- New: Add a "Field Width" control to blocks
- Fix: Empty repeater rows now save and can be moved properly
- Fix: An issue which occasionally prevented repeater rows from being deleted
- Fix: Prevent repeated requests to validate a Pro license
- Tweaks: Add a different admin notice for when a license validation request fails
- Tweaks: Many new and shiny unit and integration tests, making Block Lab more solid than ever
- New: 🔁 REPEATER FIELD 🔁
- New: Conditional Blocks, based on Post Type
- Tweaks: Just about everything! We did a lot of refactoring in this release to make things silky smooth and über-maintainable.
- New: Block Lab will now enqueue a global stylesheet, so you can keep your common block styles in one place. Read more
- New: Block templates can now be placed inside a sub-folder, for an even cleaner directory structure. Read more
- Tweak: Use a textarea for specifying the default value of a textarea control.
- Tweak: Better handling of deprecated functions.
- Tweak: Rewrite of various functions, making developer access to common commands much simpler.
- Fix: Child theme templates are now correctly loaded before their parent templates.
- Fix: Autoslugs now continue to work properly after the title field loses focus.
- New: Block Lab grew to level 1.3.4. Block Lab learned Custom Categories.
- Tweak: @phpbits used Pull Request. All right! The
block_lab_get_block_attributes
filter was caught! - Tweak: Template Loader used Harden. Template Loader's defense rose!
- Tweak: Booted up a TM! It contained Unit Tests!
- Fix: Wild Missing Filter in Inspector Controls bug appeared! Go! Bugfix!
- Fix: Enemy Mixed Up Inspector Controls fainted! @kienstra gained 0902a06 EXP. Points!
- Fix: The previous release broke the
className
field, used for the Additional CSS Class setting. This fixes it.
- New: Rich Text Control (for Block Lab Pro users)!
- New: Show Block Category in the list table
- New: We've got a new
block_lab_render_template
hook which fires before rendering a block on the front end. Great for enqueuing JS - Tweak: Updated logo
- Tweak: Prevent block field slugs from changing when you edit the field title
- Fix: Saving your license key no longer results in an error page
- Fix: License details screen showing the wrong information
- Fix: Remove duplicate IDs on the edit block screen
- Fix: Range sliders can now set a minimum value of zero
- Fix: A console warning about unique props
- New: Support for Gutenberg's built-in Additional CSS Class in your block template, by using the field
className
. Read more - New: The Textarea field now has an option to automatically add paragraph tags and line-breaks
- Fix: Bug affecting blocks containing Pro fields when there's no active Pro license
Important: This update includes a backwards compatibility break related to the User field.
- New: A Taxonomy control type, for selecting a Category / Tag / or custom term from a dropdown menu (for Block Lab Pro users)
- Fix: Bug with the Post control when outputting data with block_field()
- Tweak: Update the User control to store data as an object, matching the Post control
Important: This update includes a backwards compatibility break related to the Image field.
If you are using the block_value()
function with an image field and externally hosted images, this update may effect you.
- New: A Post control type, for selecting a Post from a dropdown menu (for Block Lab Pro users)
- New: Added the block_lab_controls filter to allow custom controls to be loaded (props @rohan2388)
- New: The Image control now returns the image's Post ID
- Tweak: Travis CI support
- New: Block Editor redesign
- New: Automatic stylesheet enqueuing. Now you can create custom stylesheets for individual blocks! Read more here.
- New: A User control type (for Block Lab Pro users)
- Fix: Various multiselect bug fixes, allowing for empty values in the multiselect control
- New: Introducing Block Lab Pro!
- New: A setting for the number of rows to display in a Textarea control
- Fix: Allow negative numbers in Number and Range controls
- New: Image field
- New: Color field
- Fix: Incorrect output for empty fields
- Fix: Undefined index error for multiselect and select fields
- Fix: Correct values now returned for boolean fields like checkbox and toggle
- Fix: Editor preview templates are back! Use the filename
preview-{blog slug}.php
- Fix: "Field instructions" is now a single line text, and renamed to "Help Text"
- Fix: Slashes being added to field options
- Fix: Allow empty value for select and number fields
- Fix: Allow empty default values
- New: Complete revamp of the in-editor preview
- New: Email field
- New: URL field
- New: Number field
- New:
block_config()
andblock_field_config
helper functions, to retrieve your block's configuration - Fix: filemtime errors
- Fix: HTML tags were being merged together when previewed in the editor
- Fix: Problems with quotes and dashes in a block's title or field parameters
- Fix:
field_value()
sometimes returned the wrong value - Fix: Incorrect values shown in the editor preview
- New: Added "Save Draft" button, so you can save Blocks-in-Progress
- New: Better handling of the auto-slug feature, so you don't accidentally change your block's slug
- New: Better expanding / contracting of the Field settings
- New: Emoji (and special character) support! 😎
- Fix: Resolved Fatal Error that could occur in some environments
- Fix: Remove unused "Description" field
- Fix: Remove duplicate star icon
Rename!
- Advanced Custom Blocks is now Block Lab
Added
- New control types (Radio, Checkbox, Toggle, Select, Range)
- Block icons
- Field location – add your block fields to the inspector
- List table refinements
- Field repeater table improvements
Fixed
- All the things. Probably not all the things, but close.
Added
- New properties
help
,default
andrequired
added to fields. - Ability to import blocks from a
{theme}/blocks/blocks.json
file. Documentation still to be added. - Gutenberg controls library updated preparing for
0.0.3
.
Technical Changes
- Updated control architecture to improve development and adding adding of additional controls.
- Clean up enqueuing of scripts.
- Initial release.