Pathways to Learn WordPress

With the relaunch of this site in August 2024, there are now formal Learning Pathways for Users and Developers at different levels. Check out the available Learning Pathway courses at the top of the homepage.

The following content is a suggested order when learning WordPress. It is not a comprehensive or required track. It is what we have published to date. The audience of who can Learn WordPress help is vast.

More content is in production, and suggested topics are welcome. A high-level brainstorm overview of additional pathways and content is available as well.

Want to share your idea? Contribute

About WordPress & Open Source

Lesson PlansTutorialsCourses
General History Of WordPress
What is Open Source?Introduction to Open-Source
What You Can Do With WordPress
High-Level Overview
What’s the Difference between WordPress.com vs WordPress.org?
WordPress Under the Hood
Introduction to WordPress

Get Started

Lesson PlansTutorialsCourses
How to Choose the Right Hosting for Your WebsiteGetting Started With WordPress: Get Setup
Local InstallLocal WordPress Installation for Beginners
How To Install WordPress On A Server
Dashboard OverviewWordPress Dashboard OverviewGetting Started With WordPress: Get Familiar
SettingsManaging Settings: General
Managing Settings: Reading
Manage Settings: Privacy
Managing Settings: Permalinks 
What to do when you forget your password
Setting A Static Page As Your Homepage
Pages Vs. PostsPosts Vs Pages
How to Create a Post or Page with the WordPress Block EditorHow to Create a Post or Page with the WordPress Block Editor
WordPress Editor Modes for Streamlining Content Creation
Adding and Removing Images
WebP images in WordPress
Horizontal Pyramid Gallery
Fining Images Using the WordPress Photo Directory
Finding Images Using Openverse
Add Media and Openverse Images to Your Content Directly from the Inserter
Managing MediaUsing the Media Library
Organizing Your Media Library
Creating New Image Sizes
Image Optimization
Categories Vs. TagsWordPress Taxonomies
Managing Settings: Discussion
Managing Settings: Writing
Managing CommentsManaging Comments
What Is A Theme
Themes/Plugins Relationship
Choosing And Installing ThemesHow to choose & install a theme
What kind of WordPress theme do I have: classic, block, or something else?
Building a Home Page with a Block Theme
Choosing And Installing PluginsHow to choose and install plugins
Introduction To Common PluginsSubmitting Block Patterns to the Directory
Using the Block Widget Editor
Import Widget Areas from Classic Theme to a Block Theme
Add a Contact Form to Your Site
User ManagementUser Management
Managing Updates
Troubleshooting Basics
Theme Troubleshooting
How To Find Help With WordPressHow to find help with WordPress
How To Find Theme Specific Documentation
Managing Spam On A SiteManaging Spam on Your Website
Backing Up Your WordPress Site
WordPress Troubleshooting Basics: Part 1
WordPress Troubleshooting Basics Part 2: Troubleshooting with Logs
Building a Sitemap for a Site
Develop Your First Low-Code Block Theme

Get Started with Blocks

Lesson PlansTutorialsCourses
Intro to Publishing with the Block Editor Simple Site Design with Full Site Editing
Content Creation in the Block Editor
How to use the List ViewHow to use the Block Editor List View
How to Create Reusable BlocksHow to Create and Use Reusable Blocks
Use Duotone Filters to Change Color EffectsApplying Duotone Filters to Change Color Effects
How to Use Featured Images
Uncovering the Cover Block
How to use WordPress Block PatternsUsing Block Patterns
Intro to Block Patterns
Block Spacing
Padding vs Margin
Add New Blocks to Your Site Using the Block DirectoryFinding New Blocks with the Block Directory
Intro to the Block Directory
Difference between Reusable Blocks, Block Pattern, Templates, Template Parts
How to Build Low-Code Block PatternsHow to Create Low-Code Block Patterns
Intro to the Site Editor and TemplatesIntro to the Site Editor and Template Editor
Locking Blocks in Site EditorThe Key to Locking Blocks
How to Style Your Site with StylesHow to Style Your Site with StylesPersonalized Site Design with Full Site Editing and Theme Blocks
How to use the WordPress Stylebook with Your Block Theme
Styling Your WordPress Blocks
Custom CSS in the Editor
Manage Your Block Theme Fonts with Create Block Theme
How to Create a Menu with the Navigation BlockHow to Create a Menu with the Navigation Block
How To Add and Remove Logo And Site Icon in Site Editor How to Add and Remove Logo and Site Icon in Site Editor
Adding a Site Tagline to Block Themes
TemplatesTemplatesAdvanced Site Design with Full Site Editing: Site Editor, Templates and Template Parts
Using Page Templates
Creating a custom template with the WordPress Site Editor
Creating a Frong Page for a Block Theme
Exploring Category Templates with Block Themes
Template PartsTemplate Parts
Using Template Parts
Creating a New Header With Blocks
Adding a Sticky Header or Banner
Customizing a Header with Patterns
Adding a Pattern from the Pattern Directory to Your Theme
Customizing a Footer with Patterns
Customizing Your Post Content Layout
Advanced Layouts with the Block Editor
Designing with the Columns Block
Building Sidebars With the Site Editor
Displaying the Post Comments Block to Block Themes –Displaying the Comments Block in Block Themes
Custom Post Types and Capabilities
Create Custom Post Types Without Code
Displaying Testimonials on Your Website
Personalizing Your 404 Template
Rapid Website Recreation

