No camera, no studio: how we show what a plugin actually does
Since September we have been producing short videos about WordPress features. No camera, no microphone, no editing software. What runs instead: a real WordPress that operates itself, a cloned voice and a few hundred lines of script. Here is the whole setup, including the places where it hits a wall.
Describing a plugin is hard. You can write that an ad appears after the fourth paragraph, or you can show it in twelve seconds. The second is better and used to be too expensive for us.
Video meant: record the screen, speak, edit, and start over at the smallest mistake. Across ten plugins in seven languages that becomes a full-time job. Since September it works differently.
The WordPress operates itself
Recordings do not happen on a machine with a person at it. They happen in WordPress Playground, a full WordPress installation that runs in the browser without a server, driven by Playwright, the tool normally used for testing web interfaces.
A recording script does this: start a fresh WordPress, install the plugin from the directory, create sample content, click through the interface, record the screen. What you end up seeing is not a re-enactment and not a mockup. It is the interface anyone gets on install, in the build that currently sits in the directory.
The real gain is not the first recording but the second. When a settings screen changes, the same script runs again. No reshoot, no hunting for the old window position. This is exactly where most product videos fail: they show a version that stopped existing eighteen months ago.
The voice, and why that is a disclosure question
Nobody speaks into a microphone. The voice is cloned from our own recordings and generated through a cloud service.
This is the point where you are either honest or you explain it later. The EU AI Act requires transparency for content that reproduces a person. A cloned voice is precisely that, even when it is your own and the consent comes from the speaker himself. So it goes in the description of every video.
That comes with a second, less comfortable clause: where the voice is generated. A template of ours claimed for a while that the voice was produced locally on our own machine. It was not, it comes from a cloud provider. Sentences like that slip through because they sound good. They still need correcting.
The edit is a text file
Editing runs through ffmpeg. No timeline, no preview window. One file describes which segment plays when, where text appears and when the end card comes. A script builds the finished video from it: 1080 by 1920, burnt-in subtitles, a five-second outro.
A side effect: checking is also a script. One tool looks for frame holes, places where part of the picture stays blank because a recording did not load cleanly. A human reliably stops seeing those on the third viewing. In one short, the checker found a hole 0.7 seconds long covering 21 percent of the frame.
What does not work
Three things that make this setup expensive:
- Corrections are rebuilds. YouTube does not replace a video file. Changing something after upload means uploading again and losing the views on the old one. That enforces discipline before publishing.
- The content ages faster than the picture. One of our videos says a plugin creates exactly one table with five columns. For the build published at the time, true. One version later it is three tables. The footage is still right, the sentence is not.
- Automated does not mean finished. A short that feels like a script does not get watched to the end. The work moves from editing into pacing, it does not disappear.
What is public so far
Two channels, one English, one German. The longer videos walk through a task start to finish, the shorts show a single feature. Why the channels exist is covered in the post on our YouTube channel launch.
- Placing your own offer inside a post (4:02), and the German version, with the steps written out in the post that goes with the video
- Switching themes, measured (3:53), with the numbers behind it in our theme switch case study
- Two ad versions in a split test (49 seconds)
- Do your ads wait for the cookie banner? (50 seconds)
- Moving from Advanced Ads or Ad Inserter without rebuilding your ads (41 seconds)
These are links, not embeds, and that is deliberate. An embedded player opens connections to Google the moment the page loads, long before anyone presses play. If you write that tracking before consent is a problem, you should not be shipping it yourself.
Why write this down at all
Because the setup is reproducible. Playground, Playwright and ffmpeg are freely available, the rest is legwork. Anyone with their own plugin or theme facing the same question needs neither a studio nor an agency, just an afternoon and a willingness to throw the first result away.
And because the tidied-up version, the one without the three paragraphs about what fails, would be no use to anybody.
Frequently asked questions
How do you record a WordPress interface automatically?
Through WordPress Playground, a build of WordPress that runs entirely in the browser, driven by Playwright. The script installs the plugin from the directory, creates sample content, clicks through the interface and records the screen while doing it. The advantage over recording by hand is repeatability: when the plugin changes, the same script runs again and produces the same recording with the current build.
Do you have to disclose an AI voice in a video?
The EU AI Act sets transparency duties for content that imitates a person or could pass as genuine. A cloned voice falls under that, even when it is your own. We put it in the video description rather than relying on how a clause might be read. One more thing has to be accurate: where the voice is generated. If the service runs in the cloud, "generated locally" is simply false.
How long should a YouTube Short about a WordPress plugin be?
Ours run between 41 and 56 seconds. The length follows the content rather than a rule: one feature, one screen, one result. Shorter gets frantic, longer loses the point. More important than the second count is that the problem is visible in the first three seconds, not the logo.
Why do you link the videos instead of embedding them?
Because an embedded player opens connections to Google before anyone has pressed play. We write elsewhere about tracking that fires before consent being a widespread problem, so we do not build it into our own pages. A link does the same job without the page loading anything.