Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Block Bindings iteration for WordPress 6.8 #67520

Open
17 tasks
SantosGuillamot opened this issue Dec 3, 2024 · 5 comments
Open
17 tasks

Block Bindings iteration for WordPress 6.8 #67520

SantosGuillamot opened this issue Dec 3, 2024 · 5 comments
Labels
[Feature] Block bindings [Type] Iteration Scoped iteration of an effort from a tracking issue or overview issue ideally for a major release.

Comments

@SantosGuillamot
Copy link
Contributor

SantosGuillamot commented Dec 3, 2024

Iteration of #60954.

This issue will be used to gather the new functionalities and bug fixes expected to be included in WordPress 6.8. It will serve to share regular updates and progress.

Please keep in mind that the list of issues will change once new ones come up.

For this iteration of WordPress 6.8, there will be two main focuses:

  • Improve the UI and make it extensible: Right now, the UI to create bindings is only available post meta. The idea is to polish it and explore using DataViews, which comes with some benefits, and figure out the proper APIs to let other sources hook into this.
  • Create mechanisms to support more blocks: As explained in this issue, there are a few limitations that need to be solved before allowing more blocks to use block bindings. Not all the limitations apply to all blocks, so the idea is to approach it progressively. For example, dynamic blocks only need the attributes locking and the opt-in mechanism solved. Or it can support basic CSS selectors as a first step for static blocks.

UI to create bindings

  • Explore integrating DataViews in the UI.
  • API for server sources without arguments.
  • API for server sources with input arguments.
  • API for server sources that want to reuse the "Fields UI".
  • API for client sources that want to empower the Fields UI with reactivity or editing, for example.
  • API for client sources that want their custom UI.

Support for more blocks

Other

Bug fixes

@fabiankaegy
Copy link
Member

@SantosGuillamot I would love to see if we can look at #64870 in the 6.8 cycle. From what it seems that shouldn't be too large a lift and would already go a long way in extending the block bindings support :)

@gziolo
Copy link
Member

gziolo commented Dec 3, 2024

This one can be removed from the list. There will no longer be the Navigation Mode. It's going to be replaced with the Write and Content modes.

@SantosGuillamot
Copy link
Contributor Author

SantosGuillamot commented Dec 3, 2024

I would love to see if we can look at #64870 in the 6.8 cycle.

I didn't specify it, but it's part of the planning somehow 🙂 The idea is that working on the abstractions to open it for more blocks, it will also solve that issue. To open this for dynamic blocks it is enough with these two points:

  • Mechanism to let attribute controls know if they should be editable or not.
  • Opt-in mechanism for bindings.

Whatever is done for bindings should work for pattern overrides as well. I'll add it to the list to ensure it is tracked.

@fabiankaegy
Copy link
Member

@SantosGuillamot Thanks :) My main point for calling it out specifically is that I don't think this should be held back by the wait for the HTML API which is currently blocking the adoption for static blocks. :)

@SantosGuillamot
Copy link
Contributor Author

Totally agree 🙂 That's why I added this clarification: "Not all the limitations apply to all blocks, so the idea is to approach it progressively. For example, dynamic blocks only need the attributes locking and the opt-in mechanism solved." But it is good to have the issue in the list as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Feature] Block bindings [Type] Iteration Scoped iteration of an effort from a tracking issue or overview issue ideally for a major release.
Projects
None yet
Development

No branches or pull requests

3 participants