Optional Extension to Get Started

Lesson PlansTutorialsCourses
Introduction To Common Plugins
Improving Site PerformanceImproving Site Performance: An overview
How to Use Post Formats in Posts
Child Themes Twenty Sixteen
Child Themes Twenty Seventeen
Migrate, Copy, Or Clone A Site
Help Regenerate ThumbnailsHow to Regenerate Thumbnails
Keeping WordPress Sites SecureExtending WordPress: Common Security Vulnerabilities
How to Improve SEO Rankings
Saving a Search as an RSS Feed

Classic Themes & Customizer

Lesson PlansTutorialsCourses
Classic Content Editor Overview
Introduction to the CustomizerUsing the Theme Customizer
Customizer: Header And Background Images
Customizer: Site Icons And Logo
Customizer: Static Vs. Content Front Page
Customizer TaglinesCustomizer Taglines
Managing Classic Theme Menus
Classic Child Themes

Contribute

Lesson PlansTutorialsCourses
How Decisions Are Made in the WordPress Project
Introduction to Contributing to WordPressOpen Source Basics and WordPress
How to create a Lesson PlanHow to Create a Lesson Plan
Style Guide Creation Workshop
Best Practices When Capturing ImagesBest Practices for Creating Screenshots
Anonymizing information in the browser
How to add demo content in WordPress
Creating a WordPress.org AccountCreating a WordPress.org Account
Creating/Joining WordPress Slack, orientation to channels and etiquette
How to Use and Contribute to the WordPress Photo Directory and Openverse
Submitting Block Patterns to the DirectorySubmitting Block Patterns to the Directory
Upload a Theme to the WordPress Repository
Speaker Training WorkshopCreating a Welcoming and Diverse Space Part 1
Creating a Welcoming and Diverse Space Part 2
Diverse Speaker Training Workshop Part 1
Diverse Speaker Training Workshop Part 2
Diverse Speaker Training Workshop Part 3
Diverse Speaker Training Workshop Part 4
Online Stage Presence
Storytelling for Tech Talks
How to Submit a Workshop
How to use GitHub
How to use Trac
Organizing WordPress Meetups: Supporting an Online Meetup
Organizing WordPress Meetups: Getting Started
Contributing on the WordPress Community Team
Writing in the WordPress Voice
Community Meeting Etiquette
WordPress Community Deputy Training
Polyglots Contributor Training
Basic Principles of Conflict Resolution
Incident Response Team Training
WordPress Meetup Organizer Training
WordCamp Mentor Training
WordCamp Organizer Training

Develop

Lesson PlansTutorialsCourses
A Developer’s Guide to Block Themes Pt1
WordPress Under the Hood
Anatomy Of A ThemeAnatomy of a Block Theme
Introduction To CSSCustom CSS in the Editor
What To Include In functions.php File
Template TourWordPress Theme Template Tour
Template HierarchyA Beginners Guide to the WordPress Template Hierarchy
The WordPress request lifecycle
WordPress Troubleshooting Basics: Part 1
WordPress Troubleshooting Basics Part 2: Troubleshooting with Logs
Conditional Tags
The Loop
Enqueueing Scripts And Styles
Web Fonts
Custom Post Types
Dashboard Icons
Make a Plugin Inside the WordPress Dashboard
How to add Post Formats Support to Your Theme
Streamline Your Block Theme Development with Create Block Theme
Create a Basic Child Theme for Block Themes
Introduction to theme.jsonA Developer’s Guide to Block Themes – Pt2
Using theme.json with classic themes
Using Schema with WordPress theme.json
Theme Accessibility
Theme Internationalization
Introduction to Block Development: Build Your First Custom Block
WordPress Action HooksConverting a Shortcode to a Block
WordPress Filter Hooks
How to Create and Register a Block PatternRegistering Block Patterns
Intro to Gutenberg Block Development
Introduction to Block Theme Development for Beginners
Using the create-block Tool
Making Dashboard Widgets
Converting a Shortcode into a Block
Creating Custom Fields
Developing with User Roles and Capabilities
Using Block Attributes to Enable User Editing
Introduction to Securely Developing Plugins
Using the WordPress REST APIUsing the WordPress Data Layer
WordPress REST API – custom routes and endpoints
WordPress REST API – Modifying Responses
WordPress REST API – custom fields, authentication, and testing

eCommerce

Lesson PlansTutorialsCourses
Getting Started in eCommerce: From Idea to First Customer

Internationalization

Lesson PlansTutorialsCourses
Using WordPress in Other Languages