 Hello everybody, I was trying to think of a different way to start there because I always started all right, we are recording and I didn't want to do that this time. So welcome everybody who is joining us here today. As you join, please let us know in the chat where you're joining us from I'm always interested to know where folks around the world are joining these sessions. While you're doing that I'll introduce myself. My name is Jonathan. I live in Cape Town in South Africa. I am a developer educator at Automatic and I am sponsored to work with the training team. And the training team are the folks that monitor, manage, curate and update everything at learn.wordpress.org. It's the sort of official WordPress learning resource. And some of you may have come across this online workshop through Learn WordPress. So we have, and I apologize if I pronounce anybody's names incorrectly, but we have Lassa from Copenhagen in Denmark. Welcome. We have Jean from New Jersey. We have James from Boston, Arthur from Frankfurt, Germany. James Boston, Massachusetts, the state's not Boston anywhere else. Jean, I was in your town not so long ago when I flew or you're not your town but your state I think is the right way to when I flew back from from the US my my trip to Cape Town was from New York Airport. So I wasn't in the town I guess I just in the airport for a couple hours but at least I know where that is more or less. We've got Saban from India. Welcome. Mark from Issaquah, Washington. Welcome. Great to see everybody. I am going to mention this up front. For those of you who might not know, I did enter my back yesterday. It's one of the reasons why I had to move the workshop from yesterday. And I'm currently on muscle relaxants. And they have definitely had an effect on my ability to do things normally. So you're probably finding my my camera is freezing now I'm just adjusting something that I should have adjusted earlier. So it does mean that my brain is not fully working the way it should. And so I apologize if I fumble today more than normal. As it is before the station started I opened the wrong zoom window the wrong zoom meeting and I only realized two minutes before we got started so I would just like to apologize for that in advance. Hey agent from California listening and picking tomatoes awesome. Cynthia. Hi Cynthia from Ontario. And Jean says there are a lot of people in New Jersey Airport does not give us justice I'm sure there are some pretty spots here. Yes it would have been interesting to to go around and see things but it was one of those flying hang around for a couple hours and fly out situations. All right. Today we are going to be focusing the topic title at least for today is what's new for developers. And you may remember if you have seen let me just find that original article. I have seen the the meetup description for the session. This is specifically using the what's new for developers August 2023 blog post on the developer blog at developer wordpress.org slash news. Justin Tadlock I'm sure many of you know he used to write for WP Tavern. He's now a colleague at automatic. He writes this what's new for developers post every month. And for us to once this post is live to sort of go through and pick through a few items and see how they work so we're not going to be covering everything in this blog post today. We will cover some of the more specific items specifically related to the more plugin developers because there's quite a lot to go through in that article. And I don't want to take up too long to go through it. But before we get going, let's just get the announcements out of the way. So again welcome everybody. And thank you to Tracy who is co hosting with me today. Please let me know if you can't see this announcement slide on your on your screen now you should be able to see that I shared the announcement slide. If you can't see the slide or if you can't see any anything that I'm presenting. Please let me know and I will reinitialize the screen share. We should be are presenting in focus mode. Yes, we are. And that is just the way we prevent any possible zoom bombing that may or may not happen. And that means that I can see your video screens Tracy can see your video screens you can see ours but you can't see each other. And so we do that as I say just to just to protect everybody from any possible zoom moments. You are as always welcome to ask questions this is very much not a typical let's code Thursday session in fact it's on Friday first of all, and I'm going to be writing some code but it's not really usable code it's more just example code so you can use it as a local environment if you don't want to for this one if you want to play around with some of the things that I'm that I'm showing you you're more than welcome to. But at any point in time you're welcome to ask questions, and either post them in the chat or unmute your mic and ask questions that way. James, you were asking about the slides I have shared the slides in the meetup event. So let me just get that for you. Here is the link or it should be there did I did I shared yes I did there we go. That link, and I'll post it in the chat for you and you can get it from there. All right. And then just a few things. Maybe I should say if I'm going to slow today or if I if I'm if I'm confusing today please let me know but if I do speak too fast or I'm rushing through things too quickly. Please do let me know. And I will as always be posting this to WordPress TV afterwards I probably won't post it tomorrow because tomorrow Saturday. So I'll probably get it up live. Sometimes in the course of the day on Monday. And then for more educational content you can find all our tutorials and courses at learn.wordpress.org. And all of the developer blog posts you can find at developer.wordpress.news sorry.org forward slash news. All right. Are there any other questions about anything before we get going I'm going to have my usual sort of coffee to remind myself to slow down. And then we can get into things. One interesting little side note those of you who have joined my sessions my Thursday sessions regularly. You will know that I sometimes complain about the zoom controls that pop up over my screen. I discovered today for the first time after doing this for mostly over a year that I can drag them off my main screen onto my side screen on my laptop monitor. Meaning they don't get in my way. So this is going to be a first for me. I'm not going to have things bothering me on screen like I normally do. Okay, let's get going. So as I was saying we're looking at the watch new for developers blog before we do that though I wanted to share this little interesting thing. I'm looking through so I'm going to be using my PHP store instance today for any code that I might write just because I'm more comfortable with PHP PHP storm. And I remember that WordPress ships with a read me dot HTML file. And I, I just wanted to have a bit of a call back to that so on any WordPress site there should be this read me dot HTML unless you're on a hosting environment that takes it off. And you can browse to this read me dot HTML at whatever the root URL is and then just add read me dot HTML. And I thought it was just a cool little throwback to where we use the ways we used to communicate with developers and users over the years. So I just wanted to share that little piece of information with you. All right, let's get on to why we're really here. Okay, so we're going to start by focusing I want to focus on the things that are available in WordPress core. If you read through this blog post, you will see that Justin mentions some things that are specific to WordPress 6.3. And then he also talks about I'm going to scroll down a little bit here. He talks about some things that have been added in the Gutenberg plugin specifically. So I'm going to focus on the things that are available in WordPress core first. And then I'll, then I'll enable the Gutenberg plugin and go through some of the things that are currently available in the Gutenberg plugin. But all of it should be coming to call because I think it's a good way to kind of look to look ahead and see what improvements are coming along. So at the moment, this is my current WordPress site. I've switched to one of the style variations of the 2023 three theme. I hope that this is clear and legible and everybody can read this effort effort effort. If you can't let me know, and I'll change the style. And in my local environment, I have the Gutenberg plugin installed, but not active. I'm actually just deactivate that. That's from a previous workshop. And then so I do have Gutenberg installed, but not active. And then for for my theme, as I mentioned, I currently have 2023 enabled, but I'm using one of the styles that ships with 2023. All right. So the first thing that I want to mention is NQ block editor assets versus NQ block assets. So this one is very specific to mostly plugin developers. If you're developing block plugins, in other words, plugins that contain blocks, there was an update to let me just find what I'm looking for. It's right down the bottom here somewhere. Is it? No. I thought I had there we go. In WordPress 6.3, the post editor content is in an iframe. So I didn't know this until I did read through this post, but let's go into the dashboard of my site here and let's edit the site. And what they're talking about is this area here in the template editor, for example, this is actually sitting in an iframe now. If I inspect this in my, you'll see I actually says the reload frame because it picks up this is an iframe. And if you inspect it, you can see in the DevTools inspector, if I scroll, there it is. There's the iframe there and there. And I think it is useful and interesting to understand why this is done. And also what it means if you're using certain hooks. So something that I recommend looking out for is there usually is on the make call blog. There usually is a miscellaneous editor changes in WordPress, whatever version that gets posted before the new release. And this was the one for 6.3. So this is another one that I recommend going and reading after the session. But the first one they talk about is the fact that the post editors iframe. And there is a article here, which I also recommend reading that explains why this was done. And essentially, this is to allow the styles that are applied to the admin interface, don't affect the editor content. They don't have to do things like fake media queries. Basically, it improves the user experience of working with the editor. And so the point that was brought up with this change was that originally folks were using this hook NQ block assets. So let me show you that one. So we'll get that one first. So I'm just going to search for NQ block assets. And then I'm also going to search for NQ block editor assets. So that's fine. That one. There's block assets and then block editor assets. There it is over there. And you'll see in the article, Justin says, if you're using the NQ block editor assets hooks to NQ a script or style that specifically targets the content canvas. That's sort of the exception. So the point that is made there is that if you are using. Let me just find the chair. There was in the miscellaneous. It's also worth noting that NQ block editor assets should not be used to add style sheets for the editor content. Please use NQ block assets for that. Now, if you have developed plugins before and you're using something like the create block package to scaffold your block plugin, then you should be fine. If you have used this NQ block assets hook before to apply styles specifically to the editor content, you should update it to use NQ block assets. So let me share those two with you in the chat. So if you were using NQ block editor assets, that's the one that you may have been using in the past. It is now recommended to use me just check myself here NQ block assets. That's the one over there. So that I thought is worth knowing I haven't developed blocks in a while, but I do remember that when I was developing blocks, I had used create block theme. And so I didn't have to go make any changes to blocks that I'd worked on. But that's more of a sort of a deprecation if you will type of update. So that was the first one that I thought was was interesting. The next one, which I'm actually surprised hasn't come to WordPress yet, but is now available in WordPress is the fact that it now has something called development mode. And development mode currently only does one or two small things. But basically you can configure this new constant in your WP configure wherever you're you're configuring constants. And you can then specify that this is a development site. And the possible options you have is maybe you're working on a core product. So you're working on WordPress core and you want to switch to that. That's a version you're developing for a plugin developing for a theme. You want all three or you don't want any development mode set. Now what interests me about this is that currently, the main usage for development mode relates to theme JSON in a block theme. And it says on most sites, certain caching data from certain data from theme JSON, sorry, caching certain data from theme JSON is reliable since that data would only be invalidated when the theme is updated. However, if you're actively developing a theme on the site and modifying theme JSON constantly, having to manually invalidate the cache all the time would be detrimental. So this is very similar to the script debug constant. If you don't know about that one, that is a constant that allows you to, let me find a check quickly, allows you to sort of switch all of the WordPress scripts that are minified to the original and minified version. Let me just get this open here quickly. I think it's under WP is that one, I think. And yeah, it's under debugging in WordPress. So my internet seems to be not redirected me to the wrong place. So it's this constant script debug and it forces WordPress to use the dev versions of core Java script and CSS files. So essentially right now, the, the development mode, if you're setting it to a theme will then will then not cash the theme JSON so you can make changes to your theme, just hit refresh on the page. Those of you who may have attended some of my block theme development workshops, I always use that hard refresh option. This should prevent me from having to do that. And so basically it's just a case of going into your WP config or wherever else you define your constants. It's usually towards the bottom of that file. There's WP debug. And so you can just take this WP development mode. And you can turn it on by saying something like define actually something like exactly like to find WP debug mode. And then for example, you could say theme. Now WordPress will know that we're developing a theme and not cash any of those theme JSON changes. So I thought that's a cool developer focused feature. I like the fact that now that it exists, we can start adding developer specific things for core development for plugin development for theme development. So it might be useful for, you know, those of you who might remember doing things like in queuing your JavaScript, and then having to pass in a timestamp as the version number, so that the cash was best every time you refresh your page or those kind of things. So I like the fact that this exists and that it can be used. I do recommend reading through this article in more detail. It gives you all kinds of useful information. And I'm quite excited about this change personally. I know it's a small change. It doesn't do that much, but it's quite exciting. All right, the next one, if we go back to I'm going to close some of these windows down because otherwise I get myself lost. If we go back to the what's new for developers and if we scroll, which one was it I wanted to do. Oh yes, the global styles revisions. I just want to find where that is, I think. Yeah, I think there is a was it was rest API updates. There we go. Okay. The rest API has a new endpoint for global style revisions, which is a feature that ship with version 6.3 and you can get to it by using this endpoint. I made this I didn't quite know what it meant. And that's one of the reasons why my my current theme is using one of the styles because I figured well it's got something to do with styles I went in and I changed my style and I didn't see anything and then I saw this little last modified a day ago button button at the bottom here. And I noticed that if you click on that takes you here and it shows that there are revisions to the style so effectively what I did was I changed some text or something like that I basically went into the styles interface for this theme. And I went into, for example, let's say colors. And I change maybe the background to a maybe a different color there. Hopefully that's still be able to everybody. And then I save that change and I made a few, a few changes like that. And I noticed that when I do that then you have these revisions in your revision history. So this is obviously something that's been added to the editor the fact that you can have style revisions. I think that's quite cool. I personally haven't used it myself yet, but I think that's quite a cool feature. And so what this endpoint does is it actually allows you to query those style revisions via the rest API. Now, the first thing that I did when I was when I was filling this was okay fine, but how do I know what revision I'm working with you. And they don't show you the ID so the endpoint requires the revision ID. And for those who don't know the style revisions I'm going to pop over to my PHP my admin install here quickly and just log in. Just like the templates and template parts are stored in the post table as a custom post type. So are the style revisions. So if I jump right to the end there they are. So here are the last four custom styles stored in the post table you'll see there is the current one, and then there is revision one revision version one version one version one. So these are the four revisions that are being displayed for versions of the style, I should say that are being displayed when this list comes up. So the endpoint needs to have first of all the ID. So in this case it's ID 16 so I checked that by which is the the current one with a proper post name so that's the one that WordPress is is using you can see it's also published it's not inherited. And that is ID 16. And so I took that URL this one that I'm showing you here I'm going to copy this out now. I opened up my my learn process site to access the rest API. And then I pasted the WP JSON data to the URL. And then I changed the ID to ID 16. And no not that sorry. I don't know why I did that. That I know I did because for some reason to remove the slush and let's do that again. There we go. And then I saw oh you're not allowed to review this religion for the revision for the global style. So basically that's an authentication thing so you need to be an authenticated user, which makes sense because you don't want somebody externally to be able to use the rest API and just see what you're doing with your theme. So what I then did was I popped on over to my users. And if you don't know this by default WordPress supports a functionality where for each user, you can add application passwords. And I use this specifically for when I want to create rest API application access for testing or development. So I created this rest API application password. I opened up postman which is my API testing tool. And if you want to see that in action you can go to learn WordPress and there are some tutorials about the rest API that I that I created a while ago that show you how to use postman. And here is the URL that I'm requesting so learn press test and then WP JSON WP V2 global styles ID 16 I want to get the revisions. And then under authorization I just selected basic or put in my username and my application password. This is only an application password for my local WordPress install so nobody would be able to use this externally to hack any of my content. And then when I sorry I see postman is not on screen property. When I sent that request then I got some results. And you'll see here here all the style changes and things. So that's interesting I thought that was interesting changes has been made. Probably not something that I would use every day, unless I was developing some way to query the stars and show them somewhere else in the site. But I'm pretty sure that the block editor or the site editor is probably using that rest API endpoint. And I always find these things interesting to to know about so I'm just telling my phone off so it doesn't beep at us again. I always find these things interesting to know about in case it might become useful one day. So that was an interesting change. And then the last one that was interesting to me was this WP get remote theme patterns now. I actually chatted to Justin about this just before this workshop. So I want to see if that conversation has borne fruit and bear with me while I am a bit cryptic. It has excellent. So the original version of this article referred to the WP get remote theme patterns function. But that's been renamed since this article was written so Justin wrote Justin tends to write these articles well before 6.3 is released. And when 6.3 was released that function was changed. And so basically what that function does is if you are defining patterns in your in your theme.json you can query those patterns. So let me show you what I mean by that in my themes json go here to 2023 going to go to my theme json folder. And what I'm going to just do as well as I'm going to minify all of these top level items or just collapse them so we can easily see what's going on. So the top level we have schema version custom templates setting styles and template parts. What we don't have is registering of the patterns now we do have the patterns here in the, in the directory, the patterns directory, but what you can also do is you can register those patterns in your theme json. And I'm pretty sure it's something like I can't remember what it is now so let me go and check on the schema. So patterns, there it is, an array of patterns likes to be registered from the pattern directory. It's an array items, and then type. So it would be something like let's have a look here. So patterns, wondering if it needs to be, let's go back one step I haven't coded patterns in a while so bear with me here. No, it's not picking something up there. Trying to think maybe 2022 has patterns registered let's have a look. No, just in parts 2021 maybe. No, no patterns there. I haven't registered patterns in such a long time. So it's patterns and then it's probably let me just go back to the schema type of an array of items. So it's just strings. Okay, so it's just a list of strings. So then we could say, for example, the first pattern is called to action. And the second pattern is footer default. That's just giving me an error for some reason probably because expected. Clearly coding this wrong. Let's go and let's go and do some digging into how patterns work in theme JSON. So that's basic as block patterns. Wonder if it's actually actually not sure myself. Very quickly scrolling through here. That didn't actually talk about it here. Anyway, at the moment because I don't have any patterns enabled it's probably not going to return any information. So I'm just going to do that for now. And then if you call that, that function that was mentioned, where is that. It will be themed directly pattern slugs. Then it will return that array of slugs to your to your to your request. There we go. There's an example patterns partner logos. There's an example. I knew I had one somewhere just couldn't remember. So let's do this patterns partner logos. So let's change that to call to action. Call to action. Still giving me an error. Because I haven't done the next one. That's why for to default. For example, there we go. So there my patterns are set up. So that's the array of patterns in the list. Interesting to note, you don't need to specify these patterns if you're adding them to a block theme. So I'm not quite sure what the usage of this is. I should go and dig and find out why you might want to register them there. But the long and the short of it is if I now go into my WordPress site. And what I'm going to do is I'm going to switch to the site and run WP shell, which is a WP CLI command that allows me to just run any kind of arbitrary code on my PHP instance. So there we are there. And then I'm just going to do something like patterns. And I'm going to call that function. Let's find a check quickly. WP get theme directory pattern slugs. There we go. And it's called that. And you'll see it returns the call to action and the photo default. Justin does mention that you can. So I think it's got to do with when you import patterns from the pattern directory, which I've never done. So that's probably why that function would be useful. But yeah, that was another developer focusing. So if you work with patterns might be useful for you to know about that one. All right. That one took a bit longer than I planned because I thought it would be easier to get some patterns returned. But those are the specifically the WordPress 6.3 core changes that have come through that I thought were interesting. There are a few more in the post. But now what I'd like to do is first take a quick break, check if there are any questions and then switch over to anything specific that I thought was interesting on the Gutenberg plugin. And they were these four items that I thought were quite interesting. So we'll run through them. Okay. So the first one is the one again I'm going to close down some some tabs. There we go. The first one that I thought was interesting was the extendable media insert. So to understand what that was doing, I had to go and dive into my editor. So I'm going to close this down and I'm going to open up my list view. No, not my list of you. Sorry, my, my insert my block insert a button. And I don't know if you see it on your screen. I'm going to go back a step. And hopefully you will see it as well. So let's go back to editor. And let's go to let's say one of the templates. Okay, that'll take us straight into editing. Perfect. And if we now when I click plus what happens when the block insert comes up patterns blocks and then media pops in there. So media is obviously something that's been added newly to WordPress probably in 6.3 maybe in 6.2. When you click on that it gives you the option to add images from open verse. Now if you don't know open verse, let's actually go there. Not that one, this one is a project that the WordPress foundation, I think it was sort of started merging and creating recently. It's a search engine for openly licensed media. And it was built off of something else that I think the sort of WordPress community took over. But what you can do is you can from your from your editor. You can search open verse for content. So in this case, let's search for a computer. And it'll go and we'll go and search for images that have to do with the computer. And what's nice about this is open verse is media is openly live so it's open source just as WordPress is open source. So you are you are allowed to use any of these images in your content, which I think is great. I've used things like pixels and pixel pixel Bay or something others, you know, these sort of free ways to add images. But I think this is really, really cool that you can do this, you can just add the image straight from here. And so what what this update does this extendable media insert is it allows plugin developers to add their own media insert options, which I thought was really, really cool. Now, I didn't have time to code up a full example, because I'd have to go and do some research on rest APIs and all that kind of thing. But fortunately for us, the, the dev note that, or at least the issue that opened up this example that where it was merged, they include some example code. And this is essentially if you have a look at it, I'm going to copy it out, and I'm going to pop it into my into my editor so we can see it a bit better. And then we're going to use it. I actually got it ready. Let me paste it again. So what this is essentially doing is it's it's basically this is the open verse in implementation. So this is what's being used when the editor loads to implement the open verse media category to be able to insert things from open verse, and you'll see it does a few things. It creates a query to the open verse API, and then returns the responses for that search that I just did. So Cynthia mentioned 6.2 as an open verse to that is correct. Well, at least as far as I know it has been around for a while I don't think it's just been recently added to WordPress and 6.3 so it has been around for a while. But now what plugin developers can do is they can take this code and they can extend it for themselves. Let's say I have my own open verse type setup or I have my own resource for registering media that folks want to use. I can use this code and that's where I just had the new media option that I showed you earlier. So I'm just going to call it new media here and search new media and then obviously the fetching of the data would be some other API but I'm going to leave it as open verse right now. And I can use this code in a plug it. What I am going to do for testing purposes now is I'm going to use this code in the in the developer tools and actually see it happen live on the screen. So if you have if you want to do this along with me more than welcome to but if you go to your editor. And if you open up the media that the block insert a button to open up this list or anywhere where you're inserting blocks that has this media tab. And then you open up your your dev tools. You can go to the console and you can then paste this code and I'm going to share the original snippets that tick you that tick you the ticket that has the snippet in case you want to play with this. And then using the new media option that I added there, I can now run this code. And if we watch on the might not see it now so let's open up media. If I run this code. Read again. Thank you. Sorry. Sorry. Let's go back one step. This is available with a Gutenberg plugin activated. So I should have done that first. So thank you pain killers for not reminding me to do that. So let's go enable Gutenberg. It's currently 6.4. So there it's enabled. Let's go back. We'll leave that code there in a browser will refresh this. I probably have to paste that code again. So it takes a little bit longer to load now because it's more stuff happening with Gutenberg. But if we open that up and pop open the media category and then no, not that code. I've already copied something else out. So let's grab this and pop it back here. And let's run that and you'll see there's the new media category. So obviously when I do a search on it now it's going to search open verse because I've left the API stuff in place. But that's a cool thing for me that you can do that on the media. So if you're somebody who has you want to give your client access to a specific media library that they're paying for within their environment. You can code up something that will allow them to do that. Or if you host your own media library in an audio video, whatever the case may be, you can use that code to implement that in the block editor. So that was really I thought a really cool little find and interesting bit of extensibility. It also shows us how to extend things using specific here this register and certain media category is specifically used to extend the block editor like this. So, and this is because obviously it's JavaScript so it has to run when the JavaScript load so that one I thought was interesting and fun to look at. The other one was vertical text orientations support. So this is one let's find that one here to write below here. This is one where basically you can enable vertical text on screen and the text will appear vertically like this. You do it in your theme.json. You just need to set the settings topography writing mode setting to true. And then the changes will take place. So let's go and do that now let me close this down. Let's go back and find a page that has some. Let's find a template that has some text content on it maybe index no index is on a great option. Let's try page. Single post probably a good one. Yeah, there we go. Single post has got some content. If I now and here's where I could be clever, or at least I should be clever is I should enable theme development mode which I've done. And that means that any changes I make to theme JSON shouldn't be cashed, which is great. So if I go into my theme JSON and I look for which one was it settings topography writing mode. Okay, let's go and find that. So there, let's get rid of the patterns. We don't need the patterns anymore. So let's go to settings. And let's find topography. There it is. And there's writing mode. I've already said it's a true. So it's already enabled on the site. So that's fine. And now if we go back and we go and edit something that has text, I think this will just work here. So let's try it. So that is post content. Now he's been a paragraph. So let's add a paragraph. So let's add insert after and let's pop in some text here. And if you have a look at the topography options for this paragraph, you will see that there is an option to add text orientation. To your sidebar. And when I do that, there are the text orientation settings. And if I now change this, we should see that text goes sideways. There it is. So if you need to orient your text in a different way, these changes are coming. My guess would be at some point you'll be able to actually apply maybe a percentage value or a numerical value to this orientation. So I'd like to do it at whatever angle you want. So I thought that was quite interesting that this is coming. I can't think of any use cases for it for myself right now, but I think it's a fun one to play with and use. Let's actually center align this so that we can actually see it happening a bit better on screen. There we go. Oh, it actually goes all the way over. Maybe we need to center align it again. Oh, it looks like we may have found a bug. I wonder if that's supposed to happen. If you center align it, should it move? Maybe not because it's inside of a paragraph. That's interesting. We probably need to put it inside a group and then center it in the group or center the group. That would make more sense. Anyway, so that's a new feature that's been added to WordPress in the Gutenberg plugin specifically coming soon to WordPress. Okay. The next one that I thought was interesting was there's a new progress bar component. I haven't I don't have an example of this. But basically it says Gutenberg 6.4 has a new progress bar component that lets you show progress to a user in a variety of scenarios. I think in the ticket, they actually have some examples that they show. Yeah, here's a screen recording. So it shows it's actually played this one quickly. You see it's loading this kind of progress bar. And I guess there's various things you can do with it, sort of your, you know, your loading type screen you can do with it. So that's an interesting component that's been added. I thought that was that was very interesting. And then finally, the big one that I thought that I'm really looking forward to is. If you don't know, there is a proposal or there's a project underway to add something called the interactivity API. Now the interactivity API is a way to allow developers a better experience when they're building interactive blocks. And I don't want to get too much into the details of this. But if you have a look at this demo, you can see you can see what it does. I'm going to use it to make this large. And hopefully, I don't think it's going to actually play the audio for you. Actually, no, I think I can share my is a way to share my audio. Somebody told me this a while ago. And if anybody can remember, please let me know, but there is a way to share my audio. To select the screen to be shared, there are two checkboxes in the bottom left. Yes, I just found now share computer sound. Just found it. There we go. So hopefully you'll hear this. Let me let me my volume is quite high. So I'm going to put in about halfway. And this is this is what the interactivity API allows. Let's take a look at some of the experiences that you can create easily thanks to interactivity API. You can navigate to the next page of the movie results without doing a full page reload. Each movie has a like button that synchronizes with this other block over here in the header so that whenever you like a movie, the number of likes is updated automatically in both places. When you navigate to the individual movie page, you see that the likes are still preserved. You can even play the movie trailer and the trailer will keep playing as you navigate around the site. Okay, so so that's kind of some of the stuff that's coming into WordPress. I like what it enables. I like the fact that it enables you to build these more interactive front ends using blocks. I do recommend I don't want to play the whole video now because I want everybody to sort of go and read the article themselves. There is a live site that you can demo, which is basically the site that that chap spoke about. And so this is all built on top of WordPress using the interactivity API. And so the reason this is this is interesting is because where is it now? Let me just find it here we go. This is something that is sort of slowly coming to WordPress. You will see that currently they've they've added 6.3 16.3 is added runtime support for a style core directive. There's a new Gutenberg block should use interactivity API filter hook. And then the create block plugin is added a template, which allows you to scaffold a block very quickly using custom interactive blocks. So I would like to encourage you I'm not going to do it now because it takes a while to get that all up and running and going. I would like to encourage you to consider using create block to scaffold yourself a new block using the interactivity template. The way it works is you let me share two things with you. So the first thing you need is just to have your your local site setup for using it. I did a tutorial. Yes, I'm referring to my own material here. I did a tutorial on the create block package. Let me just find it quickly. No, that's not where I want to be. Sorry, folks, one sec. I want to be searching in learn WordPress. There we go. Create block. There we go. Create block theme. So there's two tutorials you can create block tool. Sorry, not create block theme. There's two things with a similar name. So create block. The create block tool is this tool you can run from your command line and it'll scaffold a new block for you. And now that there is this interactive template, when you're scaffolding your block, you can pass it this template dash dash template creates block interactive templates. And the plugin that it will scaffold for you will use an interactive block. Now you might remember when we were looking at. Let me go back to my plugins. There was that plugin that I deactivated. That was a plugin that I very quickly spun up to use the interactive block with interactivity API. So let's activate that. I have no idea what this is going to do. I literally just spun it up and let it do its thing. I may need to actually run something to get it to work. So let me just go and find that plugin. WP learn. Where are we now? Run learn press. Make sure it's the right one. Yeah, it's called learn to do interactive block. It looks like the build has been built. So we should be able to use it. So let's see what this does when we go and add this to a post or a page. Let's go to hello world. And I don't know what to expect. So let me see what the plugin might be called. It's in the package. Here we go. WP learn to do. There it is. So let's add that. I don't know what it's done actually. I don't know if it has done anything. That's the same. Let me just check in this. There's the render. Okay. I don't think it actually does anything. It doesn't create anything for us that we can actually see. I might need to do some reading. But anyway, this is scaffolded with the template being used. I haven't dived into it yet. So I'm not sure what it would do. But the same says, this is basically making child theme pieces. That's the challenge I'm facing. I'd like to know how to spin off a child theme from one of the standard WP themes or any other theme for that matter. I would say, no, I don't think child themes are, I don't think it's making pieces of child themes. If you, if you want to know, so if you were looking for tools around child theming this two things you can use. Create block theme will allow you to create a child theme of your, of your parent theme. But I think that's only if it's a block theme. I, there are a couple of plugins in the theme repository and the plugin repository for creating child themes. But if you're working with, with block themes, you can use create block theme to generate child themes. So I hope that answers your question. This is more for this interactivity API is more for allowing you to build things that can interact with the database, saving and storing data without having to refresh the page. So without having to essentially create custom rest API endpoints to query data Ajax endpoints to query data. There's basically there's ways that you can call things call data call metadata all those things and just have it come back to you on the front end to be able to use it. So it's still something that's being developed still not something that's 100% stable yet. But I do suggest checking it out if this kind of thing is interesting to you. And maybe checking out the template on create block theme. All right. That's all that I have planned for today. So I hope some at least one of those new features was interesting to you. If you have any questions around this or anything else. My two recommendations would be number one do reach out to Justin. The author I've lost that post now. Where's it going? Oh, dear. We have to go find that again. What's new for developers. Do you reach out to Justin? If you have any questions around the content of this of this post, there's a whole bunch of interesting things in here. And also keep an eye on this developer blog because every month. Usually around the 10th of that month Justin will publish a what's new for developers for that month. And I find it personally to be a better way to keep up to date with the changes that are happening in WordPress call than to try and follow all the day of notes and all the updates and all that kind of thing. So, so I recommend and this is now me plugging the work of some of my colleagues who work on the blog, but I do recommend subscribing to the WordPress developer blog and keeping up to date on all of the news there. Great. Well, that is my bit for this Friday. I hope I didn't fumble it up too badly with my, my mixed words there. Thank you all so much for joining me next week Thursday we'll be going back to some common API is again. And then there's also on Wednesday there is part two of the contributing to learn WordPress code workshop if you want to join that. So, so keep an eye out on learn learn at WordPress.org and meetup.com for the updates around that. Otherwise, thank you all for joining me. I hope you have a wonderful Friday and enjoy the rest of your week and your weekend. Bye bye.