Font Library in WordPress 6.5

You are listening to ViewSource, conversations around WordPress and adjacent tech with hosts, Aurooba Ahmed and me, Brian Coords

[00:00:09] Intro and WordPress 6.5

Brian, how's it going?

It's good. How are you doing today?

Pretty good. Recording in a morning, which is not like normal for us.

It feels very weird. I'm glad you addressed that. It feels very weird to record in the morning.

Yes. Yes. All right. So WordPress 6. 5 is about to be released soon as we record this. How are you feeling about it?

Yeah, I mean, it's been an interesting one, I guess. It's been an interesting release. I feel like I've been the closest to watching a release that I've ever been, and so seeing how the decisions are made, actually having conversations with people, it's been very fascinating to watch, I guess, is the word I would use.

not surprised. And I guess I haven't been as close this time, but it's been really interesting to not be close. It's been interesting to watch it evolve and have, see all these other people having these conversations and not be quite as invested in them as I normally am. So it's been a, it's been a different experience for me too in a, in the opposite way, I suppose.

Yeah. And it's, I would say it feels to be a very developer focused release. And that maybe that's just like my brain has been on like developer mode of WordPress recently. But it's like you go through the list of features and it's all like, this will be really cool for developers, three releases from now, but it's coming like, but the foundations are coming and it's a lot of those things happening, a lot of APIs, a lot of new APIs,

I agree. You know, something that I've been thinking about a lot recently is how important it is to think about the plumbing of things and think about the foundations of how something is done before just jumping straight into like, Oh, you know, the shiny parts of that. And I appreciate that we're doing a little plumbing and we're separating that out from the UI and other ways that we can take advantage of the plumbing, giving it some time to, I don't know, marinate, I guess.

I don't know what the right word is here, but you know what I mean? Like, I like that. I like that we'll have the opportunity to play with it before it becomes like a solid UI focused feature. Like, say with like block bindings and other things like that.

Yeah, and it's like, it's kind of a weird mix because on the one hand Like you want people to play with these things, to give feedback early, to actually help improve and say like, Hey, this is the use case. This is what it would work, whatever. But like, there's like 50 things happening. So you can't really invest time in all of these things.

Like, you know, there's only so much you can look at. And even though the Gutenberg plugin is that place to like play with the experiments and stuff, there's only so much time in the day. At some point they do have to put things in the core a little bit, just to kind of push people to play with it. But it's funny.

Cause I think today's feature that we're talking about. is definitely the longest journey of like, places where the plumbing really came in early, places where the plumbing came in late, and places where, as of, you know, today, the plumbing is still up for debate.

[00:03:08] Font Library and Developers Naming Things

Yes, yeah, so the feature we're talking about, obviously, if you haven't already guessed, maybe you've guessed from the title, I don't think we've decided on a title yet, but probably the title will say, is the font library, the font manager, font library, I think it's officially the font library, right?

the naming, just the naming alone is like, we could do a whole episode of font, font families, font collections, font

Oh, yes. Yes.

day I was on a video and I was like, why do they call like bold? You know, where you pick like bold, semi bold, whatever. I go like, why do they call it appearance?

Why not call it weight? And then someone's like, well, it's not just weight. It also has like font, like style and font weight combined together. So you can't call it like, it's like just the naming of things is like

Yeah. Or maybe like flat format. Here we go. There's another option.

I just, my recent opinion has CSS, because then at least there's a reference. Like there's at least a, A source of truth. If we, if we name things not what they are in CSS, then it's harder for people to learn what they mean. You know what I mean?

Google Docs. That's what I want to know. I'm gonna, I'm gonna, I'm gonna pull up a Google Doc right now. Because, you know, in those kinds of situations, that's where you see the font way and the font style combined usually, right? So I guess. In Google Docs, you have the bold and you have the, so that's not a good, that's not a good solution.

Probably gonna have to check Figma, because in

Well, in Google fonts you can like, it's like a tree, like you can kind of like get your font and then you can like expand. It's interesting. While you do that, I'm gonna pull up, I'm gonna pull up my screen.

Yes, so let's start off with that tour. So Brian's gonna take us on a tour of the Font Library feature, and then we'll kind of dig into a little bit more of the evolution of how we actually ended up here. Let's find out where we ended up first.

[00:05:05] Release Landing Page, Playground, and WP CLI


make WordPress core make 6.5. I actually just learned this, that you can type. Slash core slash the name of a release or like the the version of a release and it'll take you to like the main landing page that has Literally everything you need to know the link to the field guide which just came out the all the agendas the release team Everything, you know all the way down to like the release schedule where you can find like what's the latest?

