 Hello, my name is Marco Berrocal and as Michelle mentioned in the initially this morning, I'm the guy from Costa Rica. I'm the one who came as far from to be here. It's an honor. I'm really, really excited about it. I'm a WordPress developer. I worked both GreenGeeks, which is a hosting company, and I worked for the Boston Globe as a WordPress developer. So I participate in the community in Costa Rica, Meetups. I've been an organizer. I'm a huge WordPress fanatic and I absolutely love as you highlighted the whole community aspect of it, of helping each other out, of contributing, of, you know, making a life of what we give. So today I am going to share a little bit about the experiences on becoming a WordPress developer. I've been doing this for the past, I would say, 13, 14 years. And you know, what does WordPress bring to the ecosystem? What does it bring to the world? So first it's market share. It's a huge market, 40%, 45%, I think it stands, of all the websites out there use WordPress and that is a huge, huge, huge number. I'm going to have to use my glasses because I can't see the, I can't see anymore. Hold on. Yeah, I was going to look at the thing, but getting old. There you go. I can't look at my phone anymore. So I would say it's market share. Like I said, it's a 40%. It's entry level. One of the things that back then when I was developing, when I started to do, I got serious about this. One of the things I had to decide was which content management system to use. Back then it was in pretty much an option between Drupal or WordPress. And one of the things that swung, or I heavily leaned towards WordPress was the fact that, first of all, clients absolutely loved using the interface. They were like, oh, this is so simple. You know, it's like using Word, yada, yada, yada. And second were all the tutorials out there of how to use WordPress. It's still true today. There's a lot of help out there online that you can pretty much Google it and someone will give you an answer as to how to do things from a programmatic perspective. It's repository of stuff. With this, I mean the vast amount of plugins, themes, hacks, all that stuff is out there. It's very, it's very, very vast. And that always brings some troubles from time to time. You know, vulnerabilities with the platform, people might have an opinion about coding standards, about it being PHP, et cetera, et cetera. So I've come to the conclusion that there are four type of people out there who are working as WordPress developers. The first one, it's plugins. People who build plugins, be this for themselves, clients or for the whole world, same as with themes, theme development, core. We had a guy who spoke here today. His name is Jonathan, I think, from Bluehost. Yeah, he's a core contributor. He works directly with the project. And here I would like to quote my boss. It's people who like to configure WordPress. And those people may or may not code, but they do know how to use the dashboard. They do know their snippets of scripts here and there. But they're just not comfortable enough to fully start, you know, smashing that door or going through that gate where they become a fully fledged WordPress developer. So this talk is about pretty much any of these four. I try to simplify things as much as possible. Part of the things that I like to do when it comes to work camps, I like to teach basics. I like to teach fundamentals about WordPress development, because you never know what might stick to someone and what concepts will that person bring back home and apply it. And also, no matter how expertise you are, they might say, oh, I didn't know that. That's pretty cool. So what do I need to know in terms of technology? One of the barriers when I tell people that I am a WordPress developer, they tell me, but I'm not good at math. I'm like, what do you mean you're not good at math? Yeah, I see the code, and I see those numbers, and I see this, and I see that, and that's like, dude, man, just like you, I take out the calculator to have numbers up. I mean, it's not like I know formulas. What you're talking about is computational thinking. How do computers make, how do you change your mindset so that you can instruct a piece of software to make decisions? It's called computational thinking. It's an abstract way of thinking of solving problems that computers simply cannot do. And I always tell people an analogy of turning the lights off. For us humans, it's as simple as walking a straight line and hitting that switch, and the lights are off. But if you instruct that to a computer, you have to give computers a step-by-step instruction in order to do so. Like for example, walk until you reach a wall. Once a wall, stretch your hand. Once you stretch your hand, is there a light switch? Yes or no? No? Keep searching. Yes, pull the switch. Are the lights on or off? And so on and so forth. And that is exactly the mindset that you need to have in order to solve everyday problems. And I always notice that people go straight into a language. They go straight into learning any given language, computer language. And they don't think about the computational aspect of it. They don't think about the problem solving because you go straight into the language. And I sometimes feel that it's too much at once. And in university I took a course that it was just paper and pencil and you had to solve problems like this. Like the one I just gave you about the lights. But it could be about calculating an average of grades within 40 students. How would you instruct a computer to do that? And it introduced you to principles such as data. What type of data can a computer handle and whatnot? What is an integer? What is a number, a floating number? What is a string? What is an array? So I've always felt more in the camp of learning these basics in order to fully transition yourself to a computer language. Because what differentiates a computer language from the other it's pretty much the rules, the syntaxes. It's like speaking English versus Spanish. It's different syntaxes of saying things, of declaring things and it's the same with computer languages. Some people might lean towards JavaScript for example which is a computer language. Others might lean towards PHP, Ruby, so forth and so forth. But the computational thinking aspect of it will never change. This is the mindset that people tell you, oh it's like solving math, I'm not good with math. But it's really not. It's the logical thinking that will allow you to solve problems. And I think that's one of the beautiful aspects of being a developer. It's having that mindset, that logical mindset, that abstract way of thinking of solving everyday problems that I really, really like because there are 100 ways to solve a thing. I mean I could have asked you how would you turn the lights off and you would have told me a different answer or a different solution compared to what I have. And sometimes I could say, man your solution is good or your solution will fail if this and this will happen and that's why this career is so beautiful because it's comparing mindsets, it's comparing ways of solving problems that up to this date I still find fascinating. So if you're looking for courses out there try to find courses that involve algorithm exercises so that you can do more and more of these problems because they will also tell you about certain things about computers, about programming such as iterations, about loops, about functions and what they are. But when you're writing them on a piece of paper it's far better to learn as opposed to going straight into a code and saying, oh man I can't handle both the syntaxes and the logical aspect of it. And I think that's where most people get frustrated with it because I'm just not good enough for it and I would heavily disagree with that. It's just that you're doing too much at once like both the mindset and the language. So having said that, WordPress does use quite a few languages under the hood so it uses HTML, CSS, PHP, JavaScript and SQL. So all of them combine is how WordPress works. So when I make a request to a website and the server processes that information and it says, oh you're a WordPress website I'm going to use that URL to fetch a specific post from the database and I'm going to use the PHP logic, all that logic in order to retrieve the content of that post because in the end WordPress uses the database to store post information, options, categories, tags all that information is stored within the database. So in the life cycle of how WordPress works it boots and it starts sequentially doing things until it gets you all that information and it ships it back to you using HTML, CSS and PHP. So people ask me, so what should I do? Should I start with PHP? Should I start with JavaScript? I'm an old guy so I'll go with PHP for now. I've had some, over the past years I've had to transition more and more into JavaScript because of the block editor and because of how WordPress, yes. Yeah, just a comment on that. JavaScript is low barrier to entry in that you can do all your practice stuff just in a browser you don't have to worry about all the services. That's true. From that perspective I'd say start with JavaScript, but... Well, that's true. But when I started with WordPress it was mostly PHP and it was mostly CSS and it was HTML and JavaScript came later. And I had difficulties transitioning to JavaScript. I felt like I was writing, I don't know, like... It's rough. It was rough. I'm still not there but I'm working on it. So all of them combined is how WordPress works. So how much do I need to know about this? How many... It's until you feel more and more comfortable with it and I'm going to have to quote Steve Jobs on this. You're going to have to love this because if you don't love the coding aspect of it I just don't see it. And one of the things I love the most is not knowing. And one of my favorite philosophers of all time is Socrates and he once said, the only thing I know is that I know nothing, which is true. And I really don't know anything. And every day I have that mindset because that allows me to know more and more as the years go by. But I'm infinitely curious about how do things work. And I think that's part of the also mindset and that you're going to have to have in order to do that. I'll keep going back. What else? This is also about life. You're going to have to use blood, sweat, and tears. So you better get the yoga post right. There's a lot of times and trust me there's a lot of times when I don't have the answer to something. I just don't. And you get frustrated, you get angry, you don't talk to your significant other and she asks you what's wrong with you. Are you breaking up with me? You've seen the means. So they're all true. You're just thinking about the solution. You're just thinking about things you've tried. You've tried, you've tried. But in the end, and I will quote, and I'll give you another quote. It's called by Churchill and it's given by Churchill. And success is merely going from failure to failure without losing your enthusiasm. And you just got to keep going and keep on thinking and there will come a new way for you to solve it. It may work, it may not work. And trust me that when it works you feel like I still have that feeling today. When it truly works you feel fantastic because you felt like you've, I don't know, I'm not into climbing but I guess it feels like climbing a mountain, being at the summit and saying hey man, I made it. So you feel very satisfied with yourself because all of the effort, all of that thinking, researching, trying, discarding and having that code up and down and you don't even know what it looks like. But in the end it works. That's also one of the things that you got to have and you got to be persistent about and saying no matter what happens, I'm not going to give up. And I think that's also one of the key things of becoming, not just a workplace developer, I would say in anything in life, you got to persist, you can never give up and at the end of the clouds there is the sun. So you've got to have faith. And specifically what do I need to know about WordPress? So some say WordPress is a platform, others say it's a framework. Don't ask me which one I think. But what they all say is that it's a content management system and it is an event-driven software application. And I'd like to highlight this last part, that it is an event-driven application because that ties up with what Jonathan says this morning about hooks. When you go to the website, the WordPress websites, and it starts to boot, it starts to sequentially do things. And as it does, you can hook into those things and you can alter the behavior or the data or its data to your liking as a developer. And that is why WordPress is so powerful because it's a software application that as it runs, you can tap into it and you can do pretty much whatever you want without touching core. And that's why I love talks such as the one he gave because that's like an aha moment that I had as a developer because when I started, I mean, I'm not going to lie. I did like everybody. I just copied and pasted stuff in the functions file and it worked and I was like, yeah, man, this is the best. I love this. I'm getting, oh, WordPress is fantastic. This is awesome. But when I fully understood the whole aspect of it being an event driven software application where I can hook into these things and change the behavior, that's when, as the meme goes, that's when everything illuminated for me. I was like, oh, yes, it is. And from there on, I could fully have even more control as to what I could do or could not do as a developer. So plugins, as a developer, and I say this also to business owners, start using as little plugins as you can. People usually ask me, well, how much is enough? I can't give you a ballpark number, but when I go to a website and see a client and then when I see over 20, I start to worry a little bit about it because I'm like, okay, performance-wise, it could be a hit or it could be code that you don't really know what's in there. And if you want to start drawing as a developer, start making your own little plugins. It doesn't matter if it's something that it has already been made. I'll give you an example, like metadata or creating your own custom posts. Yeah, there are plugins that can do that, but you could also make your own little boilerplate plugin where you as a developer can configure that stuff and start making your own. And that way, you will have your own plugin with your own code, which it might be bad, it might be great, but it doesn't matter. It's yours and you will understand it, and as you get more and more clients, you will start to notice that you're going to start modifying that code to your own liking. So don't rely much on third-party plugins for some functionalities or try to not to rely much on that. I mean, I'm not going to tell you, do a backup plugin on your own. I mean, you did. That is how your own personal site ended up with 85 plugins. All right, to each his own. But, you know, making simple things like, you know, create your own categories or creating your own metadata or creating your own post types or having your own settings, you know, try not to rely on the plugins, on plugins built by others, but instead build your own, even if the process takes you a lot. You will also, like I said, you will find yourself using that code over and over again for different types of clients, and you will grow as a developer as you use it more and more, because you're never going to be satisfied with what you do. You're going to say, man, my code is horrible. I need to redo this. Or, man, I just saw a tutorial on Twitter that this guy is doing this, this, and that. I mean, I got to do this on my own. And that's how you get started. Same goes with themes. I don't know which talk it said. They asked, what theme do you use? And they were like, oh, I use this, but I've modified it to yada, yada, yada, yada. And that is exactly it. You're going to start with a boilerplate theme. I don't know which one. I mean, there are pros and cons to each, but what you will find, what will happen is that you will find yourself modifying that theme to your liking. You're going to modify it like, I don't need this. This theme should do that. This theme, I don't know, this part, you know, and before you know it, you start modifying it more and more. I started like that. And next thing I knew, I had a theme that did custom post types, that did metadata, that did tags, that did settings, all to my liking. All I had to do in the end was just configure arrays. Just configure a couple of objects and say, okay, this is going to be for my theme options. These are going to be for my settings. And everything, I had it under control, which brings me to the subject of the whole builder aspect of the talk that I saw today. Yes, with builders, you can give clients the ability to, they can do pretty much what they want. That is true. But when you develop, you can also control the theme to do exactly what you as a developer want. And you can limit the way the client interacts with them, because he said it. They only call me when it breaks. And I'm like, yeah, exactly. I don't want to recall when it breaks, because when you develop, you can disallow clients to even breaking it, because clients will be clients. It doesn't matter which part of the world we're in. Clients will always be clients, and clients will break things. Clients will break things. So when you start doing your own stuff, you can limit the way it behaves, and restrict clients from breaking your site or doing stuff that you as a developer definitely do not want to be called for. And I think that's a win-win situation. Documentation is your friend. I do have to say, WordPress has fantastic documentation. It's one of the best that I've dealt with, and I've dealt with quite a few bad ones. But these are the URLs. I'm not going to go over the documentation, of course. But I don't know, maybe Topher knows, why are we getting rid of Codex? I don't know either. I love the Codex as well. And I've even had a friend say, don't call it Codex. Call it developer resources. I'm like, man, I started with Codex. It will always be Codex for me. But the second one is like the new one, and the Codex is like the first one. And I heard through the grapevine that they're trying to migrate it from the first one to the second, but it hasn't really happened yet. So, you know, you can go. Yes? Yeah. Yeah. I don't know, but I still go to the Codex, and I still love it, and call me old, but it's Codex for me. So, use it. It's great documentation. It usually has examples by the community so that you can see it in action and see how it behaves. I would say you need to learn about the loop. The loop is the way WordPress fetches post for the type of page, for the type of the URL it's currently in. So, depending on what that address bar is, WordPress will infer what type of loop it needs to go over in order to fetch that post information. Once you are in the loop, you can obtain information about a post. What kind of information? Content, title, date, the offer, metadata, tags. Yeah. So, pretty much when you're in a loop, you can fetch all of that information and adjust it to your needs. So, it's important that you know what the loop is because you can have multiple loops within a page or you can have just one loop which is the way WordPress deals with it. One of the things I learned and I loved it was template hierarchy. How does WordPress know which files to load within your theme? The answer is template hierarchy. In that URL, it will explain what the hierarchy is and it has this beautiful graphic, well, it's not beautiful, but it's really useful, of how WordPress determines based on your theme architecture which file to load and why. And that was also an aha moment for me because when I discovered it, I said, well, now I can have a different design layout for a category versus the block post or I can have a different design for my taxonomies versus the block or even within the same categories. I could have a category called real estate which would have a different design versus a category of, let's say, sports. So as a developer, you have greater control as to how to make those layouts within HTML or CSS or even the data that you grab. So knowing about template hierarchy is really, really important. The WP query class is also important. The WP query class allows you to do custom loops how do I make a custom loop and what do you mean by a custom loop? Let's say, for example, I have a website that is about recipes and you have the recipes and they're all listed in a chronological order. So recipe one, two, three, blah, blah, blah, blah. And you're like Italian cuisine has the best click rate. They tell you from marketing, you got to put Italian cuisine posts at the end of those things. And you're like, how do I do that? And the answer is WP query class. That class would allow you to make a custom query based on the parameters that you as a developer want to set. So going back into this computational thinking is I am going to do, I'm going to fetch posts off a database that have the category of Italian within my recipes. So I'm only going to fetch posts that are Italian category. How many do I fetch? And published, of course, yeah, very important. That's true. See, that's also part of the computational thinking. He just said published. I assumed and I would have probably posted drafted had I not looked at that point he made. So do I want them to be random? Excuse me, Mr. Marketer, is there a metric that you have for me that I could say, oh, these are the posts that I need to publish? And he will say yes. Within each post there is like, I don't know, a counter. So that is metadata. That's information about a post and it's a number. Let's say it's a number. So high posts have this high number whereas articles that don't interest people have a lower number. So you can grab that metadata and say, okay, give me the five most recent posts that are of Italian category that are published and have this metadata, the highest metadata possible. So that way, after each recipe listing, you will have the top post. You will make the marketing guy happy and you have to think about all this, oh, what plugin can do this? What am I going to do? Because you can master the WP query class and you can make your own queries and get that information. Needless to say, this class also supports comments. I think it's also authors and I think metadata, isn't it? Yeah, so it's everything. It's so powerful that I've only used it for posts, to be honest with you. I've never used it for anything else. So it's something that you got to more or less understand in order to make your own custom queries. Wait, where am I? Custom post types and taxonomies. It's important that you know how to create your own. Like I said, it's a good starting point to make your own plugins. We always bump into clients that, you know, it's just not good enough what WordPress has out of the box. I mean, WordPress is a content management system and it has posts and pages and that's about it. But let's say you're working with this, I don't know, movie theater and you need to work with movies. So how do you solve that? Well, I can create a custom post type called movies and start displaying the information there. And you can have its own taxonomies, which is a fancy word for categories of tax. And you can have its own tax tied specifically to this type of post. So we can use genre. We can use actors. We can use directors. We can use, I don't know, yeah, that's about it. So you start to solve problems by using solutions that WordPress has to offer. So these two are URLs that you can consult in order to create your own. And again, I'm not going to get philosophical about the coding standards as to whether you should create your own plugin for that or that you can use your theme files in order to do so. It's really up to you. I used theme files for a lot of years before I started another job, where they forced me to use plugins and, you know, I swiftly adapted to that. Metadata. It's really important that you know, you understand the concept of metadata. So metadata, it's basically data about something. Most of the cases, it's going to be data about posts. And going back to the movie example, we could add a, let's get fancy here, let's get creative. We could add a year the movie was published. We could add a rating. Let's say it's, yeah? Languages. Languages, it supports. Release date. That's true. Languages, you could argue, no, no. It could be a category, a taxonomy. But it could be also metadata. You're right. So that information is information about a post. And you can have all sorts of type of data related to a post. So it's important that you understand how metadata works and you can create your own. Yes, I know advanced custom fields exist. Yes, I know it's really easy. You start creating your own little pieces of data. Even if it's a text string, it doesn't matter. You start to understand more and more as to how WordPress works. Metadata is not just related to posts. It can be added to authors. It can be added to comments. And it could be added technically to images because images are type of posts. If you ever get that interview, by the way, it's a type of post that comes out of the box. They asked me that question. They were like, name me five type of posts that come out of the box when WordPress is installed. And I'm like, yeah, blah, blah, blah, blah. And yeah, so images is one of them. It's called attachments. The settings API. The settings API is the options that you see when you either activate plugins or when you go to your dashboard and you see the settings, that little menu options that you see on the left, they're called the settings API. So you can have your own settings. You can have it for your theme. You can have it for your plugin. You could have it for whatever it is that you want. But the important aspect is that you more or less understand how can you implement one, even if it's just a text field. How can you sanitize that data? How can you display it? That sort of things. When I do client work, I usually put all the general information about a client as settings. So because clients want to modify, let's say we have a form and they have three fields and they want to customize the placeholder. So I use a settings, I use the settings API to use a panel specifically for the form so that the client can modify that. Because, like I said, comparing that to the builder, I do not want the client to go to the form, edit the form, and then mess up the form. And then say, oh, my form isn't working. What's going on? And I say, yeah, bro, you messed it up. Whereas if you go to the settings API, you had one job and that's it. Do that and modify it and be done and over with it. Actions and filters. I'm not going to go into detail a lot because Jonathan gave a great talk about that. Actions and filters are pretty much ways that you can change either behavior or data when it comes to WordPress and its booting sequence. This is the URL. They're called hooks, but there's two types of hooks. There's two flavors called action and filters. Actions modify behavior. So let's say, for example, a type of action that I can do. Oh, I could add a JavaScript file conditionally saying, I only want to add a JavaScript file if the category is real estate. So you use an action to hook into that and if the condition is met, you put the JavaScript. Because when I started, yeah, I grabbed the theme header, put the JavaScript and like, yeah, it's done. But as you grow and you mature, you're like, why am I serving this file to people who do not need to see it? I'm loading the theme more and more. Maybe I should load this file if the category or if I'm in a blog post or if I'm X, Y, Z, I should just load the file and not load it everywhere. And filters are, for example, if I need to modify something like, let's say, the post. Blocks, I mean, I can't avoid it. That's part of the reasons why I'm transitioning more and more into JavaScript. Extending existing blocks or create your own. It's been a challenge, but I'm working on it. I'm enjoying JavaScript more and more. Some of us developers get pretty protective or jealous about the technology stack that we use and we're afraid of what you said change. It's scary. It's letting go of what you knew, of all the things that you worked on for so many years and you've got to start all of a sudden doing something new. It's hard to let go, but it's also gratifying because you grow more and more even as you're letting go of all that that you loved and trashed for so many years and frustrated you. Blocks is one of those things. It has been one of those things for me. I'm getting more and more into it. I've waited a couple of years because when Matt said in Nashville okay, we're doing blocks now, it's coming. That was like a huge bomb and I felt like we got to wait for the debris, the dust to settle before we can have a positive or negative opinion about it. I have to say it's been really positive. I absolutely love the way WordPress is taking it to the future. Initially I was scared of it, but now I feel more confident about the change. I think the block editing experience is a huge opportunity for both developers, for people who are new to WordPress, for people who want to do websites out of the box. I say this from WordCamp to WordCamp, I go to, there's plenty of blanket for everybody. So we're all going to fit in, nobody's going to be left out and we just have to continue growing. A few more tips just to close. It's a little techie but it's basically like hitting an end point so that you can grab information. I'm not going to get into techie details. The WPCLI that was really important for me to know that's basically like a command line that allows you to fully administer a WordPress website. It's useful when you don't have the credentials to go into a site or the client doesn't even know what his WordPress login is. You don't know the email, he doesn't know the password, you don't know anything and he gives you a hosting access or something and the hosting happens to have WordPress. So you can go in via the command line and start administering the website, you can change the password, you can reset users, create your own or if you, yes? Exactly, exactly. If you have a problem, your website is down and you're like, holy crap, what's going on? You go in there, you disable the plugins and you stabilize the condition so that you can triage as to what's going on. So it's really, really useful to have that tool and know about it. Understand your DP. Now, I'm not going to tell you it's like, hey, you got to be a database administrator, blah, blah, blah. But understand tables, what WordPress uses out of the box, how do they work, what information does it store so that you can understand more and more the true inner workings of it. A workflow. I haven't discussed workflows, there's plenty of talks about that and in the end, I think workflows are like the way we dress. Everybody got their own way. Everybody got their own way. So I'm not going to say here, hey, my way is better, your way is worse. Everybody got their own way. Just make sure you have one. Make sure you don't go there. But with, you know, with just visual studio code and that's about it. Well, you can have sublime, but that's more or less my way of saying. Some people love local, others still use MAMP, others use what there you go. It doesn't matter. It's your workflow. It's how you like to work and if it works for you, that's great. And yeah, that is that. Responsibility. Responsibility in the sense that if we're doing work for our clients or others out there, make sure that you use correct standards, that you sanitize data, that you think about overhead about bloating because if we get really philosophical about this code that is bloated means in the end, technically more pollution because it's more data that you need to download which in turn it's more information that you need to fetch off a server which in turn is more power. And so if you can save a few hundreds of kilobytes here and there think of it that you're doing the environment a favor as well. I mean, you're saving off data that is not necessary for the client or users to show. So as a developer, you have the power to do that. And community. I mean I'm here. She was here at the sense of community that went tophers here. And you all are here. The sense of community that WordPress has even after 13 or 14 years of using it, it's still as strong as my love for what I do. And I think it's one of the amazing aspects of what WordPress truly is. Knowing people who are just where people that do extraordinary things and I'm really, really happy to be part of that. So with that said, thank you very very much. Sorry if I moved too much. Did I? That's right. Questions if there are, if there's time? Yeah? No? That's great. Do you know about generate.wp.com? No, I do not. It leverages gravity forms. Okay. But it just asks you all the questions you need to answer in code for things like custom code steps you want now. And then you can jump the code. Okay, that's cool. And then you put it in your own plugin. So it's sort of like a half step between actually writing yourself. True. But you're making your own plugin, but you're less likely to miss a comma and then cry really because you can't figure it out. That's true. You know what? I had a... I had a guy and it turned out he put a zero instead of an O. And yeah, he... Yeah. No? But that's also important because you can use that and you can fine tune that to your liking. And let's say you're like, man, this gravity forms was great but now I needed to do this, this and that. And you extend the code. And I think that's important. This last week for the very first time I had to use chat GBK to write a plugin. And it was very short and it leverages the WQ query you were talking about. I wanted the featured image of the most recent published post. And no other data, just the featured image. It was going to go to the top of an archive page. So that that image would change as the first post of the archive change. And it gave the perfect code. It was over-engineered and I ripped out a third of it. But it was perfect. It was fun. But using WP query I was able to get just the image of the most recent post from the post post type. You know, you got it. You know, all the drops in a row are even so weird. I've had that problem before and what I do is within the loop I ask if this is the first instance of the query. If so, put the featured image. If not, continue with but the problem I had is one of the second pages. That's where I had to engineer a little bit. And it goes back to the analogy I said about turning the lights off. His solution is way different than mine. And I probably would have used this. Yes. Yeah? You can do that within the WP config file. Yeah. That could be a good idea for a plugin. Like, hey, how do you write your WP config though? That's... Okay. Yeah. Yeah. Yeah. Yeah. And that's part of my boilerplate code as well. WP config, no editing within WordPress, please. I don't know why WordPress has that on by default. And you should turn it on if you want, but it's not a perfect platform. Yes. More questions? Yes. You were kind of caught up with our discussion, right? Yeah. Because she was saying about the languages. Right. Yeah. And I was like, that could be metadata. Yeah. I think it could be both. But if you were to ask me which one I would prefer, I would go with Taxonomy because that would make querying it faster, better, easier for me as a developer. Because if I do it as metadata I would have to query it as metadata. And I mean... It's about the object itself. It's not about the post. So if you're talking about the post something about the metadata like the images is the easiest one for me, right? When you look at an image, it has its own metadata. When was it taken? It's information information. That's how I would always talk to it as metadata. But Taxonomy is a way of organizing posts and information. But the sizes is something you could organize as. Maybe metadata could be anything where the Taxonomy is one of a limited set of things. So like metadata could be like making like we have like an author. That's true. Yeah. Yeah. Because you wouldn't want a Taxonomy for every single possible No, because you would get a lot of information. Yeah, that's true. Taxonomy queries are so much faster than meta queries that I would put everything I can in Taxonomy's point of using to avoid metadata. I would have discussion with this guy but yeah. I would discuss with him like hey, Topher, you're going a little bit overboard here. No, it's not. It's fast. I actually did talk entirely on custom growth types. I'm going to have to get back to it again. But it goes to what you said. How can you label nicknames versus like how can you organize data by nicknames? And if you think about it can you organize t-shirts by size? That's okay, yeah. If you had a Taxonomy of nickname it would be really simple to make a query that says give me the most popular nicknames. It would be much simpler. That's true because I would have to count the amount of times the nickname would appear. Okay, that's a point for you. I'll keep mulling it over. I'm going to say that. This table here. Yeah. Yeah. Yeah. Yeah. Yes. You're not going to grill me, are you? Oh! The difference is that wait, Taxonomy wait, what did you say? Because category I think it's a type of Taxonomy The difference is that do you want the Taxonomy to behave like a category or like a tag? There's a difference between each. Hierarchical and non-hierarchical. Yes, that's one of them. And the second one, and I have to give an example of Michael Jordan. He's a basketball player, right? Right. He was, but he's now a businessman. So you can't really have a category about Michael Jordan because it's not a sports thing tied to, you know. It doesn't have the sports Michael Jordan thing related to it whereas you could have a Michael Jordan tag because it doesn't matter if the guy is a basketball player or a businessman or he goes into movie acting or Schwarzenegger for that matter. He's a bodybuilder, he's an actor and he's a governor, he's a politician. So you can't put Arnold Schwarzenegger as a category because it has the parent-child relationship news Arnold Schwarzenegger. Whereas the tag, yes. So taxonomy is like the techie or fancy name but category and tag is how does it behave. So, yeah. So you semi-grilled me. Yeah. Yeah. Any more questions? Can you suggest they start I know that they are a lot to be intimate in trying to learn those languages. I would say when I started maybe Topher couldn't offer me some light I did the website for my dad for some friends and from people I knew that even if I you know they would not hold it back against me. So I would offer my services as a develop or you know custom theme design and start doing that. Yeah, that's how I started with custom theme development and that is a good question. Yeah. Yeah, but where do you start? That is the problem. Or set yourself a task. I'm going to do a custom theme for my friends website. Yeah. But back then I don't know if it's alive yet but back then I took a course by Chris Coyer about how to do that and that dude was amazing. He's amazing. That course was amazing. Yeah. So I started with Chris Coyer. Alright, thank you.