SlideShare a Scribd company logo
Jonathan Bossenger
Let’s Code
Learn.WordPress.org
Developing Blocks without React! - Part 1
2
👋🏽
Welcome!
As you join, please get
your local WordPress
install ready:
Make sure you have your local development
environment ready:
• A local WordPress installation
• A code editor like VSCode or Sublime
Then, let everyone know in the chat where you’re
joining us from…
Hello!
○ My name is Jonathan Bossenger
○ From Cape Town, South Africa
○ Ex-developer turned code instructor
○ Sponsored contributor at Automattic
○ @jon_bossenger in Twitter
Learn.WordPress.org
Let's code!
Developing Blocks
without React!
Jonathan Bossenger
Announcements
○ Welcome!
○ We’ll be presenting in focus mode, but please consider enabling your video.
○ You are welcome to ask questions.
○ You are welcome to unmute to ask questions, or post them in the chat.
Announcements
○ Please consider taking the Learn WordPress Learner Survey
• https://learn.wordpress.org/individual-learner-survey/
○ Make sure your local install is ready
○ If I am going too fast, please let me know!
○ We will be posting this session to https://wordpress.tv/ afterwards
○ For more WordPress focused content please visit https://learn.wordpress.org/
Learning Outcomes
1. Why you might want to develop plain JavaScript blocks
2. Review the structure of a simple React/JSX block
3. Develop the same WordPress block without React
• Build the basic block
• Add some styling to the block
4. Compare the differences between JSX and JavaScript based blocks
Objectives 1
1. Create a new empty plugin
2. Create the minimum required files to develop a block
a. Configure block.json
b. Main plugin file to register the block
c. Create block.js file to handle the block’s edit and save functionality
d. Create asset file to manage the block dependencies
7
Objectives 2
1. Add useBlockProps support
a. Add the wp-block-editor dependency
2. Apply blockProps to the edit and save functions
3. Create editor.css and style.css files for some basic styling
4. Configure editor.css and style.css in block.json
8
Why Plain JavaScript Blocks?
○ Pros
• No need to install Node.js/npm
⁃ https://learn.wordpress.org/tutorial/using-the-create-block-tool/
⁃ No need for a build step
⁃ No need to worry about node_modules directory
○ Cons
• Code is more “complicated”
• Requires more manual work
10
Let’s code.
Resources
○ https://learn.wordpress.org/individual-learner-survey/
○ https://learn.wordpress.org/tutorial/using-the-create-block-tool/
○ https://developer.wordpress.org/block-editor/how-to-guides/block-tutorial/
○ https://github.com/WordPress/gutenberg-examples
○ https://developer.wordpress.org/block-editor/how-to-guides/javascript/scope-your-
code/
○ https://developer.wordpress.org/resource/dashicons/
Resources 2
○ Packages
• https://developer.wordpress.org/block-editor/reference-
guides/packages/packages-blocks/
• https://developer.wordpress.org/block-editor/reference-
guides/packages/packages-element/
• https://developer.wordpress.org/block-editor/reference-
guides/packages/packages-block-editor/

More Related Content

PPT
Medical PowerPoint Template - Medical PPT Template
PDF
2021 WORLD HUMANITARIAN DAY
PPT
Language for Advice and Suggestions - why don't you.../ have you tried.../ yo...
DOCX
A1 - Heute ist alles erlaubt - Modalverb : dürfen / Menschen A1- Lektion 21
PDF
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...
PPTX
Getting Started with Python and Machine Learning for SEO | BrightonSEO Octobe...
PPTX
Data Visualization for SEO
PPTX
UND DEINE FAMILIE? Wortschatz zum Thema Familie A1 - B2
Medical PowerPoint Template - Medical PPT Template
2021 WORLD HUMANITARIAN DAY
Language for Advice and Suggestions - why don't you.../ have you tried.../ yo...
A1 - Heute ist alles erlaubt - Modalverb : dürfen / Menschen A1- Lektion 21
An SEO's Guide to Website Migrations | Faye Watt | BrightonSEO's Advanced Tec...
Getting Started with Python and Machine Learning for SEO | BrightonSEO Octobe...
Data Visualization for SEO
UND DEINE FAMILIE? Wortschatz zum Thema Familie A1 - B2

