Web Development Tutorials

Web Development Tutorials

Practical web-dev,
one tutorial at a time.

NdrieL is a web-development tutorials site — clear, step-by-step guides for WordPress, PHP and Laravel, each one worked through from the first line of code to a result you can run. No fluff — just the steps that work.

WordPress PHP Laravel MySQL Apache
//

Start here

New to the stack? Work through these in order — from setup to a running app.

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
//

Tutorial series

Multi-part arcs — each series builds one topic step by step. Follow the parts in order.

//

Latest tutorials

Database Administration

Add a Generated Column in MySQL

A generated column holds a value MySQL computes from the rest of the row, so it can never drift out of step. This tutorial…

August 28, 2026

Database Administration

Store and Query JSON Data in MySQL

Use the JSON column type to store documents MySQL actually understands. This tutorial inserts JSON, reads keys with JSON_EXTRACT and the ->> shorthand, edits…

August 27, 2026

Database Administration

Rank Rows With ROW_NUMBER and RANK in MySQL

Number and rank rows in MySQL with the ROW_NUMBER, RANK and DENSE_RANK window functions. Learn how PARTITION BY restarts the count per group, how…

August 27, 2026

Programming

Add a Block Style Variation in WordPress

register_block_style adds a named look to a block that already exists, without writing a new block at all. WordPress applies an is-style-* class when…

August 19, 2026

Programming

Register a Block Pattern in WordPress

register_block_pattern stores a ready-made arrangement of blocks, while register_block_pattern_category gives it a home in the inserter. The content is ordinary block markup copied out…

August 19, 2026

Programming

Add Settings Controls to a Gutenberg Block

Attributes in block.json declare what a block stores, then InspectorControls moves the fields into the editor sidebar where authors expect them. PanelBody groups the…

August 18, 2026

Programming

Create a Custom Gutenberg Block Without a Build Step

register_block_type reads a block.json file and wp.blocks.registerBlockType describes the block in plain JavaScript. Because wp.element.createElement replaces JSX, there is no compiler in the loop…

August 18, 2026

//

Most read

2 1,808 views
3 1,784 views
4 1,484 views
5 1,395 views
6 1,271 views
//

Browse by topic