Day 10 – WordPress Roadmap

Prompt 10/20

Blog: Check out the WordPress Roadmap. What upcoming WordPress projects are you most excited to see happen? Post your response on a WordPress website and link it in the comments.

For me, that would be Interactivity API. Now, I am not the biggest fan of React. I don’t really get it (or have really found many solid use cases where it would be necessary). I feel it’s bloated and delivers a degraded experience for end users, especially those on low powered devices. It also adds a ton of overhead for stuff we get for free like the back button.

I realise the slight irony here as I am using the WordPress editor to write this, powered by React. There I will give it its dues. It makes sense in a context like this, we want state, we want reactivity. For rendering some text on a page…..less so.

That’s a helluva long way of stating I for one am looking forward to the Interactivity API. I don’t fully understand it, but something tells me this is likely to be huge. The ability to add interactivity via an API and not some huge framework coming down the pipe seems like a sensible and powerful addition to the WordPress toolkit. In particular these goals of the project please and excite me:

The main goal of the Interactivity API is to provide a standard and simple way to handle the frontend interactivity of Gutenberg blocks.

Block-first and PHP-first

Declarative and reactive: The API must use declarative code, listen to changes in the data, and update only the parts of the DOM that depend on that data.

Performant: The runtime must be fast and lightweight to ensure the best user experience.

PHP wooooo!

Additionally the code example is something that makes sense to this ageing front-end developers brain.


// view.js file
import { store } from "@wordpress/interactivity";
 
store({
  actions: {
    toggle: ({ context }) => {
      context.isOpen = !context.isOpen;
    },
  },
});

<!-- Render.php file -->
 
<div data-wp-context="{ 'isOpen': true }">
  <button
    data-wp-on.click="actions.toggle"
    data-wp-bind.aria-expanded="context.open"
    aria-controls="p-1"
  >
    Toggle
  </button>
 
  <p id="p-1" data-wp-show="context.isOpen">
    This element is now visible!
  </p>
</div>

I personally use ACF for developing blocks, and although I don’t know what they think about this. I don’t see why it would not be possible to increate this into ACF PRO blocks

Check out the demo, it might be simple but through in something like the Page Transition API and I feel we can get an app like experience with these two APIs.

Day 9 – favorite memory

Prompt 9/20

Tell us about your favorite memory that includes WordPress or the WordPress community. Post your response on a WordPress website and link it in the comments.

There are many, but one stands out more than others.

When I used to work at an agency, we once had a meeting at a large financial institution and a request was made from one high-flying trader:

‘Our blog (WordPress) …. can we turn it into a book’

Well as it happened my colleague had previously worked on something that would take a HTML file and output a PDF. I had contributed some of the code, mostly around theming and CSS (we used a library called PrinceXML that allowed you to use HTML & CSS to generate the PDF).

So we were able to say with pretty high confidence, yes, yes we can make a book out of your blog.

And so it happened; we set up a special WordPress template to output the entire blog in one page, saved it as .html and then put it through Bookler to generate a PDF. With that we could take it to something like Lulu and get back a paperback book delivered. I had to figure out how to get an ISBN, but managed that somehow.

It’s even, and I have no idea how, present on Amazon.

Photo of the inside of a book generated from a blog

Day 8 – Strangest places ✈️

Prompt 8/10

Blog: Tell us about the strangest, most interesting, or otherwise noteable place you’ve done WordPress-related things. Post your response on a WordPress website and link it in the comments.

Well, it’s Heathrow airport, twice.

First time was a colleague of mine, Mark, finishing the company website refresh (migrating away from Movable Type) on the coach journey to Heathrow alongside the rest of the company, when we got wifi in Terminal 5 he was able to deploy it. Then board a plane.

The second…..was also Heathrow Airport on the way to a client workshop in Texas. Another client, even though was explicitly told *we would be on a plane for several hours* had an urgent bug so I had to fix it and deploy it over 3G in a pub in Heathrow. Then board a plane.

2024 2023 2022 2021 2020 2019 2017 2016 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004