Similar to Developing Blocks without React - Part 1 (20)

PPTX
Developing Blocks without React - Part 2.pptx
PPTX
Developing Blocks without React - Part 2
PPTX
Developing Blocks without React - Attributes.pptx
PPTX
Developing Blocks without React - Block Supports.pptx
PDF
Demystifying Gutenberg Blocks - Understanding the first steps to becoming a G...
PPTX
Developing Blocks without React - Controls.pptx
PPTX
Custom gutenberg block development with React
PPTX
The WordPress Create Block tool
PPTX
Custom gutenberg block development in react
PDF
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...
PPTX
Fastest Way of Creating Gutenberg Blocks - WordCamp Rochester
PDF
Building your first Gutenberg block
PPTX
Using Block Patterns in your Block Theme.pptx
PPTX
Build a better(reactive) word press
PDF
Slightly Advanced Topics in Gutenberg Development
PDF
Gutenberg (WidgiLabs Training Sessions)
PPTX
ReactJS with WordPress Headless Approach
PDF
Why Javascript matters
PPTX
Building WordPress sites with AngularJS and the RESTful plugin JSON API @ Dev...
PPT
5-Best-Programming-Languages-Used-For-WordPress-Development.ppt
Developing Blocks without React - Part 2.pptx
Developing Blocks without React - Part 2
Developing Blocks without React - Attributes.pptx
Developing Blocks without React - Block Supports.pptx
Demystifying Gutenberg Blocks - Understanding the first steps to becoming a G...
Developing Blocks without React - Controls.pptx
Custom gutenberg block development with React
The WordPress Create Block tool
Custom gutenberg block development in react
Beginner's Guide to Frontend Development: Comparing Angular, React, Ember, an...
Fastest Way of Creating Gutenberg Blocks - WordCamp Rochester
Building your first Gutenberg block
Using Block Patterns in your Block Theme.pptx
Build a better(reactive) word press
Slightly Advanced Topics in Gutenberg Development
Gutenberg (WidgiLabs Training Sessions)
ReactJS with WordPress Headless Approach
Why Javascript matters
Building WordPress sites with AngularJS and the RESTful plugin JSON API @ Dev...
5-Best-Programming-Languages-Used-For-WordPress-Development.ppt
Ad

More from Jonathan Bossenger (20)

PPTX
New WordPress Developer APIs The Interactivity API
PPTX
The WordPress HTML API
PPTX
PHP compatibility testing with PHPCompatibilityWP
PPTX
Common WordPress APIs_ Settings API
PPTX
Common WordPress APIs - Options API
PPTX
Common WordPress APIs_ HTTP API.pptx
PPTX
Common WordPress APIs: Metadata
PPTX
What’s new for developers_ (August 2023).pptx
PPTX
Testing your plugins for PHP version compatibility
PPTX
Common WordPress APIs_ Global Variables
PPTX
Common WordPress APIs_ Internationalization
PPTX
Testing WordPress 6.3 - Developer edition
PPTX
Common WordPress APIs: Responsive Images
PPTX
Common WordPress APIs - Dashboard Widgets
PPTX
Custom Tables in WordPress
PPTX
The WordPress Database
PPTX
WordPress Coding Standards
PPTX
Managing a WordPress Multisite Network
PPTX
Debugging in WordPress
PPTX
Testing plugins for PHP 8
New WordPress Developer APIs The Interactivity API
The WordPress HTML API
PHP compatibility testing with PHPCompatibilityWP
Common WordPress APIs_ Settings API
Common WordPress APIs - Options API
Common WordPress APIs_ HTTP API.pptx
Common WordPress APIs: Metadata
What’s new for developers_ (August 2023).pptx
Testing your plugins for PHP version compatibility
Common WordPress APIs_ Global Variables
Common WordPress APIs_ Internationalization
Testing WordPress 6.3 - Developer edition
Common WordPress APIs: Responsive Images
Common WordPress APIs - Dashboard Widgets
Custom Tables in WordPress
The WordPress Database
WordPress Coding Standards
Managing a WordPress Multisite Network
Debugging in WordPress
Testing plugins for PHP 8
Ad