Release, you know beta version that I can play with. Did you know about this?


I Mean, I knew about

definitely did.

You Like, I know that you, it's always here in the sidebar, but I didn't know you could like the URL was that like consistent. I don't know, but

Yeah, so it's a really solid, solid, I believe it's a tag. It could be a tag, I'll have to check, but it's either a tag, it's a tag, it's a really solid taxonomy and they've been using it for a while now. Makes things very convenient. Yeah, for sure. Thank you.

so I'm, I'm going to go to release candidate two. And I just want to show this because like, I think it's crazy with Playground, how easy it is now to just like, play with the new stuff, test it out, low stakes, just be like, I just want to see what it looks like in the new version.

we should totally do an episode if we can or find some way to do like a longer conversation on the playground because the playground is amazing and now there's a plugin for it. You can, the possibilities of playground is wild. They're wild.

Yeah, the, the code block plugin, which they're going to probably start using on like the training website. So like in the tutorials, you can actually like, Oh yeah, there's all sorts of stuff. And on here, so this is the most recent release I've been using the WP CLI commands, like with, I use local for my local environment.

So on a few sites, I've been slowly updating to release candidates just to kind of be, see what they're doing. How the sites run on the newer version and the fact that it's like one line that you just type in and local makes it easy. So that's another way to get this.

And can I say how nice it is that they have laid it out this way because it wasn't always like that where you had just like this really nice little table almost on the release candidate page and you're like, here's all the ways that you can update this or test this. It's so it's so clear. And makes it so easy for someone who might be muted, like trying to test something.

So, and it's still really convenient for those of us who have tested before, you know, you either click it or, you know, see the command or start a playground. I mean, some of the thought that's being put behind so many different parts of how make works and demonstrates work. It's, it's fantastic. It's very appreciated.

Yeah. I, and I think like that's one thing people don't like, they just think about what's in happening in core WordPress, but like they forget, like there's a larger machine. Behind it that has like basically like the whole meta side of things. And like, there's, you know, a lot of improvements coming.

There's the playground integration with the plugin directory that I think is now finally kind of coming all sorts of, I mean, yeah, we could go on. All right. I'm going to, so I've pulled up, I hit the link. This is a playground, WordPress playground. If you don't know, it's WordPress in your browser. We're on WordPress 6.

5 release candidate two right here. And I'm gonna open the site editor,

Let's do it.

Site editor.

Yes, that deserves another discussion of its own for sure. Do you remember that one episode we scrapped that was about the site editor and then it wasn't going to come and then we had to scrap our entire episode?

Oh yeah. Have we been doing this that long?

Yes, we've been doing it that long. Yes.

yeah, I forgot about that. Honestly, I'm not gonna lie, my memory goes back like, 12 months, 18 months if I'm lucky. That's about it.

This podcast has not been alive for 18 months yet.

Yeah. Well, pretty, I'm warning you, I'm gonna start losing episodes pretty soon. Alright, let's, so actually what I've been doing is, I've been doing command palette in the site editor.

I've gotten really used to it. It's a really good power user tool. This whole sidebar over here. I just get mad at, Oh, I just avoid it if I can. So

you're just getting rid of it by clicking Right, you just hit command K and now you've got the command palette open.

Yeah, I was just like, click into the site. I mean, there's other issues with that too, but I just like kind of click in and get into the site editor without that sidebar and then I command K. Oh, this time it doesn't recommend last time I recommended something.

I did. Maybe it's because you were in that templates area so it had some sort of hint for what you were trying to do.


Yeah. That makes sense. I can see why.

this is basically the four main categories on the sidebar on the outermost level, except patterns is missing. Okay. So ready styles.

Yeah, let's do it.

[00:09:49] Styles Panel in the Site Editor

So there actually is an issue in a PR to move pretty much all the style management to here. Instead of having to, yeah. Instead of having to click over into this other panel here.

Which I think makes a lot of sense. Yeah, I really like that. One, it's just by default a little bit wider and it gives you a little bit more breathing room when you're looking at all of it. And I like that separation. Like, I know that the styles area is separate from the inspector, the sidebar of the block editor, but I like how, like, It makes you think about how it's about your whole site and not just about this one page.

It makes that a lot more clear than when you're using the style sidebar in this editor context versus in the site editor context. So I really like that.

Yeah. Like it's, you're doing global things to your site, things that feel global and stuff should really happen on that left hand side and things that are fundamental to like the structure of your site and stuff like that. And this right hand side, yeah. Should really be specific to the page or the individual block.

