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

Adds Metabox Support. #2804

Merged
merged 5 commits into from Oct 19, 2017

Conversation

Projects
None yet
@BE-Webdesign
Contributor

BE-Webdesign commented Sep 27, 2017

Description

This adds metabox support with the UI @aduth came up with. See the accompanying markdown file in the docs.

How Has This Been Tested?

Tested pretty extensively. Lots more polish work to do, but I believe this is merge-able-ish.

Screenshots (jpeg or gifs if applicable):

Types of changes

Adds PHP metabox support, through incredible hacks.

Checklist:

  • My code is tested.
  • My code follows the WordPress code style.
  • My code follows has proper inline documentation.

Testing Instructions:

  • Verify that by default, on an install with no custom metaboxes, that no changes occur to the current Gutenberg experience.
  • Verify that all core metaboxes do not appear, and no Extended Settings areas appear.
  • Install ACF, Metabox.io, CMB2, or some other metabox creation framework, add their metaboxes to your theme, or generate some metaboxes of your own.
  • Verify that metaboxes render in the Extended Settings area of your choice. There are normal, advanced, and side areas. advanced is currently merged into normal.
  • Verify that normal metaboxes appear at the bottom of the editor area in an Editor Settings toggle panel.
  • If you register sidebar metaboxes, verify that an 'Extended Settings' area appears in the sidebar.
  • Verify that changing the form values in the metaboxes will allow you to update the post.
  • Verify that returning the state of the form values to their original value will mark the metabox state as not dirty.
  • When saving a post without changing metabox values, verify that they do not update.
  • When saving a post with metabox changes, verify that the metaboxes indeed save the settings.
  • If the sidebar only has changes and the normal area does not, verify that only the side bar saves, and vice versa.
  • After successfully updating and verify the values saved correctly, try continual updates. The form data to dirty check against should now be the updated data.
@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Sep 27, 2017

Contributor

Probably wouldn't merge this as it technically works, but there are still some rough edges. No sense pushing a commit on a touchy subject that is not fully 100% there, but I leave that decision up to y'all.

Contributor

BE-Webdesign commented Sep 27, 2017

Probably wouldn't merge this as it technically works, but there are still some rough edges. No sense pushing a commit on a touchy subject that is not fully 100% there, but I leave that decision up to y'all.

@codecov

This comment has been minimized.

Show comment
Hide comment
@codecov

codecov bot Sep 27, 2017

Codecov Report

Merging #2804 into master will decrease coverage by 0.18%.
The diff coverage is 17.68%.

Impacted file tree graph

@@            Coverage Diff            @@
##           master   #2804      +/-   ##
=========================================
- Coverage   32.59%   32.4%   -0.19%     
=========================================
  Files         209     211       +2     
  Lines        5965    6114     +149     
  Branches     1055    1078      +23     
=========================================
+ Hits         1944    1981      +37     
- Misses       3391    3485      +94     
- Partials      630     648      +18
Impacted Files Coverage Δ
editor/sidebar/index.js 0% <ø> (ø) ⬆️
editor/layout/index.js 0% <0%> (ø) ⬆️
editor/meta-boxes/panel.js 0% <0%> (ø)
editor/index.js 0% <0%> (ø) ⬆️
editor/sidebar/post-settings/index.js 0% <0%> (ø) ⬆️
editor/meta-boxes/iframe.js 0% <0%> (ø)
editor/meta-boxes/index.js 0% <0%> (ø) ⬆️
editor/reducer.js 89.94% <100%> (+0.9%) ⬆️
editor/selectors.js 95.65% <100%> (+0.22%) ⬆️
editor/effects.js 51.31% <100%> (+11.31%) ⬆️
... and 6 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 15c515b...bab6410. Read the comment docs.

codecov bot commented Sep 27, 2017

Codecov Report

Merging #2804 into master will decrease coverage by 0.18%.
The diff coverage is 17.68%.

Impacted file tree graph

@@            Coverage Diff            @@
##           master   #2804      +/-   ##
=========================================
- Coverage   32.59%   32.4%   -0.19%     
=========================================
  Files         209     211       +2     
  Lines        5965    6114     +149     
  Branches     1055    1078      +23     
=========================================
+ Hits         1944    1981      +37     
- Misses       3391    3485      +94     
- Partials      630     648      +18
Impacted Files Coverage Δ
editor/sidebar/index.js 0% <ø> (ø) ⬆️
editor/layout/index.js 0% <0%> (ø) ⬆️
editor/meta-boxes/panel.js 0% <0%> (ø)
editor/index.js 0% <0%> (ø) ⬆️
editor/sidebar/post-settings/index.js 0% <0%> (ø) ⬆️
editor/meta-boxes/iframe.js 0% <0%> (ø)
editor/meta-boxes/index.js 0% <0%> (ø) ⬆️
editor/reducer.js 89.94% <100%> (+0.9%) ⬆️
editor/selectors.js 95.65% <100%> (+0.22%) ⬆️
editor/effects.js 51.31% <100%> (+11.31%) ⬆️
... and 6 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 15c515b...bab6410. Read the comment docs.

@jasmussen

This comment has been minimized.

Show comment
Hide comment
@jasmussen

jasmussen Sep 27, 2017

Contributor

Thank you for working on this 🌟🌟🌟🌟🌟

What's the best way to test this PR? Is there a particular metabox plugin that would be good to install to test?

Contributor

jasmussen commented Sep 27, 2017

Thank you for working on this 🌟🌟🌟🌟🌟

What's the best way to test this PR? Is there a particular metabox plugin that would be good to install to test?

@youknowriad

This comment has been minimized.

Show comment
Hide comment
@youknowriad

youknowriad Sep 27, 2017

Contributor

@jasmussen I tested using ACF which seems to work properly

Contributor

youknowriad commented Sep 27, 2017

@jasmussen I tested using ACF which seems to work properly

@youknowriad

This comment has been minimized.

Show comment
Hide comment
@youknowriad

youknowriad Sep 27, 2017

Contributor

but there are still some rough edges

Could you elaborate on this, are you talking about the sync (Yoast)?

Contributor

youknowriad commented Sep 27, 2017

but there are still some rough edges

Could you elaborate on this, are you talking about the sync (Yoast)?

@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Sep 27, 2017

Contributor

but there are still some rough edges
Could you elaborate on this, are you talking about the sync (Yoast)?

Nope, has to do with timing of saving the metabox form. If you are really quick, you can hit update, change a field value before the post saves, and then that change will be saved "in-flight" I was thinking about putting a "updating" visual state, both when the iframe initially loads, and when it is saving. It would be some sort of overlay with a spinner.

Contributor

BE-Webdesign commented Sep 27, 2017

but there are still some rough edges
Could you elaborate on this, are you talking about the sync (Yoast)?

Nope, has to do with timing of saving the metabox form. If you are really quick, you can hit update, change a field value before the post saves, and then that change will be saved "in-flight" I was thinking about putting a "updating" visual state, both when the iframe initially loads, and when it is saving. It would be some sort of overlay with a spinner.

@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Sep 27, 2017

Contributor

What's the best way to test this PR? Is there a particular metabox plugin that would be good to install to test?

Anything except Yoast.

Contributor

BE-Webdesign commented Sep 27, 2017

What's the best way to test this PR? Is there a particular metabox plugin that would be good to install to test?

Anything except Yoast.

@mcsf

Thanks for working on this! I'll need to come back to this for a better review, but here's some preliminary feedback.

One thing I'm struggling with is the lifecycle in and around MetaboxIframe. For one, subscribing to events — some common patterns are:

  • My component is always listening to x, so component(Will/Did)Mount will feature a addEventListener for my bound handler and componentWillUnmount will feature a removeEventListener.

  • My component supports swapping in such a way that somewhere some atom will look like removeEventListener( ...oldEntities ); swapEntities(); addEventListener( ...newEntities );.

These, IMO, are not very apparent, and it's hard to statically look at MetaboxIframe and be sure that nothing is leaking, that the lifecycle is sound, etc. As a reviewer, this means I'm much less confident that I fully understand the solution.

Show outdated Hide outdated editor/effects.js
Show outdated Hide outdated editor/metaboxes/index.js
Show outdated Hide outdated editor/metaboxes/iframe.js
Show outdated Hide outdated editor/metaboxes/iframe.js
Show outdated Hide outdated editor/metaboxes/iframe.js
Show outdated Hide outdated editor/metaboxes/iframe.js
Show outdated Hide outdated editor/metaboxes/iframe.js
Show outdated Hide outdated editor/metaboxes/index.js
@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Sep 27, 2017

Contributor

@mcsf Thank you for the review, I will address some of your points later today.

Contributor

BE-Webdesign commented Sep 27, 2017

@mcsf Thank you for the review, I will address some of your points later today.

@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Sep 27, 2017

Contributor

These, IMO, are not very apparent, and it's hard to statically look at MetaboxIframe and be sure that nothing is leaking, that the lifecycle is sound, etc. As a reviewer, this means I'm much less confident that I fully understand the solution.

Agreed, this will be cleaned up, and I hope to have React always be handling the rendering of the component rather than this weird intermittent hack solution I have running right now.

Contributor

BE-Webdesign commented Sep 27, 2017

These, IMO, are not very apparent, and it's hard to statically look at MetaboxIframe and be sure that nothing is leaking, that the lifecycle is sound, etc. As a reviewer, this means I'm much less confident that I fully understand the solution.

Agreed, this will be cleaned up, and I hope to have React always be handling the rendering of the component rather than this weird intermittent hack solution I have running right now.

@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Sep 30, 2017

Contributor

Note: Add action to easily add styles. Alternative, better solution, provide documentation explaining how to do this with current hooks.

Contributor

BE-Webdesign commented Sep 30, 2017

Note: Add action to easily add styles. Alternative, better solution, provide documentation explaining how to do this with current hooks.

@jasmussen

This comment has been minimized.

Show comment
Hide comment
@jasmussen

jasmussen Oct 2, 2017

Contributor

Again, really nice work here.

I'm not seeing the Extended Settings box at all on the demo content. Not sure if that's expected or not.

Here's a screenshot with Post Meta Inspector and Advanced Custom Fields installed:

screen shot 2017-10-02 at 10 10 36

How much access do we have to the CSS styles of each of these? If we can better provide boundaries around some of these (Post Meta Inspector looks/works pretty well as is), it would be nice.

Contributor

jasmussen commented Oct 2, 2017

Again, really nice work here.

I'm not seeing the Extended Settings box at all on the demo content. Not sure if that's expected or not.

Here's a screenshot with Post Meta Inspector and Advanced Custom Fields installed:

screen shot 2017-10-02 at 10 10 36

How much access do we have to the CSS styles of each of these? If we can better provide boundaries around some of these (Post Meta Inspector looks/works pretty well as is), it would be nice.

@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Oct 2, 2017

Contributor

How much access do we have to the CSS styles of each of these? If we can better provide boundaries around some of these (Post Meta Inspector looks/works pretty well as is), it would be nice.

We have 100% access, we can use editor/metaboxes/metabox-iframe.scss to change any styles that should render inside the iframe. These could also be overridden by plugin and theme authors. Using admin_enqueue_scripts hook with some special conditionals.

I'm not seeing the Extended Settings box at all on the demo content. Not sure if that's expected or not.

For now that is expected, there are special conditionals running for the metaboxes that only are applying to the gutenberg page not the gutenberg-demo page.

Contributor

BE-Webdesign commented Oct 2, 2017

How much access do we have to the CSS styles of each of these? If we can better provide boundaries around some of these (Post Meta Inspector looks/works pretty well as is), it would be nice.

We have 100% access, we can use editor/metaboxes/metabox-iframe.scss to change any styles that should render inside the iframe. These could also be overridden by plugin and theme authors. Using admin_enqueue_scripts hook with some special conditionals.

I'm not seeing the Extended Settings box at all on the demo content. Not sure if that's expected or not.

For now that is expected, there are special conditionals running for the metaboxes that only are applying to the gutenberg page not the gutenberg-demo page.

@karmatosed

I have tested with a range of fields using ACF as an example. Whilst some don't look amazing, I think it's right to add in and that's something plugins will have to iterate on. The big design issues I wanted fixed are, so approving :)

@@ -17,11 +17,11 @@ import Header from '../header';
import Sidebar from '../sidebar';
import TextEditor from '../modes/text-editor';
import VisualEditor from '../modes/visual-editor';
import MetaBoxes from '../meta-boxes';

This comment has been minimized.

@mtias

mtias Oct 2, 2017

Contributor

We should keep this writing MetaBox and meta-box :)

@mtias

mtias Oct 2, 2017

Contributor

We should keep this writing MetaBox and meta-box :)

This comment has been minimized.

@BE-Webdesign

BE-Webdesign Oct 2, 2017

Contributor

Okay, makes sense. I think MetaBoxes + meta-boxes would make the most sense, because the area is a collection of many individual metaboxes?

@BE-Webdesign

BE-Webdesign Oct 2, 2017

Contributor

Okay, makes sense. I think MetaBoxes + meta-boxes would make the most sense, because the area is a collection of many individual metaboxes?

@aduth

Well... this pull request was intense. For parts of it, notably the PHP files, I really didn't put as much detail into the review as I would have liked, as I'm not sure what of it was sourced from elsewhere (if any) or the general details around why certain things are included to trick plugins into registering meta boxes.

It's been noted already, but the Yoast plugin really does not work very well with these changes. Something about how it loads immediately flags the post as dirty, and it can become stuck in an infinite loop of saving (with some seconds delay between by autosave). From what I could tell in my brief debugging, there were a handful of meta keys changing after a delayed load. Do you have any thoughts for how we might handle these cases?

Show outdated Hide outdated assets/js/metabox.js
Show outdated Hide outdated docs/metabox.md
Show outdated Hide outdated docs/metabox.md
Show outdated Hide outdated docs/metabox.md
Show outdated Hide outdated docs/metabox.md
Show outdated Hide outdated lib/metabox-partial-page.php
Show outdated Hide outdated editor/metaboxes/index.js
Show outdated Hide outdated editor/metaboxes/index.js
Show outdated Hide outdated editor/effects.js
Show outdated Hide outdated editor/reducer.js
@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Oct 2, 2017

Contributor

Thank you for the review everyone! I will get this shaped up either late tonight, or early tomorrow morning. @karmatosed I will also fix up the input fields! Meant to do that but it slipped through the cracks.

Contributor

BE-Webdesign commented Oct 2, 2017

Thank you for the review everyone! I will get this shaped up either late tonight, or early tomorrow morning. @karmatosed I will also fix up the input fields! Meant to do that but it slipped through the cracks.

@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Oct 3, 2017

Contributor

From what I could tell in my brief debugging, there were a handful of meta keys changing after a delayed load. Do you have any thoughts for how we might handle these cases?

Will probably entirely eliminate the Observer. I will finick around with Yoast at some point today to see what can be done.

Contributor

BE-Webdesign commented Oct 3, 2017

From what I could tell in my brief debugging, there were a handful of meta keys changing after a delayed load. Do you have any thoughts for how we might handle these cases?

Will probably entirely eliminate the Observer. I will finick around with Yoast at some point today to see what can be done.

@pento

This comment has been minimized.

Show comment
Hide comment
@pento

pento Oct 18, 2017

Member

Oops, this has merge conflicts after bdf94e6.

This has been working well in the testing I've done, I think it's a good base to iterate on.

Member

pento commented Oct 18, 2017

Oops, this has merge conflicts after bdf94e6.

This has been working well in the testing I've done, I think it's a good base to iterate on.

@pento

This comment has been minimized.

Show comment
Hide comment
@pento

