• Define allowedBlocks outside of JSX for useInnerBlocksProps function


    Recently I stumbled upon an interesting issue when working on a Block. I used the useInnerBlocksProps hook to manage the InnerBlocks and every time I deselected the Block I got the following error: Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of […]

  • I’m speaking at the WordPress-Meetup Stuttgart (Online)

    I am happy to announce that I will be giving a presentation about building custom Gutenberg Block and how to choose between all of the various options of creating great user experiences for clients in the WordPress block editor. The Presentation will happen on May 12th at 7pm CET. (it will be happening in German) […]

  • WordCamp Prague 2020


    In February 2020 I got to attend my first ever WordCamp. A friend of mine and myself were asked wether we could give a Workshop at WordCamp Prague 2020 about building custom Gutenberg Blocks. And of course the answer had to be yes. I took my brother with me to Prague and spend the weekend […]

  • Enqueueing using the from @wordpress/scripts generated .deps.json dependencies [UPDATED for .asset.php]

    , , ,

    When using the @wordpress/scripts package, it will automatically create a .deps.json file for every JavaScript entrypoint. This file contains a list of all the WordPress JavaScript dependencies used in it and in all the file it imports. Therefore it really simplifies keeping track all of the dependencies of a script. But the question that quickly […]

  • .map vs .forEach – what's the difference?


    Another thing that I realised later than I probably should have was: Why do .map and .forEach even both exist ? In my mind they were both just useful when wanting to iterate over every single item inside an Array with no easy ability to stop in between 🛑. But one day while working with […]