Skip to content
Begin2Code

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

  1. 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)
  2. 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)
  3. 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)
  4. 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)
  5. 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)
  6. 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)
  7. 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)
  8. 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)
  9. 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)
  10. 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)
  11. 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)
  12. 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)
  13. 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)
  14. 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)
  15. 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)
  16. 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)
  17. Online quiz (assessment part 1) · 0 lessons
    • Online quiz (assessment part 1) (quiz)
  18. Online quiz re-sit (Version B) · 0 lessons
    • Online quiz re-sit (Version B) (quiz)