Block Styles Breakdown #20331
Block Styles Breakdown #20331
Comments
Sharing some thoughts on the current status for infrastructure/ my interpretation of some infrastructure tasks:
It seems the style attribute we are using for colors introduced in #21021 addressed this part we are also using it for lineHeight with success and without the need to register new attributes.
It seems this is about making sure styles are regenerated when the structure that holds global style changes. For example, #20530 accomplishes this by compiling the styles on GlobalStylesProvider.
We can achieve this by adding a styles structure to theme.json:
We may also achieve the "Custom User Styles" part of #7551 by just allowing the user to save the current block style attributes as a customization of the theme.json structure. |
At this week's Block-based Themes meeting, the group discussed some of the upcoming design tools in this ticket, and whether they should be opt-in or opt-out for themes. Here are our notes:
More details in the meeting notes. |
With the first beta version of WordPress 5.7 not very far away I'm sharing this summary after some discussion with @nosolosw specifying what are the tasks we think should be part of v1 and/or that may be part of v1. What we will do next?These are the tasks we will work on and plan to have ready soon. Are the most prioritary tasks.
What we can do next?Tasks we can work on, it would be nice to have but are not a must and are lower priority may or may not be part of v1.
Things for the futureNot part of a first version. Things we may consider in the future.
Related tasks but that initially will not use theme.json/global styles mechanisms.
What decisions do we need to do?
What’s next on the UI/UX side?The first beta of WordPress 5.7 goes out in January, so we need to have a v1 for the UI ready sometime before the first beta.
cc: @nosolosw, @shaunandrews, @jasmussen, @ItsJonQ, @mcsf, @youknowriad |
Yes, I think this is good. I'd love more thoughts on my intuition here though, especially from theme authors, let's not rush implementation.
Same here, I do think it's a valuable addition especially since you can use this value in different places in theme.json. But I agree it may not be important for V1. |
@youknowriad @jorgefilipecosta I've taken your comments here, created an issue to discuss this separately, and added my own thoughts as well. See #27295 |
It is time for another update on Global Styles :) Updates on the must-have itemsWe got some traction on the i18n of theme.json: We also have some updates on the client-side metadata: Regarding child theme support, that work was put on on pause as @nosolosw referred:
Design tools visibility discussionRegarding the question we had on the last update:
There were some discussions on this issue, and an issue for it was created #27295. Solving this challenge and updating the theme.json shape for this is the biggest priority we have right now. If you have insights for this discussion, please share them on the issue. UI/UXThe big question we had on the last update was the UI/UX, and on that front, there are important updates. Given that we already have considerable progress on the infrastructure part, the UI is considered a high priority. We will give a bigger focus to the UI work. The only two things considered higher priority are the i18n work and the issue #27295 already referred. |
Latest changes:
What's next?
Expect some issue triage in the coming days, as well as updates to this issue description. |
For the people following this task's updates: the issue description has been updated and there's now a third iteration that includes an initial set of tasks to be developed for April's MVP. All the rest has been moved to the backlog or is done. |
Update on this: the core feature we wanted for block supports (see #28913) to be able to absorb more use cases is now working on the buttons block (color hook). There're some loose ends I plan to keep working on in the coming days. There are also more hooks and blocks to support and I listed them as individual tasks on 28913, in case anyone finds time to help with them). |
Added two ongoing tasks for internationalization in the issue description. I'm looking at #28163 these days to see what's left / what needs to be done for 5.8. |
Update for this week's core-editor meeting:
|
There're some changes coming to the theme.json format as per #29891 I'll update this issue's description and the affected tasks in the next few days. |
Update for this week core-editor chat:
This issue description has been updated to focus on the infrastructure parts of global styles, that we aim to ship in 5.8. The UI tasks have been moved to the backlog for clarity but will be re-evaluated at a later point. |
This week in global styles:
Ongoing/Next tasks necessary for MVP:
And more: |
Just added #30191 to the list as well (under the theme.json group). |
This week's status report: ongoing work for the major tasks necessary for the MVP.
|
This week's status report: Shipped
Ongoing |
This is an overview of the concrete tasks needed to proceed with the project scope of #9534 (see also #19611). It operates on three levels, or style origins: local blocks, theme defaults, and global modifications.
First🌊
Goal: prototype a system that connects the three style origins and demonstrates how it works for a few top-level blocks.
Infrastructure
Ensure at all times the editor reflects the front faithfully.
font-size
,color
) and introduce missing properties (line-height
,family
). #22700theme.json
specification for controlling the editor and the style attributes of different origins. #22518 #20588Interface
These are the different tools that interact with appearance values.
edit-site
. This should be a straightforward rendering of a sidebar in the site editor displaying the global values and palette. #24250Second🌊
Goal: develop all necessary sub-systems.
Infrastructure
Prepare a core patch for 5.7 (closed)#27506Control design tools visibility (superseded)#27295global
selector intodefaults
androot
#28533/24165.
global
. #25768Interface
Third🌊
Goal: merge the non UI parts of global styles in 5.8.
block.json
theme.json:
wp_theme
taxonomy instead of post_name to associate user styles with particular themes #30191Internationalization:
KSES, port changes to core:
unfiltered_html
permissions #28061Extensibility:
Expand to more style properties:
Backlog🌊
The things listed here don't need to be necessarily implemented, but should be considered.
block.json: nothing planned
theme.json
core/group core/paragraph
. #28163font
,color
, pagebackground
) can be conceptualized as attributes of a root Site block. #16998 Related: consider global site width and padding #20771Expand to more style properties:
height
#28409margin
#25988border
#29616wp_register_font_family
.Extensibility:
theme.json
configs (including user preferences) as part of exporting templates & template parts #27941 #27528Interface:
__experimentalSelector
of the heading block). How is this in the new UI?Iterate on design tools:
Misc:
The text was updated successfully, but these errors were encountered: