Gutenberg on High-stakes Sites and Core Roadmaps ft. Fabian Kägy

Fabian Kägy Headshot

We discuss Fabian’s journey in the WordPress ecosystem, his role at 10up, and the evolution of the Gutenberg block editor. We explore the balance between client work and open source contributions, the impact of the block editor on web development, and the challenges faced in block development. The discussion also touches on the future of navigation menus in WordPress and the optimism surrounding Gutenberg’s progress.

Links Mentioned

Transcript is AI-Generated and may include minor inaccuracies.

Brian (00:00)
Fabian, welcome and thanks for chatting with me today.
Fabian Kaegy (00:03)
Thank you for having me.
Brian (00:04)
Maybe before we start, could give maybe like a kind of a background bio, your experience in WordPress, where you, you know, where you’re working, what kind of stuff you’re doing.
Fabian Kaegy (00:14)
Sure. So like you already said, my name is Fabian. I live over in Germany, have been around the WordPress sphere for quite a long time. I think the first, I’m not a super OG. kind of started right before the block editor was actually introduced as a plugin originally. But since 2020, January, 2020, I am working at the kind of WordPress focused agency, Tenup.
and are currently working there as the director of editorial engineering, overseeing all of the kind of how we actually approach using the block editor on large scale WordPress builds.
Brian (00:52)
Did you go to 10UP from a WordPress background and maybe even a PHP background? Or I know a lot of people recently have come more from the JavaScript background into WordPress. Which one fits you?
Fabian Kaegy (01:05)
So, for me, was, I started using WordPress at my own small little agency over here in Germany, we did very, very small sites for local businesses for about five years. And I was the co-founder of that small little agency, had about 10 folks working together at the highest, kind of at the lowest point, not full-time, all kind of just folks we learned through school and through.
all of that. And then at the end of 2019, kind of decided, hey, I want to work with larger team. I want to work with more talented folks and just get out of that bubble of small little sites and actually work on something big. had at that point of time already kind of through building, building Berkshire on my own, learned some of the big names in this space and got to meet Ryan Welcher.
at a WordPress online conference a little bit and got chatting and saw all the cool things that Tenop was doing with their GitHub actions for WordPress stuff. And so kind of had that entrepreneur, small business owner type background with then just front end design, generalist type of background.
Brian (02:25)
Mm-hmm. Mm-hmm.
Fabian Kaegy (02:26)
that then led to me starting out as just a standard front-end engineer and then work my way up.
Brian (02:31)
wow, okay, so you did work as a engineer. guess that people don’t know Tenup, I mean Tenup is one of the larger agencies in terms of size, but also in terms of like contributions and also just in terms of clients. Like I feel like when a lot of times you see like the WordPress showcase of sites, Tenup clients are often sort of there. So you must have worked on projects where the stakes were a little bit higher than maybe your average WordPress site.
Fabian Kaegy (02:59)
Yeah, that probably is good description. yeah, that 10 up, we are at around 300, a little over 300 people right now. if you are seeing a big client using WordPress, it’s probably somebody that at least we’ve worked with at some point. yeah, it’s always very fun getting to work on those.
kind of really big sites that are going to get in front of a lot of eyes and just ship something cool there.
Brian (03:27)
So your current job, editorial experience, know that you’re, part of it is contributing to core, which I do want to talk about, but I know part of it is like internal workflows or just sort of like, you know, do you describe kind of like what you do internally?
Fabian Kaegy (03:44)
Yes. So the role that I have is a completely made up one that is just to fit whatever I was already doing in a way. And my actual day to day is split 50 50 between 50 % of my time goes towards actual client buildable time. So I’m tech lead on a project actually leading that builds working with the team on a day to day basis, just delivering those big sites. And then the other 50 % is essentially my overhead time that
for me is again divided into some WordPress core contribution and actually kind of advocacy for our needs in core, kind of advocating for the needs of agencies and what the type of issues that we commonly come across. And then also building up training, internal training, providing support for individual engineers, providing support for projects that are kind of writing their functional requirements documents.
and just supporting that, in, in some capacity. so it’s kind of a little bit of those two. It’s also just building our own open source, solutions, whatever kind of at the end of the day, my focus is to make over time, all of the projects that we deliver better. And so whether that’s through building some plugin that we use on, on all different installations that is actually useful.
building some kind of, there’s a big NPM package that we publish as the kind of block components. It has a bunch of react starter components that are useful on a lot of builds. That is something that I kind of started and mainly maintaining in that overhead because it is something that impacts more than just one project. And that’s kind of how my day split usually.
Brian (05:33)
Do you find it hard to context shift between client stuff and open source stuff or is it easy because it’s all serving the same purpose?
Fabian Kaegy (05:44)
I think I would actually find it hard not to have that because if I were to only be in my isolated bubble working on theoretical solutions that never actually interface with a client and get in front of, or I never get to see that actual end user using the tool, I think it would get out of touch very, very quickly. So for me, it really is, I pretty much spend half of my time
getting annoyed at why tools aren’t doing the things that I want them to do and then spending the other half of the time actually trying to fix them either by advocating for it in core or coming up with some solutions outside of that myself.
Brian (06:17)
Mm-hmm.
Yeah, I feel like there’s this kind of, one of the ways I feel like we got introduced is because I was doing a lot of commenting on GitHub issues for things that I thought I needed for the agency and I felt like you and I kept linking to each other’s issues or finding, went to go file an issue and you already filed it or something like that. And we were seeing a lot of the same problems that we wanted solved in Gutenberg for that agency mindset, for that specific I’m building.
sites for clients mindset. And there’s been a kind of a criticism that a lot of WordPress core and Gutenberg especially doesn’t really use WordPress as much as they build WordPress. Cause it’s almost two different skill sets at this point. It’s so much different. So it is really nice that, you know, there is a person who does both and there are, think more people now coming in who do both. But did you get to, cause you’ve
in like lead roles on some of the Gutenberg releases, right? I mean, you’ve done like triage lead and things like that.
Fabian Kaegy (07:27)
Yeah, it all kind of happened naturally. It’s, even before joining TNAP, I, I always wanted to contribute to WordPress itself. And it kind of, it started with the 2018 theme, I believe. It’s one of the core themes where I got that rush for the first time of, something that I submitted actually got merged. And so I always wanted to just
personally do that. I feel some kind of just reward, personal reward of just doing that. And so that meant that at Tenup, any engineer that kind of, yeah, we have a 40 hour work week, but there is a bit of overhead that any engineer has that is usually for just meetings or organizing your time, just whatever you kind of need that time for.
And from the very beginning, kind of used all of that additional time to also contribute to Core. And there is a good support network for that within Tenna, because we have so many folks, there’s a dedicated open source team that just supports that and that just works kind of on WordPress itself. And not part of that team, but I always was able to kind of work closely with that team.
an ongoing meeting every Friday that just anybody can attend that where we just chat about WordPress stuff.
I think we’ve both been big advocates for, we need more contributions from other builders who are actually using WordPress on a day-to-day basis. And of course, sometimes that feels like, hey, there’s just this one big player that doesn’t actually use it in that agency way that is making all the decisions. But at the other side, it’s all of the others who are using it aren’t really in…
Brian (09:01)
Hmm.
Fabian Kaegy (09:17)
in that Gutenberg repo so much and that is what I’m very much trying to do differently and just to help give that feedback as early as possible on what needs to be actually seen on those big client projects.
Brian (09:32)
Yeah, and it’s funny because every release, I have my opinions, what I think is a priority, what I really want done, and you start seeing all the priorities of all the contributors and something that I maybe didn’t think was that important. I see it get merged and go in, and then I see it’s really popular and gets used a lot, and you go, okay, it’s really hard to open up your mind to everybody else’s.
priorities, but I feel like there has been a shift. I feel like other developers have talked about this where maybe a lot of Gutenberg was, meant to be a beginner tool or let anybody edit their site. And, you know, WordPress has always been beginner friendly, user friendly. as it’s gotten more advanced and more complicated, it’s almost a little too hard for beginners. But now we’re seeing a lot of agency developers start to kind of see it and get excited about it a little bit more.
Like maybe in the last year or so, I feel like I see much more enthusiasm for blocks and block workflows than I think I did up until that point. I don’t know, do you internally, mean, is your team feel happy that we have blocks, that we have the block editor? it actually improved how you build websites and make your developer’s lives happier and your client’s lives happier?
Fabian Kaegy (10:50)
I would say 100%. Of course there have been growing pains and especially Tenenup was already a very big agency before the block editor got merged into Core. So of course there was a knowledge gap in the team that we needed to address, needed to solve. And especially the early five point something area was painful because there were a lot of growing pains and a lot of changes in various releases. I kind of, what made me
Personally actually get excited about WordPress was the introduction of the block editor I didn’t really know WordPress before then and I started building my sites with 4.9 just Trying all of the different builders because my brain just didn’t comprehend how you can just use that single text box of just essentially a word document to create highly kind of interactive websites
Brian (11:39)
Mm-hmm.
Fabian Kaegy (11:46)
And for me, when, when blocks were first introduced, that concept of, you can just build individual components, individual blocks. That, that is how I already wanted to think about websites. And that, that is what the block editor kind of allowed for us to do. And for me kind of to actually implement. So for me personally, that just that way of thinking clicked from the very beginning and before it, it didn’t click. And then as a company just.
Brian (12:12)
Mm-hmm.
Fabian Kaegy (12:14)
The rich editing experience of actually being able to see what the end result is going to look like is so important for so many of our clients. there, I think as always, even in agencies, there are so many different levels of what types of clients we’re interacting with. And oftentimes I hear that, argument of, Hey, the client is never even going to open the backend of the site.
just want to pay somebody to update the site for them, which I totally get. has been the experience that I had when I owned that small little agency where we just served small clients there. But at the level that we’re, for example, operating at, we’re working with clients where they have whole internal teams that are dedicated to their marketing and to their kind of public appearances.
And those teams are the ones who actually need to update the site, maintain the site. And so what we are using WordPress for is kind of to build out a toolkit for them to be successful in building and maintaining their own website and adhering to the design standards that kind of are governed by their general corporate identity and all of that. so it’s, mentioned that the block editor has
has gained so many capabilities and is so much more of a design tool these days. And it’s interesting how I’m so happy that it gets a lot of those enhancement because that means that the workflows under the hood are now so much more refined and so much more powerful. But the actual end experience that we’re delivering to a client oftentimes has almost none of that in it because for the client,
Brian (13:54)
Hmm.
Fabian Kaegy (13:56)
We are making those decisions. Yes, we in development are using those tools to build maybe a block based theme that is using all of the global styles stuff to configure all the things. But the actual kind of end user of the block editor, they are not going into the site editor and updating templates and doing all those things. They’re using a very tightly controlled WordPress experience that isn’t using half of the features that are in there. And it is using more of those
simple kind of rich editing tools and not so much those rich design tools if that makes sense.
Brian (14:35)
Yeah. And I think as features like section styles is a good example where you can take a bunch of disparate design things like background color, text color, padding, whatever, and you can bundle them together into little presets. And, know, I think what people want to see next is more of a component kind of workflow, which we’re kind of getting to where you can say, I’m going to design this card and it’s, can pick one of three styles for the card, but that’s it. And it’ll
peer everywhere and it’s really easy. I think we’re not there yet, but I think like that’s the thing that we’re getting to. And when you compare it to how we used to build things, some things are a lot easier now where I don’t have to think about adding a color picker with brand colors. I don’t have to think about adding, you know, typography settings. I don’t have to think about paragraphs and headings and like all that stuff is there. I don’t even have to think about those things. All the basics are there. But then I think where people struggle is, is
If I have a fancy design and I need to make it in the block editor, how do I know what steps to take? How do I know whether I need a custom block? How do I know whether I need a block style? How do I know whether I need ACF blocks or ACF? Like, how do I know which approach to take when I know what I’m trying to make and I just don’t know how to get it in the block editor? So I assume like there has to be some stuff you do internally when you’re teaching people like.
All right, we have our design approved by the client. How do I, because there’s so many ways to go and sometimes I build something and then a month later I go, I can’t believe I built it that way. I’m like gluing blocks together or something and it feels so frail or something. So how do you think about like those decisions of what’s the best way to accomplish a specific thing?
Fabian Kaegy (16:18)
Yeah, you just hit the bane of my existence essentially. That is the holy grail. Coming up with some easy to follow checklist of, this is engineer A, this is how you actually make the right call here 100 % of the time. And we’re not there. I think that is definitely one of the things that I’m still trying to better define and come up with a good, perfect answer for.
because honestly there isn’t a perfect answer right now. There are so many different ways and they all have upsides and downsides and it really sadly still depends on your actual goals, your needs, on the budget, the maintenance plan for the site and just so many different things play into it that I…
We’ve had different waves of that internally and also in the community at large where there is sometimes that sentiment that just, custom blocks are bad. You should just do everything with core blocks. also custom block development is more expensive and takes more time than just using core blocks. And just don’t agree with it. I think they both have their place. They both have upsides and downsides. And for one thing, it may be the perfect thing to just go with core blocks. And for another thing,
you would spend three times the amount of time to actually get that to work with core blocks and would be super fragile. And if you would ever have to update anything, it would break the entire layout and a client would never want to touch that. And I think those nuances are hard to convey and hard to teach. I’m trying to better define it. And there are of course, certain criteria is like, if something is specifically
Brian (17:54)
Mm-hmm.
Fabian Kaegy (17:58)
kind of taking one step back since maybe 6.5, 6.6, so one or two releases ago, I now feel like I can safely, or I’ve personally shifted to think of a block-based theme as the new default for what I am choosing for a new build, and there have to be valid reasons why something shouldn’t be a block-based theme. And so thinking in the concept of a block-based theme,
Brian (18:22)
Mm-hmm.
Fabian Kaegy (18:28)
If something is stored in a template, is managed by developers only and is kind of locked, users don’t ever have to interface with it, don’t have to update that. I can be much more hacky in the way that I’m adjusting core blocks. can just add some custom class names here or there, do some custom styling, do all of those things. Whereas when something is in content, there’s so many factors like, Hey, is this an area that we may need to redesign three months from now because something has changed?
Brian (18:45)
Mm-hmm.
Fabian Kaegy (18:57)
How can we update this if it’s located in the post content of 30,000 articles across the site? And how can even if this is a big content only locked pattern, how there’s outside of hopefully soon, sync patterns that we can actually define in, in a theme there right now isn’t a good solution for that. that means building a custom block, even for a very simple design element that may be super
Brian (19:15)
Mm-hmm.
Fabian Kaegy (19:25)
straightforward, sometimes still is the right call for the types of projects that we’re talking about here. And so I think I would love to have a better answer for it, but they’re sadly, I feel like with synced patterns, pattern overrides, all of those things, we are getting a lot closer to having an answer, but we’re certainly not there yet. And there’s still quite a few, mainly content only locking related.
Brian (19:35)
Ha
Mm-hmm.
Fabian Kaegy (19:54)
things that would need to be updated before we’re there.
Brian (19:59)
Yeah, cause you kind of hinted at my other, my second one, like the first one is in the old days of WordPress, you would write PHP and maybe you would make some custom fields or something where they would enter some data or you’d make a short code, write PHP and make a short code with some attributes that they could populate some data, but everything else you had full control over cause it was in PHP and you could just do whatever you want with it. And you always had their little post meta or short code attributes saved safely.
And then now it’s kind of like you said, a mishmash where it’s a little bit mixed into the content. So making changes later gets really hard, those sorts of things. And I feel like solving that issue where I can design something, but I can change it later and I can keep it a little bit out of the database is kind of the other thing people feel like they really want. And I think we’re seeing movement towards it. see like…
updates to the create block theme tool that’s helping you get patterns out of your theme and into your, or out of your database into your theme. think like it’s going in that direction, but I know at the end of the day, sometimes you just say, well, I’m just going to make a custom dynamic block because I can write it all in PHP. And it is basically the same idea as a short code used to be. And when we were at WordCamp US, they were doing the showcase where they were showing like
like Disney and a few big names, how they were using the block editor and know, every piece of the site was custom dynamic blocks all the way down because it was the best way to fully lock it down. And so it was definitely a moment where you’re like, well, I think glad at least they can make it work. And you still get that nice visual editing and you still get all these other benefits of the block editor. But I’m really hopeful for, like you said, where the
Developer can use all the design tools and all the core blocks and everything and lay it out and feel really confident that they can change it later or move things around and stuff. I feel like that’s becoming a little bit more of a priority maybe. And maybe in a little while we will see that workflow really safe there will be strong opinions and good best practices, I hope.
Fabian Kaegy (22:11)
Yes. Yeah, I feel similarly about the progress that we’re making right now that a lot of the recent improvements and a lot of the stuff that is currently, seemingly getting a lot of traction in the Gutenberg repository are trending that way. And so that, of course, excites me a whole lot, just where things are going.
Brian (22:32)
Yeah, I feel like for me right now, the block bindings API is really the best example of something that is going to help us get there. It’s something where you can have a block you can have markup in one spot and it just references maybe a post-metafield or some other thing and it pulls in that data dynamically. And I feel like that’s maybe getting us to that missing piece where the markup
and the actual content are a little bit more separated and takes us back to that place maybe.
Fabian Kaegy (23:06)
Yeah, it is a perfect example. It is a very, very powerful, really cool tool that we got. But also at the same time, it is one that right now I’m using it sadly so much less that I’d hoped that I could use it because the main issue that I still run into on a daily basis is most of the time that we want to display some piece of metadata.
has a label associated with it and the metadata is actually optional. And the fact that there is no way in core right now to optionally hide an element if some piece of kind of, yeah, you can install Nick’s amazing plugin and kind of make something work. then we’re again, getting into a very complex thing, a very complex solution. Whereas I could knock out a very simple custom block that just
Brian (23:47)
Mm-hmm.
Fabian Kaegy (23:59)
displays a piece of post meta with the label and has an if condition above that hides the entire thing if that post meta isn’t set is so much easier and takes me probably 30 minutes to build. And at the end of the day, I have the same exact outcome. And of course the solution of just using or using a block binding and now having the UI for it as a developer tool is super nice and is something that for meta fields that are actually always going to be there or
Actually, the thing that I’ve used the Blockbindings API the most for is custom buttons that need to link to some specific point. Like for example, in an author bio, there is no way to do a call to action that links to the author bio. Just having a core button that has a Blockbinding to go to the author archive link is a super example of being able to do that. Or on a single blog post, a back to the archive button.
Brian (24:37)
Mm-hmm.
Fabian Kaegy (24:56)
or stuff like that, those kind of CTAs that are always there, that don’t reference some user generated information, but rather reference some just always existent value. I found much more value in those types of block bindings right now than the actual kind of core promised post meta binding that often for me ends up just being, hey, it’s optional.
Brian (24:56)
Mm-hmm.
Yeah, that’s funny because the exact use case I’ve had is there’s no way in a query loop showing, all your blog posts, there’s no way to add a button that is your Read More button to the blog post. Or if you wanted a custom button, just to load the link of the blog post that you’re looking at. And that’s funny because I’ve done that exact thing. And yeah, right now it is all just post meta, but it would be cool to see this expand into very basic post fields like pulling in
you know, other things, but then it’s, interesting cause you can tell they’re getting to it through weird ways where they, you know, now you could have the featured image just as a block binding, but we have a featured image block. But now if you had, if you went back in time now with what we were doing, you would say, well, actually, no, should have abstracted that and made this bindings API, but like, you know, know these things until you get there and you, don’t, you know, it’s no one can predict that, but it’s interesting to see how
even just like some basic core information, like links to specific stuff, kind of leads also to the other place where I do find this lacking the most is probably, think everybody would say is like the navigation menu system. so even simple things like custom post types don’t show up in it yet. And
don’t can’t use menu locations the way you used to. So the menu kind of gets locked into the template and it gets really hard to version control headers and footers and stuff. And you said you were leaning into like block based themes as the default. So I assume you must have a good solution for navigation menus and how you’re handling that.
Fabian Kaegy (27:00)
Yes. So for core itself, I will share that just literally two days ago, I had a very, very good and long conversation with David Smith, who’s one of the core contributors that is working on the navigation block about a lot of the issues that I’m currently always running into and really had a fruitful conversation there. And there are some issues that maybe I’m not sure of their show notes or comments here, that, that Brian, you can add, but it
Brian (27:27)
Yes.
Fabian Kaegy (27:28)
And anybody, please, please add your thoughts to them because the more insights we have, the better we can actually make a solution. But because of some of those shortcomings, things like, hey, on 95 % of sites, the core break point for when the navigation switches to mobile just doesn’t cut it. Or the interactivity API is super powerful and cool, but the core store of that navigation block is
is completely locked in so there’s no external way to actually programmatically close and open it. If for example, you have a search button that needs to open and for some of those reasons right now, we actually internally have a starter navigation block that uses the same underlying WP navigation hidden post type that core uses. So it still uses that same sub menu block navigation link.
Brian (28:19)
Hmm.
Fabian Kaegy (28:25)
all of those, but then actually the navigation block itself that pulls in that navigation post is a custom implementation that is kind of forked from the core navigation block and made to deliver more of those custom use cases that we commonly run into, has some kind of some helpful things like
sticky header that automatically reveals itself when you scroll back up and stuff like that built in that you can easily enable because we often see it in various builds and so that that is something that I’m still hoping we’re going to release that publicly at some point soon when when we’ve ironed out some of the initial initial bugs but that that right now is with us switching to that as as the default
Brian (28:52)
Hmm.
Mm-hmm.
Fabian Kaegy (29:17)
Right now we have a custom solution in place for that site navigation, site header navigation and just navigation in general.
Brian (29:24)
Yeah, and I was somebody online said something like, you cause I think the header really is the last really hard part. think a lot of posts type templates and stuff. You can really get most of what you need. And the footer, I generally feel like you can, you you usually need a lot of CSS for your footer cause footers are always a little, they always want to do different things on mobile and stuff like that. But like you can get there. the navigation and that, you know, that menu and then in the header has always been.
the last and somebody said they just ship their full setting theme. just put a custom block for the whole thing and, and stuff. And I can kind of understand that because, know, it’s not often that you even want your client in there editing the menus. Anyway, you kind of want them to have their abstracted classic menu screen or something. So I’m, I, I will say, I’m really excited about that. I think was it Dave that had the plugin that showed like you could have two different menus, like one for
Fabian Kaegy (30:19)
this.
Brian (30:19)
Mobile one for test. Yeah. like, think you like you said, like these things are happening. And I think the fact that agencies are more interested in full site editing almost then like, then anywhere else, I think that’s maybe going to shift. I mean, are you optimistic about like the next year of Gutenberg?
Fabian Kaegy (30:38)
I totally am and kind of with.
To me, I’m almost thinking of the whole of WordPress and the whole of the block editor as two separate things. Yes, there of course is the full set of features that are all of the core blocks and all of that stuff. Even if you would strip the entirety of the core block library, all of the core rich text formats, away tomorrow, I personally believe that the foundation of the rich text API
And the general system of being able to register individual blocks and how those blocks work, that that foundational framework is super, super powerful. And the fact that we can just build a custom navigation block that serves our needs. And we don’t ever have to enable that core one is something that for me kind of on the agency space is a huge, huge plus a huge win because it just, it gives us a ton of flexibility and a ton of just.
really powerful tools that we can get started with. But of course, if we don’t have to maintain our own custom solution for something, but rather have something that we can all maintain as the large collective, that is so much better at the end of the day and so much just more cost effective for everyone. kind of, but on both of those fronts, I’m very optimistic about it. And to speak to the navigation one more time, kind of, I think of
Navigation and block based themes as they’re kind of three different approaches that I’ve used I’ve all used and that I think all have their ups and downs the the easiest simplest approach if you want to just Switch from classic theme to a block based theme But not really change your workflow or not really spend too much time thinking about that complex navigation piece Just take the entirety of your header PHP file Dump it in a custom block
and render that custom block and just deal with menus as you always have in the old menu system. That totally works. And here you have a fully working block based theme. The second thing is building out the actual full on header as a block based template part. But then there are some plugins or relatively simple customer solutions for actually just using the old WPnav menu function in a custom block and then just rendering that out.
Brian (32:36)
Mm-hmm.
Mm-hmm.
Fabian Kaegy (33:02)
For me personally, yes, I like and have always been a big fan of the menu location system that WordPress has, but I’ve never liked the old UI for managing menus. Kind of it, if you need to work on a mega menu with lots of stuff in there that have more things than just links, it’s just so hard to extend. It’s so hard to add things to it. And the amounts of
Brian (33:14)
Mm-hmm.
Fabian Kaegy (33:27)
hours spent on hacky UIs to get rich cards into navigation menus in that old navigation editor. I kind of get nightmares about those. And so the third and final thing is then fully block based menu that is kind of using the block editor, but with a lot of custom blocks in there to kind of make, make them more, kind of make it easier.
Brian (33:34)
Mm-hmm.
Fabian Kaegy (33:55)
to wrangle and to work with all of that. And it came up once before earlier today, but that exploration that Nick Diego did a while ago about using block-based template parts for MegaMenu areas. Genius thing that kind of we’ve also adopted into that custom navigation plugin that kind of has that navigation block. has…
Brian (34:07)
Mm-hmm.
Fabian Kaegy (34:20)
block for mega menus inside that navigation and kind of combines those few different things.
Brian (34:25)
Yeah, I actually did. I’ve actually, I think I’ve done all those approaches. I’ve done a, the, there’s a good classic menu block. did take Nick’s mega menu thing for one site and fork it to kind of get what I wanted. like I said, they all have pros and cons. They, you know, they, they all, I look back at them all now and I go, well, I, I maybe would have done this differently or I, if I would have known.
that the client was gonna do X, Y, and Z, I might’ve built it this way. at the end of the day, I also think those are problems where you’re trying to solve really hard design problems.
fancy header menu is probably one of the hardest design things you’re going to deal with on a website unless you have some fancy maps or things like that that are a little more interactive. But often the header really is the hardest part. So the fact that it’s the hardest part to solve in meaningful way in Core is kind of not surprising should be expected. I’m glad that it’s because sometimes it can feel like something hasn’t been touched for.
a number of releases and you go like, well, wait, were we ever gonna finish this? we gonna get a few more blocks in our partially synced patterns? And there’s many priorities. I’m glad that we’re able to have people like you push for agency priorities and keep the focus on those, because there’s just so much work still to be done in WordPress.
Fabian Kaegy (35:52)
Yeah. And kind of like you said, if we continue to have to work on that most complex piece of the navigation as developers, I’m, I’m kind of okay with that for, for a while. Of course, I wanted to get better in core and I want to continue making it better because I think it is a big point of frustration right now, but also kind of one of the things that if I had the reins for one day and could actually just move
one single piece for it that would probably make the most clients happy at the end of the day. It would probably be the table block and adding the ability to merge cells and some of those things, which it is so funny how there are so many of those big, big things. And of course it already hurts not picking a overrides and sync theme patterns. But it is funny to bring that back into perspective sometimes how
There’s so many big things and so many small things that we can all still improve and should improve. And it is sometimes hard to find the thing you want to focus on at any point of time, because you could literally do this as, or there are so many folks working at it full time and there’s still so many, so many things that we could all do.
Brian (37:04)
Yeah, and I’ve learned to just want to start filtering out areas. Like if I get tagged on an issue or something and it’s not something I’m extremely focused on right now, then I just have to save that mental energy. So that way when something comes through where it’s like, that’s something I’m really dealing with and I actually have much more valuable insight, funnel it to that because there are so many things. again for meeting and talking and.
kind of giving everybody like a background of what you’re doing. Is there anywhere you would want people to go to follow you or I think like 10UP has some amazing resources that I know you’ve worked on that you want to share anything like that.
Fabian Kaegy (37:45)
Sure, yeah, I recently finally made the switch over to Blue Sky fully and just I’m over there always happy chatting WordPress feel free to read it to me there just my full name all lower caps and besides that the site where I published the most about kind of best practices for working with the block editor we maintain Gutenberg.tenant.com which
regularly gets updates and kind of has resources for how we deal with block-based builds in WordPress. So those are the two main ones, but my full name, all lower caps, probably can find that in the WordPress Slack in all places and always happy to chat.
Brian (38:31)
Definitely. And yeah, if you’re a WordPress developer, 10 up like engineering best practices documentation that’s a little older is like should be your textbook and everyone should have read that. And then the Gutenberg.tenup.com. If you’re just like, I’m not sure how I would do accomplish a thing that is really like a great sort of intro for developers who want to kind of like get in the mental mode of building for Gutenberg. So I definitely recommend those as well.
Fabian Kaegy (38:56)
Yeah. As one final thing there is for me, I personally spent the last half a year or even year really diving very, very deep into whether or not we want to make the switch to block based themes as the default. so recently I’ve started putting a lot more energy into that site, into that Gutenberg site again, to add much more resources specifically for block based themes.
So that was an area that we didn’t have much resources on. It was mostly just building blocks and all of that. But right now, the thing that I’m most focused on in terms of documentation and improvement that is actually getting more content about how we deal with block-based themes onto that site.
Brian (39:25)
Yeah.
Awesome, that’s good to know. Well, thank you again. Thank you for chatting and I’ll see you on the GitHub issues.
Fabian Kaegy (39:44)
course anytime.
Brian (39:45)
Thanks.

Available on all popular platforms:

(Should be) Rated 5 stars Apple Podcasts!


“Easily one of the best podcasts I’ve heard in years” is what some people are saying.


“Webmasters became my favorite within the first ten minutes” I said about it myself

Subscribe to the newsletter and we’ll send you a notification when new episodes drop.