pento Oct 18, 2017

Member

Rebase needs to wait for #3052, because that's causing all sorts of fun bugs in this PR, too. :-)

Member

pento commented Oct 18, 2017

Rebase needs to wait for #3052, because that's causing all sorts of fun bugs in this PR, too. :-)

Adding initial metabox support.
Basic metabox support please see docs/metabox.md for details.
@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Oct 18, 2017

Contributor

@pento, @mtias.

Should work now. This needs your blessing. Rebased the latest changes. With the recent restructuring in bdf94e6, there are probably some simplifications to be made in this, and I already made some, but for now this is probably fine.

Contributor

BE-Webdesign commented Oct 18, 2017

@pento, @mtias.

Should work now. This needs your blessing. Rebased the latest changes. With the recent restructuring in bdf94e6, there are probably some simplifications to be made in this, and I already made some, but for now this is probably fine.

@pento pento merged commit 02d4734 into master Oct 19, 2017

3 checks passed

codecov/project 32.4% (-0.19%) compared to 15c515b
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details

@pento pento deleted the support/metaboxes-rebase branch Oct 19, 2017

@jasmussen

This comment has been minimized.

Show comment
Hide comment
@jasmussen

jasmussen Oct 19, 2017

Contributor

💥💥💥💥💥💥💥💥💥💥💥💥💥💥

Contributor

jasmussen commented Oct 19, 2017

💥💥💥💥💥💥💥💥💥💥💥💥💥💥

@youknowriad

This comment has been minimized.

Show comment
Hide comment
@youknowriad

youknowriad Oct 19, 2017

Contributor

Huge kudos for @BE-Webdesign ❤️

Contributor

youknowriad commented Oct 19, 2017

Huge kudos for @BE-Webdesign ❤️

@sc0ttkclark

This comment has been minimized.

Show comment
Hide comment
@sc0ttkclark

sc0ttkclark Oct 19, 2017

Looking into playing with this for Pods integration now!

sc0ttkclark commented Oct 19, 2017

Looking into playing with this for Pods integration now!

@BE-Webdesign

This comment has been minimized.

Show comment
Hide comment
@BE-Webdesign

BE-Webdesign Oct 19, 2017

Contributor

Huge kudos for @BE-Webdesign ❤️

Team effort!

Contributor

BE-Webdesign commented Oct 19, 2017

Huge kudos for @BE-Webdesign ❤️

Team effort!

@ahmadawais

This comment has been minimized.

Show comment
Hide comment
@ahmadawais

ahmadawais Oct 20, 2017

Contributor

Huge props @BE-Webdesign!

🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥

Contributor

ahmadawais commented Oct 20, 2017

Huge props @BE-Webdesign!

🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥

$notice = false;
$form_extra = '';
if ( 'auto-draft' === $post->post_status ) {
if ( 'edit' === $action ) {

This comment has been minimized.

@aduth

aduth Oct 20, 2017

Member

$action is not assigned in this scope.

Notice: Undefined variable: action in /srv/www/editor/htdocs/wp-content/plugins/gutenberg/lib/meta-box-partial-page.php on line 345
@aduth

aduth Oct 20, 2017

Member

$action is not assigned in this scope.

Notice: Undefined variable: action in /srv/www/editor/htdocs/wp-content/plugins/gutenberg/lib/meta-box-partial-page.php on line 345

This comment has been minimized.

@BE-Webdesign

BE-Webdesign Oct 20, 2017

Contributor

Woops.

@BE-Webdesign

BE-Webdesign Oct 20, 2017

Contributor

Woops.

This comment has been minimized.

@BE-Webdesign
@BE-Webdesign

BE-Webdesign added a commit that referenced this pull request Oct 20, 2017

@khromov

This comment has been minimized.

Show comment
Hide comment
@khromov

khromov Oct 24, 2017

Not working for me in Firefox 56. The Extended settings box does not expand when clicked. Latest Chrome works though. Error log from Firefox:

screen shot 2017-10-24 at 13 34 08

khromov commented Oct 24, 2017

Not working for me in Firefox 56. The Extended settings box does not expand when clicked. Latest Chrome works though. Error log from Firefox:

screen shot 2017-10-24 at 13 34 08

@lkraav

This comment has been minimized.

Show comment
Hide comment
@lkraav

lkraav Oct 24, 2017

Not working for me in Firefox 56. The Extended settings box does not expand when clicked. Latest Chrome works though. Error log from Firefox:

I can confirm both findings (FF57). Didn't even think to try on Chrome, I just assumed it was still half-baked/broken. But indeed, Chrome works. I would not recommend skipping testing on FF any longer, FF57 Quantum is a significant enough improvement that it will certainly gain market share.

lkraav commented Oct 24, 2017

Not working for me in Firefox 56. The Extended settings box does not expand when clicked. Latest Chrome works though. Error log from Firefox:

I can confirm both findings (FF57). Didn't even think to try on Chrome, I just assumed it was still half-baked/broken. But indeed, Chrome works. I would not recommend skipping testing on FF any longer, FF57 Quantum is a significant enough improvement that it will certainly gain market share.

@mtias

This comment has been minimized.

Show comment
Hide comment
@mtias

mtias Oct 24, 2017

Contributor

Just released 1.5.1 to fix the FF issue—thought we had fixed this one before. Sorry about that.

Contributor

mtias commented Oct 24, 2017

Just released 1.5.1 to fix the FF issue—thought we had fixed this one before. Sorry about that.

@lkraav

This comment has been minimized.

Show comment
Hide comment
@lkraav

lkraav Oct 31, 2017

Just released 1.5.1 to fix the FF issue—thought we had fixed this one before. Sorry about that.

@mtias I have 1.6.0 not showing Extended Settings on Firefox again. Same thing or...?

lkraav commented Oct 31, 2017

Just released 1.5.1 to fix the FF issue—thought we had fixed this one before. Sorry about that.

@mtias I have 1.6.0 not showing Extended Settings on Firefox again. Same thing or...?

@lukecav

This comment has been minimized.

Show comment
Hide comment
@lukecav

lukecav Nov 15, 2017

@lkraav

Which version of Gutenberg are you using 1.7.0?

Also which version of Mozilla Firefox?

lukecav commented Nov 15, 2017

@lkraav

Which version of Gutenberg are you using 1.7.0?

Also which version of Mozilla Firefox?

@lkraav

This comment has been minimized.

Show comment
Hide comment
@lkraav

lkraav Nov 15, 2017

@lukecav we can deprecate the previous comment, I just installed 1.7.0 today and will re-evaluate.

lkraav commented Nov 15, 2017

@lukecav we can deprecate the previous comment, I just installed 1.7.0 today and will re-evaluate.

@Rahmon Rahmon referenced this pull request Jan 30, 2018

Merged

Fix unset variable #4757

3 of 3 tasks complete

@aduth aduth referenced this pull request Feb 27, 2018

Merged

unused blank array variable #5234

@justnorris

This comment has been minimized.

Show comment
Hide comment
@justnorris

justnorris Sep 13, 2018

@BE-Webdesign
Hey Edwin,
An issue popped up recently in Gutenberg Ramp that's related to the Metabox patch you worked on.

I have a question regarding this bit:

// As late as possible, but before any logic that adds meta boxes.
add_action(
'plugins_loaded',
'gutenberg_trick_plugins_into_registering_meta_boxes'
);

Is priority 10 the real as late as possible priority? Could it be bumped up to at least 30 without breaking anything?

justnorris commented Sep 13, 2018

@BE-Webdesign
Hey Edwin,
An issue popped up recently in Gutenberg Ramp that's related to the Metabox patch you worked on.

I have a question regarding this bit:

// As late as possible, but before any logic that adds meta boxes.
add_action(
'plugins_loaded',
'gutenberg_trick_plugins_into_registering_meta_boxes'
);

Is priority 10 the real as late as possible priority? Could it be bumped up to at least 30 without breaking anything?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment