Block Lab

Mô tả

Gutenberg, the new WordPress editor, opens up a whole new world for the way we build pages, posts, and websites with WordPress. Block Lab makes it easy to harness Gutenberg and build custom blocks the way you want them to be built. Whether you want to implement a custom design, deliver unique functionality, or even remove your dependence on other plugins, Block Lab equips you with the tools you need to hit “Publish” sooner.

Features

A Familiar Experience

Work within the WordPress admin with an interface you already know.

Block Fields

Add from a growing list of available fields to your custom blocks.

Simple Templating

Let the plugin do the heavy lifting so you can use familiar WordPress development practices to build block templates.

Developer Friendly Functions

Simple to use functions, ready to render and work with the values stored through your custom block fields.

Connect with Community

Join The Lab, our free Block Lab Community on Slack. The Lab is our real-time home for sharing resources, learning, and making connections. Learn more.

Go Pro

Block Lab Pro is here, with powerful features to take your block building to the next level. Learn more.

Links

Contributing

See Contributing to Block Lab.

Ảnh màn hình

Cài đặt

From Within WordPress

  • Visit Plugins > Add New
  • Search for “Block Lab”
  • Install the Block Lab plugin
  • Activate Block Lab from your Plugins page.

Manually

  • Clone Block Lab into a working directory with https://github.com/getblocklab/block-lab.git
  • cd into the block-lab directory, and run npm install
  • Next, build the scripts and styles with npm build
  • Move the block-lab folder to your /wp-content/plugins/ directory
  • Activate the Block Lab plugin through the Plugins menu in WordPress

Hỏi đáp

Q: Do I need to write code to use this plugin?

A: Although the plugin handles the majority of the work in building a custom block, you will need to build HTML templates to display the content of the block. You can learn how in the developer documentation.

Q: I have an idea for the plugin

A: This plugin is open source and can only be better through community contribution. The GitHub repo is here.

Q: Where can I find documentation for this plugin?

A: Here

Đánh giá

3 Tháng Mười Hai, 2019
Time saver, it makes the work flow hundred times easier. It's so easy for someone who's not so code-experienced to get used to and working with the blocks that we set up. Their support is very fast and helpful as well!
30 Tháng Mười Một, 2019
Blocks? OMGWTF… 🥵 function loadMyBlock() { wp_enqueue_script( 'my-new-block', plugin_dir_url(__FILE__) . 'test-block.js', array('wp-blocks','wp-editor'), … (code snippet taken from a comprehensive tutorial by Flywheel.) Before you go crazy and lose your mind over complicated code, there is an easier way to create your own blocks for WordPress' block editor (aka Gutenberg): Block Lab provides you with an easy form builder to set up your blocks and the documentation tells you, how you can add custom templates for rendering your new block. Forget about REACT and "learn JavaScript deeply" – this plugin is a big time saver and you only need very basic skills in PHP and CSS. Great tool. Strong recommendation.
20 Tháng Mười Một, 2019
Didn't know it could be so easy to build your own blocks. This plugin makes a lot of fun when creating new blocks. I used it to setup blocks for Bootstrap cards and alerts. Feature request: responsive images with srcset.
29 Tháng Mười, 2019
This plugin is what I always expected Gutenberg block development would be like. Thanks to Block Lab, building Gutenberg blocks is easy and straightforward.
25 Tháng Chín, 2019
This plugin made me fall in love with Gutenberg 🙂 I also greatly appreciate the developer responding to my inquires and #WPFeedback
Đọc tất cả 35 đánh giá

Người đóng góp & Lập trình viên

“Block Lab” là mã nguồn mở. Những người sau đã đóng góp vào plugin này.

Những người đóng góp

“Block Lab” đã được dịch qua 8 ngôn ngữ. Cảm ơn những người tham gia dịch vì đóng góp của họ.

Dịch “Block Lab” sang ngôn ngữ của bạn.

Muốn tham gia phát triển?

Duyệt code, check out SVN repository, hoặc theo dõi nhật ký phát triển qua RSS.

Nhật ký thay đổi

1.5.2 – 2019-12-02

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

1.5.1 – 2019-11-11

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 the functions.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

1.5.0 – 2019-10-30

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

1.4.1 – 2019-09-11

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

1.4.0 – 2019-09-04

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

1.3.6 – 2019-08-22

  • 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.

1.3.5 – 2019-08-18

  • 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.

1.3.4 – 2019-07-22

  • 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!

1.3.3 – 2019-06-21

  • Fix: The previous release broke the className field, used for the Additional CSS Class setting. This fixes it.

1.3.2 – 2019-06-21

  • 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

1.3.1 – 2019-05-22

  • 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

1.3.0 – 2019-04-30

Important: This update includes a backwards compatibility break related to the User field.

Read more here

  • 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

1.2.3 – 2019-04-23

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.

Read more here

  • 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

1.2.2 – 2019-04-05

  • New: Block Editor redesign

1.2.1 – 2019-03-21

  • 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

1.2.0 – 2019-02-27

  • 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

1.1.3 – 2019-01-25

  • New: Image field

1.1.2 – 2019-01-11

  • New: Color field
  • Fix: Incorrect output for empty fields

1.1.1 – 2018-12-14

  • 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

1.1.0 – 2018-12-07

  • New: Complete revamp of the in-editor preview
  • New: Email field
  • New: URL field
  • New: Number field
  • New: block_config() and block_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

1.0.1 – 2018-11-16

  • 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

1.0.0 – 2018-11-14

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.

0.1.2 – 2018-08-10

Added
* New properties help, default and required 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.

0.1 – 2018-08-03

  • Initial release.