Recently uploaded (20)

PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Big Data Technologies - Introduction.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Electronic commerce courselecture one. Pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Cloud computing and distributed systems.
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Big Data Technologies - Introduction.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Electronic commerce courselecture one. Pdf
NewMind AI Weekly Chronicles - August'25-Week II
Review of recent advances in non-invasive hemoglobin estimation
Per capita expenditure prediction using model stacking based on satellite ima...
A comparative analysis of optical character recognition models for extracting...
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Cloud computing and distributed systems.
Unlocking AI with Model Context Protocol (MCP)
The Rise and Fall of 3GPP – Time for a Sabbatical?
MIND Revenue Release Quarter 2 2025 Press Release
“AI and Expert System Decision Support & Business Intelligence Systems”
Spectral efficient network and resource selection model in 5G networks
Digital-Transformation-Roadmap-for-Companies.pptx

Developing Blocks without React - Part 1

  • 2. 2 👋🏽 Welcome! As you join, please get your local WordPress install ready: Make sure you have your local development environment ready: • A local WordPress installation • A code editor like VSCode or Sublime Then, let everyone know in the chat where you’re joining us from… Hello! ○ My name is Jonathan Bossenger ○ From Cape Town, South Africa ○ Ex-developer turned code instructor ○ Sponsored contributor at Automattic ○ @jon_bossenger in Twitter
  • 4. Announcements ○ Welcome! ○ We’ll be presenting in focus mode, but please consider enabling your video. ○ You are welcome to ask questions. ○ You are welcome to unmute to ask questions, or post them in the chat.
  • 5. Announcements ○ Please consider taking the Learn WordPress Learner Survey • https://learn.wordpress.org/individual-learner-survey/ ○ Make sure your local install is ready ○ If I am going too fast, please let me know! ○ We will be posting this session to https://wordpress.tv/ afterwards ○ For more WordPress focused content please visit https://learn.wordpress.org/
  • 6. Learning Outcomes 1. Why you might want to develop plain JavaScript blocks 2. Review the structure of a simple React/JSX block 3. Develop the same WordPress block without React • Build the basic block • Add some styling to the block 4. Compare the differences between JSX and JavaScript based blocks
  • 7. Objectives 1 1. Create a new empty plugin 2. Create the minimum required files to develop a block a. Configure block.json b. Main plugin file to register the block c. Create block.js file to handle the block’s edit and save functionality d. Create asset file to manage the block dependencies 7
  • 8. Objectives 2 1. Add useBlockProps support a. Add the wp-block-editor dependency 2. Apply blockProps to the edit and save functions 3. Create editor.css and style.css files for some basic styling 4. Configure editor.css and style.css in block.json 8
  • 9. Why Plain JavaScript Blocks? ○ Pros • No need to install Node.js/npm ⁃ https://learn.wordpress.org/tutorial/using-the-create-block-tool/ ⁃ No need for a build step ⁃ No need to worry about node_modules directory ○ Cons • Code is more “complicated” • Requires more manual work
  • 11. Resources ○ https://learn.wordpress.org/individual-learner-survey/ ○ https://learn.wordpress.org/tutorial/using-the-create-block-tool/ ○ https://developer.wordpress.org/block-editor/how-to-guides/block-tutorial/ ○ https://github.com/WordPress/gutenberg-examples ○ https://developer.wordpress.org/block-editor/how-to-guides/javascript/scope-your- code/ ○ https://developer.wordpress.org/resource/dashicons/
  • 12. Resources 2 ○ Packages • https://developer.wordpress.org/block-editor/reference- guides/packages/packages-blocks/ • https://developer.wordpress.org/block-editor/reference- guides/packages/packages-element/ • https://developer.wordpress.org/block-editor/reference- guides/packages/packages-block-editor/

Editor's Notes

  • #2: TITLE SLIDE: Make a copy of this presentation to your Google Drive, and edit to replace with your details.