And it's like, if they, the more they can separate that, I think that's going to make life easier. And then I

I would love to see this go away from here, if I'm completely honest. I would be like, this doesn't need to be here. If you want to affect something globally, go to the site editor context.

Yes. So we're, we're just running 2024 theme. Cause that's just the kind of default. So this is like the default experience people are going to get. So we're going to open the typography panel in the styles sidebar. And you'll basically see once you open typography, you have the option to manage your fonts and then the option to manage elements, which I guess basically means like Where the fonts apply or like where all your typography settings apply to specific elements.

So it's an interesting hierarchy. Like, I guess it makes sense.

mean, I remember how contentious it was to make captions editable. In the elements area, so, you know, I'm looking forward to the time when all text elements, or at least some of the more major text elements are all in here, you know, I mean, a lot of them are in here now, like headings, links, regular text, buttons.

well, why wouldn't, yeah. Cause like, like the next thing I'm thinking is list items, right? Like list


generally need to be styled, but then why wouldn't I style that through the list block? But then buttons is here and that's a block. So like, how do you make that decision?

That could be a whole conversation, but, but I think for me, it's like list elements are not just the list. Like, it's not just an unordered list or ordered list. There's also like definitions, for example, there's so many types of lists in HTML elements, and it would, that's probably why it's not in here, because how do you decide, like, you said, how you decide what you style and in what, where should be affected.

But then the same thing could be said about headings. Why am I doing it here? Instead of styling it through the heading block?

Oh yeah, and that's, I think that's something we discovered where, when we were building out stuff in theme. json, like, theme. json has this elements section, where you're actually styling the HTML element, not the block. And it, it's like, it kinda, like, in some ways you think, oh, well that'd be great, because like, if I style buttons here, So every form plug in should take those styles and stuff.

I mean, most of them don't, but you would think that's what's going to happen.


Yeah. Well, there's a lot of

I mean, understand, it makes sense why it's global, but then it doesn't work the way you expect. So

Yeah. Like links and text, like those make sense. Cause that's so across multiple blocks. So that it's very clear.

Mm hmm.

[00:13:23] Typography Panel and Tech issues

But yeah, so at the top though, that's like where our focus is, where you can, right now I can see there's four fonts and there's three variants of the Cardo font, one variant of the Inter font, one variant of the System Sans Serif, and then one variant of the System Serif, and those are presumably active right now.

Yeah. So I appreciate that they're bundling system fonts because there's not really an option for that. So your theme has to support it. So it's kind of nice that the default theme sports it. Since so many people are using this theme, like as their starter, I mean, the amount of people using this as a starter theme is nuts.

I feel like compared to normal default themes or at least the last

of 2010 or 2011. I think it was 2010 or 2011. One of those themes was also, it was a big game changer and a lot of people use it as their default. I remember as a much younger person, taking an entire course on how to customize it and it was, it was a big deal. So this feels like that, you know, it has that kind of legitimate power and potential, which is really impressive.

So I've never clicked on one of these. I've always gone through this icon and there's, there was that whole discussion about the making, like, why is this one here, but this one's this, or, you know, like making these different icons more consistent. I'm curious just weapons. If I click. Okay, so it's the same thing.

It opens the same thing. Okay.

no, I don't. Oh, it does.

It does, it just brings you in deeper. So this takes that into a modal.

A few minutes later.

Okay, so we are back, barring some major technical difficulties, I think, to summarize, this is the second time I'm summarizing it because I also lost my internet for a minute. But WordPress Playground does not want to play nice with me today. It works for you. It's for whatever reason, not working for me.

And I don't feel like restarting my browser. So I'm switching over to just a local development version of WordPress. I just spun up in local WP, another version of the WordPress beta using that CLI command that was that we talked about earlier. And so we're at the same spot. Let's open the font library and talk about Google fonts and fonts in general.

Yeah, so right now we're looking at that modal, and it's showing us all the fonts that are active. So right now we're seeing the same information that we can see in that sidebar, right? And then we have those three menu items at the top.

yeah, exactly. Well, I, it also goes back to our discussion of like, if this, say, this turned out to be on the left hand side of the screen, there's actually UIs coming that maybe there's like additional panels that would come out and like the data views and all that sort of stuff. And so I think it needs to be like, okay, for the site editor to like, take over your screen, if that makes sense.

Like any, like, there's no reason why I couldn't have like my left side bar and like the, instead of a modal, this just be the content right now, because it's already blocking the content.

Exactly. You can't see it anyway.


