 Yeah, sorry for that technical difficulties. I'm Eva. I'm a senior WordPress developer in Cloud Favorite. We create digital solutions for big enterprise companies. I love traveling. I love my WordPress sunglasses. And I definitely love World Camp Europe. It's my favorite event. So lately, we had a project that had a requirement for importing data from external API. And in the beginning, we thought that we will have five endpoints. I will get data from five endpoints. We will save it in WordPress. All good. But it turned out that they actually have 30,000 endpoints. And as you can imagine, it's a bit more complicated to do that. So what we are going to ask now, why it's not timing code? Well, it was timing code. So what we ended up doing was automating it with custom commands with WPC-LY, running on a clone job. Everything is getting imported in the background. And I was working well. What's WPC-LY? It's a command line interface for WordPress. And the idea behind it is that you should be able to do the exact same things that you are doing in the WordPress admin. But it's not a good idea. I am doing it with a WPC-LY command. Now, I will show you how to do this in a second. But it's a good idea. So you can run all these commands in the terminal. If you follow the documentation and it has really good and detailed documentation, you'll be able to install it for a few minutes. And if you run WPC, you'll be able to see the set of commands that are available for you. You'll have the command and short description. config files, and so on. So how exactly these command are structured? We'll take a look at WP plugin install. As you can see, what you need to do is specify the plugin by Swarkpad or local zip file. And you also have a number of optional arguments. So you can specify version. You can say if you want to activate it immediately or not. And now, when you know how the commands look like, you probably are wondering how to create your own. So there are two main ways to do that. One is to create that in your WordPress plugin. And the other one is to set it up as a package for WPC-OI. Packages for WPC-OI are exact same thing like plugins for WordPress. So if you want to do that in your WordPress plugin, you have to first check if WPC-OI is presented and then write the code for your command. If you are doing it as a package, what you need to do is just run WPC-OI package, which will generate all the files that you need, except the command itself. And actually, what is only required is that set of file with the information for your new command. What actually does the job is actually WPC-OI add command. And the only thing that is required for it is the name for your command and a callback function. The callback function will actually do the whole job. And you can also add documentation with PHP doc for the future you and for your users. You can add short description, a long description that will be presented to your users when they run dash-dash help on your command and doc-bocker comments. If you, alternatively, you can do that, adding a third argument in WPC-OI command, like so here. And you can add all the documents like the short description and so on inside the command. Of course, because everything should be tested, there is a had framework for WPC-OI. And it creates tests that are very easy to write. They are functional tests that interface with the command the exact same way that the users will do. So everything that's needed for that is to run WPC-Fault package tests, which will generate files for your tests. And you are ready to go. So I think the time we need is for less than 10 minutes. You know how to create your new commands now. That's a simple example how you can create a command that will delete the option from the database. And you see the documentation above and callback function, name of the command. And it seems pretty easy, right? If you want to do a way more complex stuff with WPC-OI, you need to dive in the internal API. There are a ton of handy functions, like you can handle errors. You can bring the text messages for your users and a way more that you can use in your commands to automate workflow and import data or whatever exactly you need to do with it. So that's it. I hope that it was interesting and that you actually tried. If there are questions, I'll be around all day and my contacts are on the screen. Thank you.