Hi! Today we will look at a detailed guide on how to master WordPress from scratch as a developer.
HTML-markup and technologies in the web
This is the base. Whether you end up working with WordPress, other CMS or frameworks, or even decide to become a front-end developer, you need to know the basics. Without this, you will not understand how web pages are formed, and with the current development trend, you will not be able to develop on WordPress at all. More on the trend at the end.
HTML — hypertext markup language
It is a layout and markup language for web pages. It allows you to create the structure of web pages and content. Without it, not a single web page on the Internet could work.
You can learn the basics in 1-3 weeks. The internet is full of free HTML courses, both on YouTube and from various online schools.
CSS — cascading style sheets
If HTML is about markup, then CSS is about page design. It allows you to arrange the site in accordance with the design layout: specify the size and location of elements, text colors, blocks, fonts, their sizes, and so on. It also allows you to make a mobile version of the site.
The study will also take 2-4 weeks. There are also many free courses on CSS on the Internet.
Important: until you make at least a few pages in accordance with the design layout, do not use absolute positioning – position: absolute. Although this is a useful and necessary tool, it is used by beginners in a completely wrong way, because it seems to a beginner to make it easier to lay out a page without many problems, but in reality a person learns to do the job completely wrong. Therefore, it is better to first learn how to work without it.
CSS is a subtle page styling tool. But in layout there are many typical elements and solutions that can be found in most projects. And in order not to reinvent the wheel every time, you can master CSS frameworks that have already solved most of the tasks of page design. The most commonly used are Bootstrap and Material.io. I personally only use some elements from Bootstrap.
Along the way, you need to learn about how the Internet works in general: what is a client, server, DNS server, TCP-IP, FTP, SSH, port in computer networks, hosting, domain, SSL. Now it may seem complicated and scary, but in reality it only seems. You don’t have to dive into the depths of these technologies, although it’s helpful. You just need to understand what it is, what it is for and how it works. This will greatly simplify your life when you start working, and in general will help in your development.
You also need to learn how to work with the Linux terminal, even if you have Windows – in your work you will most often come across Linux, because most servers run on it.
All these technologies can be studied in parallel, no matter at what stage you are now.
PHP is needed to manage interaction with databases, to save content, manage users, configure and refine the system itself for your tasks, as well as to interact with external services.
In PHP you need to learn the basics and, object-oriented programming. I also strongly advise you to study the PSR-12 coding standard. He gives advice on how to properly format the code so that it reads well. For WordPress, see PHP Coding Standarts.
Experienced developers in this place will throw tomatoes at me, they say, this is a heavy and ancient technology. In part, they will be right, but I am not a supporter of running after fashion trends (one of which is jQuery hate) and I prefer to use effective tools to solve tasks. Therefore, although it is better not to use it for new projects, it is needed to maintain old projects and refine the WordPress admin area.
Now there may be a lot of words incomprehensible to you, but do not be alarmed. I think when you get to this point in your training, everything will be much clearer to you 🙂
React.js — framework for creating and maintaining web interfaces
By the way, the JSX I mentioned above is part of React.js, so don’t worry if you don’t understand what it is. Think of it for now as something that you will need to learn sometime later. When you’re ready for it, I’m sure you’ll love this thing 🙂
Databases and MySQL
In the database (DB), as it is not difficult to guess, data is stored. As a rule, the content of the site, its settings, information about users, order history (if it is an online store, for example) is stored in the database. Without a database, no modern CMS will work, because it will have nowhere to store data. Therefore, the tools for working with the database need to be studied. For WordPress, this is primarily MySQL. Optionally, you can also learn PostgreSQL.
It is a relational database management system that WordPress uses. Just it allows us to work with the Database itself: create and delete the database and database tables, manage their structure, create, modify and delete data from the database. All this is done in the SQL language, which also needs to be learned for advanced development.
Back-end development on WordPress
So, we study the following topics in order:
- WordPress themes: how to create your own, what are child themes, WordPress theme file structure.
- What are posts (post), their types
- Taxonomies and terms
- Meta fields, managing them and their data
- WordPress Menu and Walkers
- Ajax requests in WordPress
- Security in WordPress
- Working with users
- Creating plugins in WordPress
- REST API
That’s probably all. I wanted to write a concise and helpful guide on how to become a WordPress developer. It didn’t work out succinctly, but I hope it’s useful.
If you see flaws in the article or you have questions – feel free to write them in the comments – I will answer everything 🙂