Yeah. No, I think that would be, I think that would make a lot of sense. And I mean, we have this whole thing where the site editor will eventually become, you know, the entire dashboard. I think that's the, that's the hope. So at some point it does need to be okay to take over the whole thing.

And in certain situations it does, right? Like when you, back when the site editor was first, introduced, there were views in the site editor where you didn't see the site at all, and you had like your templates and stuff that you would have, so it should be all right.

Yeah. And there's, and I think we don't, we won't get into the state, but I think there's some changes to like how the template library looks now and patterns stuff, though a lot of that. And like the data views is kind of coming in core under the hood right now. So yeah. So on this site, by default, 2024 loads six variants of a font and a variant can be like bold italics, you know, that sort of stuff.

Two of them are system fonts, so I don't count those as much because they're not like a resource that we're loading in. But I think really the big concept here is that fonts are an external resource. And that is really the whole discussion of what, of what's happening with the font library. So right now we're loading four variants of a font.

And that's site wide, right? Like, I mean, that's four font files.

that's for, I mean, let's be honest, I think we've definitely done more than that in a theme before. So I feel like this is a very reasonable number for a theme to have,

Yeah. I think four is about, I mean,


yeah. And so you can come in and you can basically, if you uncheck it now, it's not going to show up it's not going to be act like it's installed on your site, but it's not like actively enabled throughout your site, so you won't see it as, as an option in the dropdown.

You won't see it on the front end.

[00:18:05] Variants and Variable Fonts

Now, I think the really interesting part here is to show that when you click into Inter, so click into it for a second, see how it says Inter 300, 900? This is because it's a variable font. So it's really one variant that can act as many things. Whereas when you open up Cardo, right, Cardo is actually separate.

So you have Cardo Normal, Cardo Bold, Cardo Normal Italic. So this is, I think, where the, Power variant variable fonts is going to really start to shine because you have this one file that can do so much versus having to put so many extra resources to be able to have those different styles. And it's maybe more obvious now than it ever has been, at least inside WordPress.

And what do you think of this verbiage, keep in mind that too many variants could make your site slower. Like on the one hand, it's helpful, but on the other hand, it's not because it doesn't say what too many variants are. Like what's a person like, well, I have less than 20. That's not too many. Right. Like, you know,

Yeah, I think it's interesting. It should have a learn more. It needs a learn more link.

links to support to the support site. Yeah.

To explain, because I mean, that's just not enough information. And even now, like, I know what that might mean, because I'm a dev. But this is not just available to devs. So this is verbiage that could be really confusing and maybe even concerning for certain people. And then you don't have a way to like, go look for some more information that's guided that.

That's a miss, but also something that can be improved very easily.

yeah. So you can upload new fonts. So like you have the actual font files. You can upload them. Or you can choose to connect to Google Fonts and install a font. Should we install a font?

[00:19:52] Google Fonts and GDPR

Yeah, let's do it. I'm really happy about this So we all know that, you know, it's not GDPR friendly anymore to host to use hosted Google Fonts However, this is really nice and this has like a long history Kind of like six version history in WordPress, but now when you're going to select some, it's just going to install them locally.

And then it's going to be a completely GDPR friendly Google font.

We should go back in time and pop in a Raleway I mean, how many sites did you do with a Raleway We should put all

I, my site still has Raleway on it. And I still, sometimes I look at that W and I'm just like, I've had enough of the Raleway W. I've had enough. Yes. One day I'm gonna get it.

And I'm gonna change it.

yeah, it's honestly, since switching to full site editing for my personal site, I mean, right now I'm using inter because I feel like every developer has to use inter as their font. That's just the rule. But I do love that. I, it's nice to, you can just like, Hey, let's, let me change my fonts.

Yeah, that's true.

So I have installed Raleway two versions. You'll notice that once you install it, you can't uninstall it, but you can disable it, but the font sits, I mean, it's there, it's on your server and it's a little special directory.

Yeah. I think it's, it's okay that in the first version you can't. I'm okay with it. But that should come. You should have the ability to remove it. I mean, it's like media, right? You can delete your media. So you should be able to delete these fonts. They're there. It isn't a deletable directory. It's supposed to be

no. Yeah, that's definitely, RD plans for that, an issue for that. I'm going to turn off Cardo. And I'm going to turn on Raleway and I'm going to hit update.

[00:21:43] Saving changes in the site editor

And this is my favorite is when you hit update, I expect the modal to close.

I don't expect it to close.

I just hit like this. This doesn't feel like a thing. Like I'm done.

No, because you, there's more than one thing you can do in here, and it's not a save, it's not like a, I mean it is a save, it is a save, but it's a save for that particular font, but you can do other things in here. I, what if I wanted to disable more than one font?

I would hate it if it closed the modal on me after one save.

I don't know. I disagree. I just feel like when a button is down at the bottom and the right hand side, like that is a clear indicator that I'm going somewhere else that I'm continuing through the process to a new.

I agree with that. So, but I think that means that the placement of the button is wrong, not that the button itself is wrong, because it should probably be in the top, like how we have published saved and everything inside the block editor, that would probably make more sense. And it would save space, actually.

Yeah, it'd be a little more, like, breathable if it was, like, up here, like, save changes or something like that.

Yeah. Yeah. So, you're right though. At the bottom corner, you do, it does make you think it's going to go away, but I wouldn't want it to go away, so therefore it should just not be at the bottom.

Yeah, I mean, there's a whole interesting conversation about that and about just, like, in the site editor, there's so many things where, like, I guess I would want to save it more, like, when I finish editing one part and I move to the next, I kind of want to save it, but it kind of waits until the end, and then it gives you, like, all your changes, and there's really no right or wrong answer there, but it's like, An interesting thing.

yeah, I do believe that the concept of autosave should be used more in the site editor. If it's not right now, not really. You know?

yeah, yeah. All right. I'm going to put Raleway as our heading font because

Oh, let's do it.


Flashbacks! You know, sometimes I have a hard time looking at my own website because of Rayleigh.

Is it, I mean, you could probably change that pretty quickly.

But I'm lazy. So lazy.

it didn't let me

Save? You shouldn't

no, I saved it.

Oh, there it is. I just had to refresh. I think that's just a local issue.

yeah, it might be. Maybe. Maybe.

Okay, I just refreshed it. See, now it looks like a Raleway. And now we have a Raleway for our headings.


I wish it said the word WordPress, so you could see it.

Do it. Do it. Make a

Word, yeah, there it is.

There's that W.

Oh my gosh.

But I mean, overall, that was a fairly painless experience if we cut out all the technical difficulties you had.

Yeah, all those technical difficul had nothing to do with WordPress and had a lot to do with just like the fact that we're recording in the morning. That's my, that's what I'm blaming on it. Okay. So there's two other, like, I think, important things about this font library. That's kind of what the UI is. I mean, I think that's great.

I love it. It's, it's a feature that when they say like, complete, this was part, this needed to happen first, you know?

I agree. Yeah. We've all been waiting for it for some, some version of this. We've all been waiting for, for six versions of WordPress.

[00:24:58] Font Library's Journey to Core

Yeah. So. Can you give me, like, give me, like, the summary of the process getting to 6. 5, which, as of, like, two weeks before, still was not sure it was going to ship a font library user interface, but, like, this whole process goes back to 5. 9, 6. 0? I

Yeah, I mean, you have that open, so open up that Tavern post. So, this whole conversation, it's, it's, it's not exactly related, but it is related, right? But Web Fonts API, when the Google Fonts GDPR issue happened, that's when the Web Fonts API became more of a, oh, we should do this, because people really like using Google Fonts.

And it's like, It's pretty important for a lot of people and we want them to be able to have GDPR friendly websites and we need to be able to support a way for people to do this easily, you know, even if they're not developers. So Web Fonts API became more of a thing, but then there were all kinds of issues for why it couldn't happen.

So then it got punted from 5. 9 for good reasons, and then it landed in 6. 0, but No, did it land in 6. 0? I think it did land. Yeah, it did land. Because it landed with that and some support for, say, for theme. json. So you could register fonts using theme. json. And you could I can't remember if you could, yeah, you could register it through the PHP as well, but it was very pared back.

There was a very few features. It was just like a very basic registration and obviously there was no UI. And then there was this whole concept of, okay, we should make something like this happen in the UI itself. And it was, it, the work started on it. Then I think the first time it was going to show up was 6.

3. Then it was punted because of all these problems. Then we thought it was going to be a part of 6. 3. Four, then it was punted from six, four, and now we're finally at six, five and fingers crossed. It's actually going to land.

And I like, it's kind of important because there was like cut themes were including ways to put Google fonts in and all of these other page builders are too, but like even just like themes, like theme, foresty themes were all in the customizer, adding integrations.

With Google,

Custom every time for Google funds. And so it's like, it was just one of those things that was like, it just made a lot of sense.

