
Learn to build a professional WordPress theme with WooCommerce, turning a store into an ecommerce site. The advanced course guides programmers through creating and customizing themes.
Set clear expectations for this course by outlining where to find FAQs, extra materials, and downloadable code, and emphasize following the course project to build a WooCommerce compatible WordPress theme.
Install and configure a local server with xampp to develop WordPress sites locally, test via localhost, manage databases with phpMyAdmin, and place projects in the htdocs folder.
Learn to install WordPress locally for WooCommerce theme development, create and configure a MySQL database with UTF-8, change the table prefix for security, and resolve file permissions and server setup.
Set up your development environment for the WordPress theme using Sublime Text, Emmet, and package control, then organize your project in the wc underscore course folder for easy access.
Create a WordPress theme by adding a lowercase hyphenated folder in wp-content/themes with index.php and style.css, include template files and a 1200 by 900 screenshot.png to activate it.
Edit the style.css header to define the theme name, author, description, version, text domain, and license, then add tags and activate the theme to preview on the front end.
Explore the basic blocks of a WordPress theme, from the index file to header and footer templates, plus dynamic content areas and the plan to split into separate template files.
Learn to build a dynamic WordPress theme by splitting code into header.php and footer.php, using get_header and get_footer, and applying language_attributes.
Create a functions.php in your WordPress theme, define a prefixed function to enqueue styles with wp_enqueue_style, use get_template_directory_uri or get_stylesheet_uri, and hook it to wp_enqueue_scripts to load CSS in order.
Learn to enqueue stylesheets correctly in WordPress by using wp_head, verify loading in the header, and implement cache busting with filemtime-based versioning for ver parameters.
Learn to integrate Bootstrap into a WordPress theme by enqueuing CSS and JavaScript, managing dependencies on jQuery, and placing scripts in the footer for performance.
Test bootstrap classes in your theme and verify the viewport tag in header.php is in place. Learn how the 12-column grid, container, rows, and responsive breakpoints power the layout.
Learn to register a WordPress menu with register_nav_menus in functions.php and hook it to after_setup_theme, then create and assign a main menu in the admin.
Register and position WordPress menus with functions.php and WP nav menu, convert the top menu to horizontal via CSS, and prepare for responsive layouts and future WooCommerce integration.
Learn how the WordPress loop powers dynamic content by repeating code to display posts and pages, showing titles, content, and excerpts within a theme’s structure.
Build and render a WordPress loop that fetches posts from the database, iterates while posts exist, and displays each post’s title and content using template tags.
Learn to build page templates in WordPress themes to render different layouts for home, about, and contact pages, using page-slug.php files, and explore the upcoming reusable templates approach.
Create a reusable home page template by duplicating index.php, naming it with a template name, and assigning it via page attributes in WordPress.
Master WordPress page templates by adjusting index.php and page.php to create unique blog and about pages, aligning with Themeforest recommendation as you prepare for WooCommerce work.
Install and activate the WooCommerce plugin, understand that default store pages are created, import demo products via CSV for testing, and preview the shop as a basis for theme development.
Declare WooCommerce support in your theme with add_theme_support under after_setup_theme to boost compatibility, define product grid, thumbnail width, single image width, and a 600px content width, plus gallery enhancements.
Learn to safely override WooCommerce template files by creating a WooCommerce folder in your theme and copying archive-product.php, while understanding why not to edit plugin files.
Learn to modify archive-product.php by wrapping content in a bootstrap container and two columns, repositioning the sidebar with grid and order classes, while preserving hooks and WooCommerce structure.
Learn to modify archive-product.php using WooCommerce action hooks and filters, maximizing minimal file changes, by adding prioritized actions in functions.php to rearrange content and sidebars without editing the original template.
learn how WordPress hooks and filters modify archive-product.php, using apply_filters to change the page title and display the product short description via the excerpt, with code organized into inc/wc-modifications.php.
Modify the single-product.php template in a WooCommerce theme using action hooks and filters; use is_shop to limit changes to the shop page and adjust bootstrap columns.
Modify the WooCommerce cart page by applying updates to style.css, adjusting page.php template, and using bootstrap column class to set content to full width and resize the input to 150px.
Modify the checkout page styling by aligning WooCommerce grid with Bootstrap through CSS updates and media queries in style.css, improving responsiveness without duplicating template files.
Modify and test the WooCommerce account page by enabling bank transfer and verifying orders, downloads, addresses, and account details. Explore three customization methods: overrides, action hooks, and CSS.
Embed google fonts in the theme using an @font-face workflow with Rajdhani and See with Script. Use a fonts folder and font-face rules for body and headings.
Enhance the main menu by adopting a bootstrap nav bar, integrating WP Bootstrap Nav Walker, and enabling a responsive, multi-level dropdown with hover and configurable depth.
Advance theme customization by refining the main menu for mobile with a centered logo, single-line account and menu controls, and bootstrap 5 attribute updates to ensure responsive behavior.
Develop and implement a site search in a WooCommerce theme by adding a WordPress get_search_form, displaying results, and planning pagination while addressing form styling and result accuracy.
Create a search-form.php to customize the WordPress search form in a WooCommerce theme, using get_search_form and copying code from a native theme for faster setup.
Learn to restrict WordPress searches to the WooCommerce product post type by adding a hidden input, resulting in archive-product.php results with proper pagination—valid only when WooCommerce is active.
Learn to add a shopping cart link with an icon and live item count using WooCommerce, including Ajax updates and avoiding plugins.
Implement a Bootstrap-based top navigation with account and logout links, switching to login/register when not logged in, and guard with WooCommerce and plugin checks.
Enable custom logo support, set a size, and render the logo in the header via the customizer; fall back to the site title and tagline when no logo is set.
Master the WordPress theme customizer to make the copyright area dynamic, preview changes live across devices, and understand sections, panels, and controls.
Learn to add a copyright text field to the WordPress theme customizer by building a customizer file, creating a section, setting, and control, and displaying via get_theme_mod.
Learn to implement a responsive homepage slider in a WooCommerce theme using the flexslider approach, enqueue its scripts, and ensure 100% page width without plugins.
Create a dynamic homepage slider from WordPress pages using featured images, titles, subtitles, and a button link. Configure 1920 by 800 image size via functions.php and customizer to automate slides.
Create and configure three slider slides using the WordPress customizer by adding sections and nine fields (page, button text, and url) for each slide, with sanitization and dropdown pages.
Bring the homepage slider to life by turning page content into a WordPress loop, and using three iterations to populate slides from pages saved via the customizer.
Create a custom WordPress loop with WP_Query for a homepage slider, using an args array (post_type, posts_per_page, post__in, orderby), display responsive thumbnails, and reset postdata after the loop.
Create a responsive homepage slider for a WooCommerce theme by adapting CSS, enabling mobile swipe, hiding arrows, and rendering post titles, subtitles, and buttons through theme code without plugins.
Learn to display homepage product lists in a WooCommerce theme using shortcodes to show popular, newest, and deal-of-the-week products via the home page template.
Discover two approaches to control the home page product list in WooCommerce: use CSS adjacent-sibling selectors to hide descriptions, and revert template modifications to preserve shop page behavior.
Add a home page product control panel in the theme customizer to adjust max products and columns for popular and new items, wiring shortcode values to theme settings with defaults.
Build the deal of the week section on the home page with bootstrap columns and flex centering for image and description, and enable disabling via the customizer.
Learn to build a featured homepage section by displaying product image, title, short description, and normal and sale prices from the WordPress database, using a product ID in the customizer.
Fetch deal of week featured product data from post meta, including image, title, regular price, sale price, and featured id, then display with the WooCommerce currency symbol and discount percentage.
Learn to craft a WooCommerce theme homepage with featured product lists, discount tags, sale price validation, and add-to-cart links, plus customizer-driven titles and wrapper functions.
Learn to implement a home page blog section for a WooCommerce theme using a custom WordPress loop with WP Query, display post excerpts with thumbnails, and make blog titles dynamic.
Modify the blog index template (index.php) to display post excerpts with the post thumbnail, clickable titles, and meta including author, date, categories, and tags, with conditional checks for missing data.
Create a single.php to render post content via the WordPress template hierarchy, replacing index.php for individual posts. Use a standard loop and apply post ID and post class for styling.
Enable a universal comments form on inner pages by wiring the comments template into single.php and page.php, using a copied comments.php from a native theme and respecting WordPress discussion settings.
Implement WordPress pagination in the main index template using numbered links with prev/next, and use wp_link_pages to paginate long posts before or after content.
Learn to build an archive.php template in WordPress to surface posts by category, author, or date, and use fallbacks to index.php, plus adding archive titles with the archive_title function.
Create a search template that works with or without WooCommerce, implement search.php, reuse index.php, display the search term with get_search_query, add a search form, and show no results when applicable.
Create a dedicated 404.php to handle missing pages, restore the title tag, and enhance the error page with widgets showing recent posts for better visitor guidance.
Learn to use the get_template_part function to structure WordPress themes by moving repeated code into template parts, improving readability and reusability, with optional second parameter for targeted templates.
Register and place WordPress sidebars or widget areas across themes, use widgets to add features like newsletters, and adapt with the Gutenberg editor.
Create and integrate a functional WordPress sidebar across index, archive, and single templates using sidebar.php and get_sidebar, with responsive Bootstrap layouts and active widgets.
Create a shop sidebar file for WooCommerce to override fallback and register widget area named sidebar-shop. Add price filter and product categories widgets, and regenerate product lookup tables when needed.
Register a third widget area in functions and display three widgets via dynamic sidebar, then drag HTML and menu widgets to fill them, ensuring WordPress and WooCommerce work across areas.
Explore how to make a WooCommerce theme translatable through WordPress internationalization, using gettext functions and producing POT and PO/MO files for translators.
Master internationalization by adding a text domain, loading the theme text domain, and creating a languages folder for translations. Learn how underscore e and double underscores display or return translations.
Apply translation to the theme using load theme text domain and the _e and __ functions, and translate strings in 404.php and functions.php while preparing menus and widgets.
Replace all external text domains in copied files with your theme's text domain to make the WooCommerce theme fully translatable. Prepare the pot file next lesson.
Create a translation template (pot file) for your WooCommerce theme with Poedit, setting catalog properties, and prepare language files for collaborators in the theme languages folder.
Master WordPress theme internationalization by translating with Poedit without plugins, generating po and mo files, and validating translations for admin and front-end.
Prioritize theme security by understanding input validation, sanitization, and escaping to protect user data and prevent cross-site scripting in WordPress themes.
explore how to secure a WooCommerce theme by reviewing code, applying sanitization to user input, and distinguishing validation from sanitization, including escaping fields in HTML and PHP.
Learn how to secure dynamic theme outputs with WordPress escaping functions, including escaping translation strings, applying input validation and sanitization to prevent cross-site scripting.
Audit and update theme PHP files, ensure translation strings and dynamic content are escaped with esc_html, esc_attr, and esc_url, for improved security and WordPress theme review.
Learn essential WordPress coding standards for WooCommerce theme development across CSS, HTML, JavaScript, PHP, and accessibility to write clear, consistent theme code, avoid common pitfalls, and enhance usability.
Advance your WordPress theme development by mastering extensive testing, unit tests, browser checks, and theme check before submitting to WordPress.org, with teamwork and clear documentation guiding the process.
Install the steam sniffer plugin as recommended by WordPress from GitHub, run theme checks, fix readme and text domain, adjust css and functions, and prepare for theme submission.
Learn to validate a WordPress theme with the WordPress unit test XML, testing posts, pages, menus, images, and edge cases. Test widgets, pagination, comments, and permalinks, with layout tweaks.
Test and refine multiple menus, footer depth, and responsive layouts for a WooCommerce theme, then adjust posts, excerpts, read more, and widgets with CSS.
Pack your theme with the TGM Plugin Activation library to declare required plugins like WooCommerce, and include the library files via functions.php with a proper text domain.
Finish configuring the TGM plugin activation by selecting the WordPress repository method and marking WooCommerce as recommended (not required) to keep theme compatibility with WordPress.org.
Test a WordPress install by packaging and activating the theme, run the plugin activation for WooCommerce, perform a batch install, then review the WooCommerce settings and demo data one-click install.
Explore how to create and export demo content for a WordPress theme using the one click demo import plugin, including content, widgets, and customizer settings.
Continue importing demo data for the theme, highlighting two WordPress layers—theme files and the database—and configure menus, home and blog pages via one click demo import.
Prepare the theme for submission to wordpress.org by updating the version number, finalizing readme.txt, refining translations with poedit exclusions, and ensuring GPL v2 licensing and minimal documentation.
Submit your WordPress theme to wordpress.org by creating an account and uploading a zip for automated checks and two-stage review. Address issues until approval under GPL version two.
Navigate the wordpress.org review process for a WooCommerce theme, fix bugs, adjust third-party files, add non-minified assets, secure final approval, and go live.
Explore how to troubleshoot WordPress theme checks by moving import files off the theme folder, adding the WP body open hook, and aligning with WordPress and PHP version requirements.
Prepare the hosting environment, create a database and user in cPanel, grant privileges, and prepare your WordPress site for migration from local to a remote server using a migration plugin.
Migrate a WordPress site from local to production using the duplicator plugin, then fix PHP version warnings and test the database.
100% Answer Rate! Every single question posted to this class is answered within 24 hours by the instructor.
You can earn a living, or make some cash on the side, as a freelancer or full-time WooCommerce theme developer
Are you looking for a comprehensive WooCommerce theme development course? Have you ever thought about becoming a professional WooCommerce theme developer and make some money on the side?
Today WooCommerce is quickly becoming the next big thing in e-commerce. Its mission is to transform any WordPress website into a real e-commerce store. And it really does! That's why so many developers today want to learn how to create themes for it.
You'll find many WooCommerce tutorials out there, but most of the times they are very confusing.
This course is different. It features almost 100 lessons in which I'll really share with you everything I've learned so far about creating themes, especially about how to build a WordPress theme with WooCommerce compatibility.
Today, many developers make money quickly building themes to people who want a custom theme for their stores. Good freelancers will charge anywhere between $3,000 and $15,000 for a simple custom WordPress website. WordPress sites with WooCommerce capabilities are more profitable to clients, so they are more than willing to pay even more!
Many other developers earn a living selling premium versions of their themes. And you can be one of them too!
I'm an instructor of more than 25,000 satisfied students only here at Udemy and I know how to help you.
What exactly are you going to learn?
Here's a quick list of the main subjects covered by this course. You'll learn:
How to create a classic WordPress theme that works perfectly well with Woocommerce (NOTE: in this course, a classic theme will be created, not a block theme);
How to declare WooCommerce support and customize your themes. Your clients' online stores will become even more attractive;
How to modify the WooCommerce template files in the right way. Your store will look the way you want;
How to use the WooCommerce shortcodes the way no one does;
How to use powerful tools like Theme Customizer and TGM Plugin Activation to make the store shine;
How to create a responsive menu and a sexy and modern slideshow - without using plugins!
How to add a blog to the e-commerce store. Your theme users will sell more!
And more! How about learning how to create demo versions of your theme?
If your intention is to sell premium versions of your theme, you'll see that the ones with demo versions are the top sellers. Your clients will love them!
And how about making them available in any language?
You'll learn how to create themes that are fully translatable. Clients from all over the world will be able to use your themes, as they will be fully compatible with Poedit or any WordPress translation plugin.
And it doesn't end here...
How about making your WooCommerce themes really secure?
You will learn how to put in place, step by step, the main WordPress security features in your theme's code! Just relax! There will be no loopholes for anyone to attack your theme.
And to top it off, start a new career as an official WordPress/WooCommerce theme developer
Follow me as I send the theme created in the course out to the official WordPress theme repository. This is one of the best strategies for those who want to start making money by creating themes, even free ones.
You will understand all the tests that are necessary to pass through the strict review system of WordPress, until the publication of the theme. And, of course, you'll also understand some of the strategies you can use to make money with the theme and make a living as a theme creator. Yes, you can make money, even with free themes hosted at the official WordPress theme repository.
And, on top of that, all the content is loaded with basic notions about creating WordPress themes such as loops, inner pages, sidebars, template parts, filters, action hooks, page templates, enqueuing Bootstrap and Google fonts etc. Really, I won't hide anything in this course!
Besides, you'll have all the material available to follow the lessons.
Who this course is for?
I recommend this course to programmers, IT students, web developers, web designers, or any freelancer or full-time professional who works with PHP, HTML and CSS. It's recommended for everyone who want to build a full-time business, creating custom WooCommerce themes for clients or for selling.
I don't recommend, in any way, for curious people, shop owners, or people who don't know how to write code yet.
This is not a regular WooCommerce course. My goal is to teach the student how to create a theme, so we'll be writing a lot of code. If you are interested in just creating a webstore, without having to understand programming, there are several other courses that can help you out there.
This course is not about setting up a store. We are not going to learn how to configure payment methods, product shipping methods. We are not going to test those extraordinary membership plugins. We are not going to configure subscription plugins, marketing plugins, nothing like that.
This course is aimed at all those who want to become professional theme creators. Basically the course is aimed at two types of people.
Those who would like to become independent, create their own custom theme, learning to customize the look of the store the way they want, or learn to customize third-party themes. They can do it for themselves, or for their clients.
People who have plans to fly even higher! If you are already a little tired of working with annoying deadlines, boring clients, endless projects, anyway, if you want to start building a career with more freedom, more time for you, doing what you like to do, you will love the content that I have prepared for you!
In this course I will guide you, step by step, in the beginning of your professional career as a WooCommerce theme developer. I'll show you, from start to finish, how to create a theme following all the recommendations of the WordPress theme review team.
In the bonus section of the course you'll learn everything you need in order to make a theme pass the hard tests of the WordPress theme repository, how to bundle WooCommerce with the theme, how to prepare a theme demo, how to make your theme go international, how to make it totally secure, and much more.
In the end, I'll show you how to submit this theme to the WordPress theme repository, which is a wonderful showcase from which you can attract buyers to a premium version of the theme.
The course is also a basis for you to send the theme to other platforms, such as ThemeForest, which is one of the largest premium theme marketplaces in the world. Knowing how to do this for the official repository, you're on your way to go anywhere!
How is this course different?
What my students like the most is the excellent response time to their questions. You know, long waiting times can slow down your progress. So, I always try to reply within 24 hours. You can be sure you’ll never feel alone in this course.
Here's what my student Ryan Johnson has to say about one of my courses:
“I'm almost done with my own theme, ran in to an issue, and Marcelo has responded back with very detailed, quick help. I don't know how he does it! (…) Marcelo has laid this course out well, when you come up to a snag do everything you can to research and fix it on your own, but if you can't he's there for you. That's huge for me and may be for you, too.”
Or my student Adnan Usman…
"Marcelo has been amazing at explaining everything and has been extremely responsive when I ask questions while doing the course. I am not 100% done with the course yet but due to his diligence and quick and thorough responses I could not wait to give him a 5 star rating.”
And Christopher Moldrickx…
“Marcelo is very knowledgeable and makes the course enjoyable. He answered my questions in the forum fully and within a few hours time. Frankly, I would buy any WP course from Marcelo!”
And the list goes on…
So, are you ready for this course? You can always watch the free available lectures before you make your decision. Remember, this is a Udemy course, so you’ve nothing to lose. You can count on our 100% 30-day money-back guarantee in case you don’t like it. No questions asked.
So join me right now. From now on, the sky is your limit!