Build path · Advanced
Elementor Advanced
Custom code, addons, WooCommerce, memberships and security for Elementor professionals.
The developer and agency course for people who already build with Elementor Pro: custom code that cooperates with Elementor, your own addon with widgets and dynamic tags, WooCommerce and memberships, security, performance and the business side of running client sites.
What is included
- 16 modules and about 32 hours of video
- 10 client-style projects plus the Kirkgate Clay Co. capstone
- 3 live online classes of 2 hours (maximum 5 students)
- 2 hours of one-to-one tutoring
- Assessment: an online quiz, a live practical test and the capstone with a code review
- 12 months' access, including updates
Curriculum
-
Module 1: The developer workflow · 14 lessons
- 1.0 Course trailer and welcome
- 1.1 What you will build: Kirkgate Clay Co., the Studio Widgets addon and the ten projects
- 1.2 How this course works: projects, live classes, tutoring, code review and assessment
- 1.3 From builder to developer: where code belongs in an Elementor site
- 1.4 Local: sites, PHP versions, Mailpit and SSL
- 1.5 wp-config for development: debug constants and environment type
- 1.6 Reading errors: the debug log, notices, warnings and fatal errors
- 1.7 VS Code for WordPress: Intelephense, formatting and the integrated terminal
- 1.8 WordPress Coding Standards with Composer and PHP_CodeSniffer
- 1.9 Browser dev tools on Elementor pages: Elements, Console and Network
- 1.10 Query Monitor: queries, hooks, HTTP calls and PHP errors
- 1.11 Site plugin, child theme or Custom Code: deciding where code lives
- 1.12 Module 1 recap
- Module 1 worksheet
- Module 1 check (quiz)
-
Module 2: Git, WP-CLI and deployment · 14 lessons
- 2.0 Module intro and version check
- 2.1 Git in plain English: repositories, commits and history
- 2.2 Your first plugin repository and a WordPress .gitignore
- 2.3 Branches, merges and fixing a mistake safely
- 2.4 GitHub: private repositories, pull requests and self-review
- 2.5 Tags, versions and a changelog
- 2.6 WP-CLI essentials: plugins, users, cache and cron
- 2.7 Database work with WP-CLI: export, import and search-replace
- 2.8 Moving code and content: local to staging to live
- 2.9 Project 1 brief: the Kirkgate developer setup
- 2.10 Project 1 solution part 1: Local site, debug config and coding standards
- 2.11 Project 1 solution part 2: Git repository, WP-CLI script and staging push
- 2.12 Module 2 recap
- Module 2 worksheet
- Module 2 check (quiz)
-
Module 3: CSS that cooperates with Elementor · 15 lessons
- 3.0 Module intro and version check
- 3.1 How Elementor generates CSS: files, classes and the wrapper
- 3.2 Specificity and the cascade against generated rules
- 3.3 Cascade layers and keeping your CSS low in specificity
- 3.4 Element, class, page and site CSS: choosing the layer
- 3.5 Bridging Elementor variables and your own custom properties
- 3.6 Modern layout CSS: clamp, min, max and logical properties
- 3.7 Container queries for components that adapt to their space
- 3.8 Focus, hover and reduced motion done properly
- 3.9 Debugging layout bugs methodically in dev tools
- 3.10 Project 2 brief: the Tideway CSS clean-up
- 3.11 Project 2 solution part 1: finding the nine problems
- 3.12 Project 2 solution part 2: rebuilding with layered, token-based CSS
- 3.13 Module 3 recap
- Module 3 worksheet
- Module 3 check (quiz)
-
Module 4: JavaScript fundamentals for builders · 13 lessons
- 4.0 Module intro and version check
- 4.1 What JavaScript does on a WordPress page and where it runs
- 4.2 Variables, types, functions and modules
- 4.3 Arrays and objects: working with lists of data
- 4.4 The DOM: selecting, reading and changing elements
- 4.5 Events: clicks, keyboard and delegation
- 4.6 Writing accessible interactive controls: buttons, aria-pressed and focus
- 4.7 Fetch and the WordPress REST API
- 4.8 Rendering data safely: textContent, templates and never trusting input
- 4.9 Async, errors and loading states
- 4.10 Debugging JavaScript: the console, breakpoints and the network tab
- 4.11 Module 4 recap
- Module 4 worksheet
- Module 4 check (quiz)
-
Module 5: JavaScript in Elementor · 13 lessons
- 5.0 Module intro and version check
- 5.1 Custom Code, wp_enqueue_script and load order
- 5.2 Defer, async and loading scripts only where needed
- 5.3 Elementor frontend hooks and element_ready
- 5.4 IntersectionObserver: counters and reveal effects without libraries
- 5.5 Respecting reduced motion and the visitor's settings in JavaScript
- 5.6 Third-party scripts and consent: maps, chat and video
- 5.7 Measuring INP and long tasks
- 5.8 Project 3 brief: the Tideway interactive timetable
- 5.9 Project 3 solution part 1: filter buttons and REST data
- 5.10 Project 3 solution part 2: counter, consent-gated map and INP check
- 5.11 Module 5 recap
- Module 5 worksheet
- Module 5 check (quiz)
-
Module 6: PHP for WordPress · 18 lessons
- 6.0 Module intro and version check
- 6.1 PHP basics: variables, strings, arrays and conditions
- 6.2 Functions, loops and reading other people's code
- 6.3 Classes and namespaces: just enough object-oriented PHP
- 6.4 Hooks: actions and filters
- 6.5 A plugin from scratch: header, structure and activation
- 6.6 Registering post types and taxonomies in code
- 6.7 The template hierarchy and where Elementor takes over
- 6.8 Security basics: sanitise, validate and escape
- 6.9 Nonces and capability checks
- 6.10 Options, transients and the Settings API
- 6.11 The REST API: registering your own route safely
- 6.12 Shortcodes and small filters clients ask for
- 6.13 Project 4 brief: the Kirkgate Site plugin
- 6.14 Project 4 solution part 1: post types, taxonomies and the shortcode
- 6.15 Project 4 solution part 2: REST route, settings and coding standards pass
- 6.16 Module 6 recap and tutoring reminder
- Module 6 worksheet
- Module 6 check (quiz)
-
Module 7: Addon development, part 1: widgets · 16 lessons
- 7.0 Module intro and version check
- 7.1 The Elementor developer docs map and what the API covers in Elementor 4
- 7.2 Why there is no atomic element API yet, and what that means for your addon
- 7.3 The addon plugin skeleton and compatibility checks
- 7.4 Your first widget: name, title, icon, category and keywords
- 7.5 Controls: text, select, switcher, URL and media
- 7.6 Style controls, selectors and the wrapper
- 7.7 Group controls and responsive controls
- 7.8 Repeater controls: the Opening Hours widget
- 7.9 Rendering safely: escaping every output
- 7.10 Scripts and styles per widget: script and style dependencies
- 7.11 A frontend JS handler for your widget
- 7.12 Testing in both editors and with WP_DEBUG on
- 7.13 Translation-ready strings and the text domain
- 7.14 Module 7 recap
- Module 7 worksheet
- Module 7 check (quiz)
-
Module 8: Addon development, part 2: tags, forms and conditions · 17 lessons
- 8.0 Module intro and version check
- 8.1 Dynamic tags: how they work and how they reach atomic elements
- 8.2 Building the Next workshop date tag
- 8.3 An options page and the Studio setting tag
- 8.4 The Pro Forms API: what you can add to the classic form
- 8.5 A custom form action: Send to CRM
- 8.6 Errors, timeouts and logging for remote calls
- 8.7 A custom form field: UK postcode with validation
- 8.8 Atomic Forms: using the webhook with your own REST endpoint
- 8.9 Theme Builder conditions: Studio Club member
- 8.10 Theme locations and other useful hooks
- 8.11 Keeping an addon alive: deprecations, releases and the changelog
- 8.12 Project 5 brief: Studio Widgets v1.0.0
- 8.13 Project 5 solution part 1: widgets, tags and the settings page
- 8.14 Project 5 solution part 2: form action, field, condition and release
- 8.15 Module 8 recap and live class 1
- Module 8 worksheet
- Module 8 check (quiz)
-
Module 9: Advanced dynamic data · 15 lessons
- 9.0 Module intro and version check
- 9.1 Data modelling workshop: from brief to post types, fields and relationships
- 9.2 Secure Custom Fields: repeaters, flexible content and options pages
- 9.3 Showing repeater data: dynamic tags, your own widget or a loop
- 9.4 Relationships both ways: workshops and tutors
- 9.5 WP_Query in plain English
- 9.6 Custom queries with the Elementor query filter
- 9.7 Front-end filtering and search without a heavy plugin
- 9.8 Caching expensive queries with transients
- 9.9 Meta Box, JetEngine and ACF PRO: when to choose them
- 9.10 Project 6 brief: the Kirkgate workshops directory
- 9.11 Project 6 solution part 1: fields, sessions and the custom query
- 9.12 Project 6 solution part 2: filters, caching and the single template
- 9.13 Module 9 recap
- Module 9 worksheet
- Module 9 check (quiz)
-
Module 10: WooCommerce for UK stores · 13 lessons
- 10.0 Module intro and version check
- 10.1 How WooCommerce works: products, orders, HPOS and the block checkout
- 10.2 Installing WooCommerce and the setup choices that matter
- 10.3 UK VAT settings: tax classes, rates and prices including VAT
- 10.4 Shipping zones, classes and click and collect
- 10.5 Payments: WooPayments, Stripe and PayPal in test mode
- 10.6 Products: simple, variable, virtual and gift vouchers
- 10.7 UK consumer law for online shops: what the site must show
- 10.8 Selling digital products and courses to EU customers
- 10.9 Emails, stock and order statuses
- 10.10 Importing products with CSV and WP-CLI
- 10.11 Module 10 recap
- Module 10 worksheet
- Module 10 check (quiz)
-
Module 11: WooCommerce Builder · 17 lessons
- 11.0 Module intro and version check
- 11.1 Block checkout or Elementor checkout: making the decision
- 11.2 The single product template
- 11.3 Variable products, swatches and stock messages
- 11.4 Shop and category archives with filters
- 11.5 Product loops with the Atomic Loop and the classic Loop Grid
- 11.6 Cart and checkout with Elementor widgets
- 11.7 My Account and the purchase summary
- 11.8 Menu cart, notices and empty states
- 11.9 Upsells, cross-sells and related products without dark patterns
- 11.10 Store speed: cart fragments, caching rules and the checkout
- 11.11 Testing orders end to end and checking tracking after updates
- 11.12 Project 7 brief: the Kirkgate shop
- 11.13 Project 7 solution part 1: settings, products and product templates
- 11.14 Project 7 solution part 2: cart, checkout, account and test orders
- 11.15 Module 11 recap
- Module 11 worksheet
- Module 11 check (quiz)
-
Module 12: Memberships, courses and gated content · 18 lessons
- 12.0 Module intro and version check
- 12.1 Choosing a membership plugin, an LMS or both
- 12.2 Display Conditions, hide on device and real protection
- 12.3 Paid Memberships Pro: levels, checkout and restricting content
- 12.4 Restricting Elementor containers, templates and loops by level
- 12.5 Login, registration and account pages that stay secure
- 12.6 Member discounts in the shop
- 12.7 Tutor LMS: courses, lessons and quizzes
- 12.8 Designing course pages with the Tutor LMS Elementor addon
- 12.9 Selling a single course and giving members free access
- 12.10 LearnDash and other options: an overview
- 12.11 Onboarding emails with FluentCRM and the UK email rules
- 12.12 Caching and speed for logged-in members
- 12.13 Project 8 brief: Studio Club and online courses
- 12.14 Project 8 solution part 1: membership level, protection and account pages
- 12.15 Project 8 solution part 2: courses, discount and onboarding emails
- 12.16 Module 12 recap and live class 2
- Module 12 worksheet
- Module 12 check (quiz)
-
Module 13: Scaling and performance · 14 lessons
- 13.0 Module intro and version check
- 13.1 What changes when a site gets big
- 13.2 Page cache, object cache and when each helps
- 13.3 Redis object cache on your host
- 13.4 CDN and Cloudflare: what is cached and what is not
- 13.5 Images at scale: sizes, formats and offloading
- 13.6 Database hygiene: autoload, transients, revisions and cron
- 13.7 Finding slow queries and slow hooks with Query Monitor
- 13.8 Elementor at scale: classes, components and template governance
- 13.9 Multisite and multilingual sites with Elementor
- 13.10 Load testing safely on staging
- 13.11 Uptime and performance monitoring
- 13.12 Module 13 recap
- Module 13 worksheet
- Module 13 check (quiz)
-
Module 14: Security and reliability · 15 lessons
- 14.0 Module intro and version check
- 14.1 How WordPress sites really get attacked
- 14.2 Hardening: users, roles, two-factor and file editing
- 14.3 Firewalls, vulnerability alerts and update discipline
- 14.4 Reviewing plugin code for the common flaws
- 14.5 Fixing broken access control, XSS and SQL injection
- 14.6 Backups, restore drills and rollback plans
- 14.7 Incident response and malware clean-up
- 14.8 Staging, deployment checklists and safe updates
- 14.9 Your responsibilities: the EU Cyber Resilience Act and UK rules
- 14.10 Project 9 brief: the Aireside Lettings rescue
- 14.11 Project 9 solution part 1: security fixes and hardening
- 14.12 Project 9 solution part 2: database, caching, monitoring and report
- 14.13 Module 14 recap
- Module 14 worksheet
- Module 14 check (quiz)
-
Module 15: Agency systems · 15 lessons
- 15.0 Module intro
- 15.1 Discovery and scoping that protect your margin
- 15.2 Pricing models: fixed, value and retainers
- 15.3 Writing a proposal and statement of work
- 15.4 Contracts, IP assignment, licences and the GPL
- 15.5 Data processing terms when you host or maintain sites
- 15.6 Reusable starter kits: plugins, kits and a base addon
- 15.7 QA checklists: browsers, accessibility, performance budgets and code
- 15.8 Documentation and client training systems
- 15.9 Care plans and maintenance reporting
- 15.10 Running the business: MTD, VAT, IR35 and insurance basics
- 15.11 Project 10 brief: the Kirkgate agency pack
- 15.12 Project 10 solution: proposal, starter kit, QA and care plan
- 15.13 Module 15 recap and live class 3
- Module 15 worksheet
- Module 15 check (quiz)
-
Module 16: Capstone, assessment and next steps · 12 lessons
- 16.0 Module intro
- 16.1 The capstone brief, criterion by criterion
- 16.2 The Kirkgate reference build marked against the rubric
- 16.3 Preparing your repository for code review
- 16.4 Presenting your capstone live
- 16.5 The online quiz: how it works and how to revise
- 16.6 The live practical test: the format and the 12 points
- 16.7 A practice run of the live practical test: Saltmarsh Kayak Hire
- 16.8 Turning your capstone and addon into portfolio pieces
- 16.9 Where next: specialising, publishing a plugin and staying current
- Module 16 worksheet
- Live practical test: candidate guide
- Module 16 check (quiz)
-
Online quiz (assessment part 1) · 0 lessons
- Online quiz (assessment part 1) (quiz)
-
Online quiz re-sit (Version B) · 0 lessons
- Online quiz re-sit (Version B) (quiz)