And there was the GDPR concern and the way they got around, it was saying like, well, we won't pull them from Google, like we'll pull them and we'll save them locally, so you're not calling an external server. And I think a lot of people at first were a little like upset about that. Like you're installing files on my whatever, but it was like, no, it was like actually a, a solid reason.

And if you have a halfway decent host, then. They should have some sort of good like CDN for assets and stuff. And I see font as similar to an image. Like it's an asset, like it's loaded a lot. It needs to be, it doesn't, you know, it doesn't need to come from the server, needs to come from the edge.

Like it needs to be very quick and available and cached. Yeah. And so in a process and then, and then this release, it was, it's still a conversation.

[00:28:01] Ongoing Discussion for the Font Library

Yeah, it's still a conversation because there's functions that may still change their name as of two days ago from recording this. And we don't know if it's going to actually have the one, have the, the, the function names are going to be what the function names are right now. Especially for customizing the font upload directory, which has been, you know, one of the more contentious issues this time around.

Because typically the only part of WordPress that you can put stuff in, you know, using core typically is uploads. Right. And

that's it. I don't know if I agree with that. I can go into WordPress right now and I can install a plugin or a theme. I can drop a zip file directly into the interface and put something in there. But I think, well, I think half of it was that people felt like this is a media. So it should be like, it's not a, it's not a media post type or an attachment post type.

It's like its own post type. And half of the conversation was like, like it's something somebody uploads into their site. And we serve it as a resource. So why not put it as the same as every other image and whatever, because then every plugin that does like offload media and stuff will work automatically.

Every host that like does special things for this, it'll work automatically because of all the hooks and filters that are in the attachment post type that have existed for 20 years. Now it's like a new post type. None of those apply. So none of those filters apply. None of those hooks are there. It's completely brand new.

And then there's the directory.

Right. I mean, you could argue that's a different kind of asset. And so, therefore, it deserves to be treated differently and not immediately and by default have access to all those filters. So I can understand that. I understand the other side too.

And I think that's the way they went. And they said like, Nope, we need to like, start thinking about new things and not just shoehorn it into an old way of thinking, which is also a very valid viewpoint, but then they made the new, so like this right here is where it's going to live,


WB content slash

a whole thing. Yeah, dope. I mean, I think it's, it's a small thing, but it's a big thing. You know what I mean? It's, it shows that we're not just doing like JavaScript innovation anymore in WordPress. We're really trying to modernize the whole, all of WordPress slowly, little by little. And there's excitement there.

It's a really, really positive signal.

Hello and pardon the interruption. This is Brian coming from the future. The future of when, from when we recorded this the past for you now, listening to this with a quick update. When we recorded this episode, WordPress 6.5 was through partially through its release process. I think we were looking at release candidate two, as we were recording this since recording, they've made a few changes, including pushing the release back a week. And reverting again, the change to the fonts directory.

So in this video, we're still talking about it being something like a WP content slash fonts for the fonts that ended up being more work than they thought they were trying to have a nice, easy fallback for servers where it wouldn't work, that all kind of didn't pan out.

So they ended up just reverting and putting the fonts under the uploads directory at the time of 6.5. So. That might change in the future, but now it's a little different. So as you keep listening, we are talking possibly about it being a new folder in the WP content directory, but that ended up not being the case for WordPress 6.5.

Just wanted to throw that in there and now take you back to our episode of the podcast.

I think the negative part of it was that it was a decision that was made. And. I think the problem is that it had a lot of implications and side effects for hosting companies. And I think what was learned from the process was like, when that decision was made, there should have been way more outreach with hosting companies.

To say, Hey, this is, cause like you said, like, you are right. That like the uploads WP content slash uploads is treated very just separately than themes and plugins, especially because themes and plugins can have like executable, like PHP code and stuff. So that's, what's a big difference then. The uploads folder.

[00:32:25] The Hosting Companies Responsibility

And so there, there basically was no conversation in about a month before the release, a contributor was like, Hey, have we talked to hosting companies? Like, are they okay with us uploading file, letting users upload files into a new folder? Like, is that even going to work? And for some of the hosting companies, the answer was like, no, not without some work.


I'm not going to lie in this situation. The onus is entirely on the hosting companies. You are using WordPress. You make money off of WordPress. WordPress. It is entirely your responsibility to keep up with core and see what's going on and chime in when appropriate. It is not WordPress's job to go to the hosting companies and say, Oh, by the way, you make money off my back.

Is this going to be okay for you to keep making money? Like, like, I just don't think that's WordPress's problem. This is the problem.

not even just like posting it in the hosting channel, like, Hey, this is a infrastructure change in the Slack, you know, hosting like channel and at least putting it there. You don't think like, I honestly, I think it worked out the way it worked out, which is like, it wasn't a known issue till it became a known issue and they had a month to deal with it and they've dealt with it.

So like it, it all worked out, you know?

no, I think that, you know, there is some responsibility, like putting it in the hosting channel and thinking about that would have been good. But also, if some contributors forgot that, I still don't think that the response, the, the, the bulk of the responsibility falls on them. I just don't think that, you know they're not the, yes, we Sponsored contributors and all of that stuff, but it's an open source project.

Y'all making money off of us. Great. You pay attention, you pay attention and make sure you can support this. So I, I'm okay with how it worked out and I'm okay. Even if hosting companies have thrown a fuss, I almost wish that they had, I almost wish that they hadn't been able to support it because that would expose the lack of attention they give to this thing that is so important to their business.

Yeah, and so like in the conversation, the first two hosts they tagged were Pantheon and WordPress VIP because those are like the most unique where they really do take your uploads and then immediately put it to a different type of server versus like, you know, WP Engine where you can do that with like a, they have a really nice S3 integration and stuff, but it's not the default.

So I think they, they did it. And so the compromise at the end of the day is that there's a filter, which honestly is a good, like, should maybe just exist in general for these sort of situations. So you can filter and say like, they can do a fallback and put it in the uploads folder. If they want,


I think I just didn't like the idea that they just didn't like the way it looked like there was definitely like, there's some messages in there where it's like, Oh, it just doesn't look as good as being in uploads next to all those date folders, which isn't even like a default thing.

Like that's not always the case, but,

I think it is default now by default. It goes to dates.

or yeah, it's default, but it's not required, I guess I should say, but, but

Aesthetics of a URL are especially URL since particularly user facing is not super relevant to the conversation. But the fact that we have a new directory with other things happening in WP content and that it deserves to be treated differently.

That's a better argument.


[00:35:47] Composability

And I think that leads us to, I just wanted to bring up this post for I think it's an important sort of Like peek into what they're really thinking about because you know at the end of the day I think the idea was like everyone on WordPress should use the same underlying tools and themes shouldn't show up with like You know a bajillion lines of code to do the same thing that everyone's doing and so themes are getting so streamlined down where they're really just the coat of paint and there's no functionality in them and now The idea that like fonts are already stripped out of the theme.

Like they're not even, they don't sit in the theme. They sit just in the WordPress. The idea that like that could apply in here basically talks about like that could start applying to other things like patterns or temple parts or like design, like style variations and stuff. And the idea is that like, so a lot of these things could start moving out of the theme and being there, like there could be WB content slash patterns.

Or there could be WP content slash, I don't know, in GitHub, there's like a couple of examples, like WP content slash I think it was like style variations or something like that

I think it was. Yeah, I think I saw that post. But I think that was definitely brought up quite a few times.

What do you think about that? Do you like the idea of like taking patterns and templates out of the theme?

I think it's an interesting idea. Themes are still gonna bundle stuff. And then that's gonna get pulled out. Does that mean they're gonna be deleted when you install a theme and it comes with some, some, some stuff you either need to install these things separately or does it mean that it's going to sit in the theme and it's going to sit in this other folder inside WP content?

There's a lot of implications here and for cleanup and for not making things redundant that shouldn't be redundant, you know, and

I mean, one of the things that a lot of the block theme, like builders, like cadence and generate press the ones that build on top of Gutenberg is they're all building these cloud pattern libraries where they have a bunch of patterns on the server and you get access and you pull them locally and stuff.

Like they're already sort of doing that. There is the block pattern directory, this idea that like these things can be pulled from places. But I switched my theme from one full site editing theme to another this weekend. And it's. It like you lose all of your templates. So any custom post type template, everything, which I get, you know, it makes sense, like I'm switching themes, but it, that would have been nice.

None of the color naming is consistent across WordPress themes. So I have blog posts where I like put a paragraph in like a, with a background color to like do a call out. None of those work. Now I have to go through and like find and replace. The name, cause we don't have a consistent name of colors.

When you pull in patterns from other themes, the colors never match. That work I think has to be done first before this could happen.

yeah, let me be clear. I think the concept of composability, which seems to be everywhere in the web dev world right now, just in general, whether it's, you know, the, the, the previously known as Jamstack world or as the WordPress world, concept of composability is as old as web dev itself. And yet somehow is getting a fresh, new spin on it these days. Which I find really fascinating just as a trend, and it's a good idea, but I agree with you that there's work, there's plumbing, there's thought that needs to be put in before this becomes a viable idea, at least inside WordPress and. You know, we've had this conversation about design tokens and, you know, consistent naming.

And honestly, like, I think it would be nice if we just had some consistent names, like, you know, like primary, secondary or foreground, background, whatever, and still leaving the ability to customize it. Have that filter, you know, let's add that filter. Or if you have more than say four colors, you can call them whatever you want.

Or maybe there's a suggested naming variation or pattern that they can provide you with. But if you want to create things composable and interchangeable, you need consistency. You do need that. And we don't have that.

I even just the best practice of like five colors, you know, I think it's like once you get to like the tertiary color, you never know if it's going to be like a good contrast with the primary like, and at that point, you do really have to pay attention because that's where you get accessibility issues like oh, our tertiary was dark, but ours was light, you know, these sorts of things.

But like, five standard colors or whatever, you know, that would be nice. All that sort of stuff. It would have made my life easier switching themes and stuff like that. But at the end of the day, like the fact that when I did switch the theme, I could just go into my one old copy and select all the HTML of my template, command C, go to my new one, command paste.

And it's immediately there. Like


Very cool, like very cool like really underrated how nice it is that at least the structure of the HTML is composable in the sense that like, I could literally, I could look at somebody else's site and be like, give me your HTML so I can make my landing page look like yours.

And it would all work perfectly, except

Yeah, almost, but yeah,

the colors wouldn't work

exactly, and the fonts, and oh, if they have their spacing done differently with different spacing names, or their margin names, or their, yeah, or their font size names. There's still, like I said, like when, if it's design tokens and they're not consistent, it's not composable, and therefore that part of it becomes useless.

The semantic composability is amazing. The blocker, the fact that it can do that, it's awesome. I love, I think that the example you just used, Illustrated, is perfect. But, you know, give me your HTML and I'm going to, I'm going to do it too. But,

I have a bunch of classes that don't work now in it. A bunch of padding classes all through my site. Everything has these padding classes that don't do anything.

exactly, exactly. And, and that's, now, now you have bloat. You have like shortcode level bloat in some places. I, I imagine with all these classes and then you're going to change it and it's going to add those classes and it's just,


yeah. Yeah

font library.


We feel, I feel good about it. I'm glad it's making it. I'm glad they made it work in the last mile. I think, I think fonts, it's like one of the last like big things. For the site editor, other than like UX, like, yeah, you, there's definitely UX issues, but like feature wise, this is, I mean, I have literal projects where this and synced patterns, which are not coming separate conversation were like the two most outstanding features that I, I was waiting for.

Yeah, I agree. I'm glad that for what it's worth It's nice that when it has come out it has come out with thought I am very comfortable and I want to encourage the idea that if something doesn't feel quite right and it still needs more thought We punt it We don't just add it for the sake of adding it because now you have backwards compatibility Issues and things and it's all so much more worth it It's so much worse.

So thinking about things and adding things to core thoughtfully, which is not what they have done with experimental features in block editor, which is a whole other thing. But thinking about things thoughtfully is a really good thing. So it's okay that it took six versions for this to become a thing.

I'm comfortable because we have something here that is really nice now. Yeah.

Yeah, and while there are UX, like nitpicks, like the placement of the update button and stuff at the end of the day, like, we can all start using this and feel a lot more safe, whereas that synced patterns that got punted, like, I think, Needed to be. And the other features in 6. 5 are under the hood a little bit more and are barely starting to get exposed, like interactivity API, block bindings, API, block hooks.

So all those are really standout features. You're just not really going to see them like in this release because they're, they're, they're being properly. Handled. Marinated.

totally. Yeah, well, I'm really excited. Thanks for walking us through it. And if y'all think of, you know, other things you want to see in the font library, put us in the comments or put it on Twitter because someone's want to see it. Put it in Slack as per that one Tavern post from Brian and

Oh yeah, but

your feedback where it's going to matter.


Yeah, I mean, there's people that can help you direct feedback. If you have feedback, reach out to us and we can help you direct your feedback constructively. Something I'm learning about.

All right. Well, I'll see you for the next episode, Brian.

See you there.

Visit viewSource.Fm for the show notes and if you're enjoying the show, we would love a review on iTunes or a comment on YouTube.

Creators and Guests

Aurooba Ahmed
Aurooba Ahmed
(she/her) Developer building bespoke #WordPress solutions, tools, and blocks. My name is pronounced "oo-ROO-ba" — Default to kindness, folks.
Brian Coords
Brian Coords
WordPress developer and writer blah blah
Font Library in WordPress 6.5
Broadcast by