he pattern is the same as the JavaScript fixes: <strong>stop describing the admin, start describing your block.</strong> A selector that names <code>.wp-admin</code>, <code>#wpadminbar</code>, or <code>.block-editor-page</code> is reaching for chrome that isn&#8217;t in the canvas document anymore.</li>\n\n\n\n<li>Most of these were <em>workarounds for problems the iframe solves.</em> Deleting them is usually the fix.</li>\n</ul>\n\n\n\n<h3 class=\"wp-block-heading\">5. Third-party libraries that assume one global context</h3>\n\n\n\n<p class=\"wp-block-paragraph\">The biggest real-world hazard. Masonry layouts, sliders, lightboxes, maps — a generation of libraries was written assuming there is exactly one <code>document</code>:</p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\"><span style=\"display: flex; padding: 10px 0px 0 16px; font-size: 0.8em; width: 100%; text-align: left; background-color: #1E1E1E; font-style: italic; color: #D4D4D4;\"><span>JavaScript</span></span><span class=\"code-block-pro-copy-button\" style=\"color: #D4D4D4; display: none;\" tabindex=\"0\"><pre class=\"code-block-pro-copy-button-pre\"><textarea class=\"code-block-pro-copy-button-textarea\" readonly=\"readonly\" tabindex=\"-1\">// Inside some-legacy-lib.js\nconst targets = document.querySelectorAll( selector ); // finds nothing in the iframe</textarea></pre><svg fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path class=\"with-check\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path><path class=\"without-check\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg></span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E;\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #6A9955;\">// Inside some-legacy-lib.js</span></span>\n<span class=\"line\"><span style=\"color: #569CD6;\">const</span><span style=\"color: #D4D4D4;\"> </span><span style=\"color: #4FC1FF;\">targets</span><span style=\"color: #D4D4D4;\"> = </span><span style=\"color: #9CDCFE;\">document</span><span style=\"color: #D4D4D4;\">.</span><span style=\"color: #DCDCAA;\">querySelectorAll</span><span style=\"color: #D4D4D4;\">( </span><span style=\"color: #9CDCFE;\">selector</span><span style=\"color: #D4D4D4;\"> ); </span><span style=\"color: #6A9955;\">// finds nothing in the iframe</span></span></code></pre></div>\n\n\n\n<p class=\"wp-block-paragraph\">Your block calls the library, the library queries the admin document, finds zero matches, and silently does nothing. No error, no warning — the block just stops being enhanced.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Your options, in order of preference:</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Pass elements, not selectors.</strong> If the library accepts an element (<code>lib.init( element )</code>), hand it the block&#8217;s element from <code>useRefEffect</code> and you&#8217;re usually fine.</li>\n\n\n\n<li><strong>Patch the library.</strong> For unmaintained dependencies, <a href=\"https://www.npmjs.com/package/patch-package\" rel=\"noopener\" target=\"_blank\"><code>patch-package</code></a> is the pragmatic answer: edit the module in <code>node_modules</code> to resolve <code>document</code>/<code>window</code> from the element (<code>node.ownerDocument</code>), run <code>npx patch-package &lt;pkg&gt;</code>, commit the patch, add a <code>postinstall</code> script. The <a href=\"https://developer.wordpress.org/block-editor/reference-guides/block-api/block-api-versions/block-migration-for-iframe-editor-compatibility/\" rel=\"noopener\" target=\"_blank\">official migration guide</a> walks through a real patch for <code>@panzoom/panzoom</code>.</li>\n\n\n\n<li><strong>Guard and bail.</strong> If the library is loaded inside the iframe (front-end scripts are), check for it on <code>defaultView</code> before using it: <code>if ( ! defaultView.jQuery ) return;</code></li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">So what does <code>apiVersion: 3</code> actually do?</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Less than you might think — and that&#8217;s the point. Declaring <code>\"apiVersion\": 3</code> in <code>block.json</code> doesn&#8217;t change how your block renders; it&#8217;s a <strong>signal that your block is iframe-ready</strong>. All core blocks have been on v3 since WordPress 6.3. For most blocks the migration is literally a one-line change… followed by the actual work: testing that nothing in your <code>edit</code> component (or the libraries it pulls in) touches the global <code>document</code>/<code>window</code>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And to be clear about 7.1: the iframe will be enforced there <strong>regardless</strong> of <code>apiVersion</code>. Staying on v2 doesn&#8217;t opt you out anymore — it just means you get the console warning <em>and</em> the breakage.</p>\n\n\n\n<h2 class=\"wp-block-heading\">How to test today</h2>\n\n\n\n<p class=\"wp-block-paragraph\">You don&#8217;t need to wait for 7.1. What you&#8217;re testing is that your block works in <strong>both states</strong> — iframed and not — because both will exist in the wild for a while yet.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Iframed:</strong> install the <strong>Gutenberg plugin 22.6+</strong>. It enforces the iframe regardless of theme, so this is the fastest way to live in the future. <a href=\"https://wordpress.org/news/2026/07/wordpress-7-1-beta-1/\"><strong>7.1 Beta 1</strong> </a>does the same — I&#8217;ve confirmed it forces the iframe on a classic theme, which is the merged behavior shipping in August.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Not iframed:</strong> run <strong>WordPress 7.0 without the plugin</strong> and insert a v1/v2 block alongside yours — the canvas drops the iframe on the fly. <a href=\"https://github.com/ryanwelcher/iframe-editor-examples\">The companion plugin&#8217;s <code>legacy-api-v2</code> block exists for exactly this.</a> Any theme will do: core 7.0 has no theme check in the iframe decision at all, so you don&#8217;t need to hunt down a classic theme to reproduce this.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Confirm which state you&#8217;re in:</strong> <code>element.ownerDocument !== document</code>, or look for <code>iframe[name=\"editor-canvas\"]</code> in devtools.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The Site Editor</strong> has been iframed for years — if your block already behaves there, you&#8217;re most of the way home.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The companion plugin</strong> ships a <code>wp-env</code> setup, an example override file that adds Gutenberg for enforced mode (copy it to <code>.wp-env.override.json</code>), and <strong>two Playground blueprints</strong> — one per state, so you can flip between iframed and not in two tabs without installing anything.</p>\n\n\n\n<h2 class=\"wp-block-heading\">The block author&#8217;s checklist</h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Set <code>\"apiVersion\": 3</code> in every <code>block.json</code>.</li>\n\n\n\n<li>Check your editor code for <code>window.</code> and <code>document.</code> — every hit is a suspect. Replace with <code>element.ownerDocument</code> / <code>.defaultView</code> via <code>useRefEffect</code>.</li>\n\n\n\n<li>Check for <code>enqueue_block_editor_assets</code> — move canvas-affecting styles to <code>editorStyle</code> in <code>block.json</code>.</li>\n\n\n\n<li>Check your editor CSS for <code>.wp-admin</code>, <code>#wpadminbar</code>, and <code>.block-editor-page</code> , admin chrome offsets and <code>!important</code></li>\n\n\n\n<li>Audit third-party libraries: pass elements not selectors, patch what you must.</li>\n\n\n\n<li>Test both <strong>states</strong>, not both themes: iframed (Gutenberg 22.6+ active) and not iframed (no plugin, v1/v2 block inserted). </li>\n\n\n\n<li>Watch the console with <code>SCRIPT_DEBUG</code> on — the deprecation warnings tell you which registered blocks are still on v1/v2.</li>\n</ol>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Note What&#8217;s <em>not</em> on that list:</strong> checking whether the active theme is a block theme. Core exposes that answer twice — as <code>__unstableIsBlockBasedTheme</code> in the editor settings and as <code>is_block_theme</code> on the REST themes endpoint — and there&#8217;s a shelved PR and a live debate behind it. Your block never needs to ask. <code>element.ownerDocument !== document</code> answers the only version of the question that affects you. If you&#8217;re curious what that theme check does under the hood, that&#8217;s its own story: <a href=\"https://gutenbergtimes.com/how-wordpress-decides-a-theme-is-a-block-theme/\"><strong>How WordPress decides a Theme is a &#8220;Block theme&#8221;.</strong></a></p>\n\n\n\n<p class=\"wp-block-paragraph\">Resources</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://make.wordpress.org/core/2026/02/24/iframed-editor-changes-in-wordpress-7-0/\" rel=\"noopener\" target=\"_blank\">Iframed Editor Changes in WordPress 7.0</a> — the dev note this all builds on</li>\n\n\n\n<li><a href=\"https://github.com/WordPress/gutenberg/pull/74042\" rel=\"noopener\" target=\"_blank\">Post editor: always iframe (#74042)</a> — the merged PR that makes 7.1 always-iframed, and the discussion behind the beta-feedback plan</li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/06/19/roadmap-to-7-1/\" rel=\"noopener\" target=\"_blank\">Roadmap to 7.1</a> — the original block-themes-first plan, superseded by #74042</li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2025/11/12/preparing-the-post-editor-for-full-iframe-integration/\" rel=\"noopener\" target=\"_blank\">Preparing the Post Editor for Full iframe Integration</a> — the 6.9 groundwork</li>\n\n\n\n<li><a href=\"https://developer.wordpress.org/block-editor/reference-guides/block-api/block-api-versions/block-migration-for-iframe-editor-compatibility/\" rel=\"noopener\" target=\"_blank\">Migrating Blocks for iframe Editor Compatibility</a> — the official migration guide</li>\n\n\n\n<li><a href=\"https://developer.wordpress.org/block-editor/reference-guides/block-api/block-api-versions/\" rel=\"noopener\" target=\"_blank\">Block API Versions</a> — what each version means</li>\n\n\n\n<li><a href=\"https://developer.wordpress.org/block-editor/how-to-guides/enqueueing-assets-in-the-editor/\">Enqueueing editor assets</a></li>\n\n\n\n<li><a href=\"https://developer.wordpress.org/themes/core-concepts/including-assets/#editor-stylesheets\">Editor styles for themes</a></li>\n\n\n\n<li>Companion demo plugin: <a href=\"https://github.com/ryanwelcher/iframe-editor-examples\" rel=\"noopener\" target=\"_blank\">iframe-editor-examples</a></li>\n</ul>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Fri, 17 Jul 2026 16:21:43 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Ryan Welcher\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:16;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:53:\"Open Channels FM: Who Is Actually Using the Internet?\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2557053\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:59:\"https://openchannels.fm/who-is-actually-using-the-internet/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:168:\"A look at the impact of AI and bots on the web, emphasizing the decline of human engagement, the challenges for content creators, and the future of digital interaction.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Fri, 17 Jul 2026 13:41:01 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:17;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:95:\"Open Channels FM: Open Channels FM Launches Live News Show Focused on the Open Source Ecosystem\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556978\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:102:\"https://openchannels.fm/open-channels-fm-launches-live-news-show-focused-on-the-open-source-ecosystem/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:207:\"Open Channels FM is launching a new video news show called Open Channels News, starting July 27th. It\'s a quick, five to ten-minute program covering various open source topics, available live and on YouTube.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 16 Jul 2026 12:55:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:18;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:53:\"Akismet: A small integration detail with a big impact\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:28:\"http://akismet.com/?p=284827\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:70:\"https://akismet.com/blog/a-small-integration-detail-with-a-big-impact/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:1814:\"<p class=\"wp-block-paragraph\"><a href=\"https://givewp.com\">GiveWP</a> is the most popular fundraising and donation tool on WordPress, powering over $500 million in donations. It integrates with Akismet to ensure that spammy or potentially fraudulent submissions get filtered out. Recently, some Give users saw an unusually high level of false positives on their donation forms: legitimate donation submissions that were being marked as spam.</p>\n\n\n\n<p class=\"wp-block-paragraph\">We investigated and found that the donation forms were being sent to Akismet for checking after each step in the donation process: once after choosing an amount, again after the user entered their name, again after they entered an optional message, etc. To Akismet, this looks like sudden repeated submissions from the same user, all with similar content (better known as spam).</p>\n\n\n\n<p class=\"wp-block-paragraph\">Akismet supports rechecking content, but only if the integration includes <a href=\"https://akismet.com/developers/detailed-docs/comment-check/\">the <code>recheck_reason</code> parameter</a>. If that parameter is present, Akismet knows not to classify the repeated duplicate (or nearly duplicate) checks as part of a spam attack; however, if <code>recheck_reason</code> is omitted, this kind of consecutive similar content looks very similar to spam, and Akismet blocks it.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://github.com/impress-org/givewp/issues/8238\">We reported the root issue</a> to Liquid Web, and they quickly addressed it and released a fix in version 4.16.0. This kind of collaboration is what makes Open Source great!</p>\n\n\n\n<p class=\"wp-block-paragraph\">We&#8217;re planning on bringing automatic integration review to more clients and platforms, so stay tuned for more tips and insights.</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 15 Jul 2026 16:00:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:17:\"Christopher Finke\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:19;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:40:\"WordPress.org blog: WordPress 7.1 Beta 1\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"https://wordpress.org/news/?p=20987\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:56:\"https://wordpress.org/news/2026/07/wordpress-7-1-beta-1/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:17975:\"<p class=\"wp-block-paragraph\">WordPress 7.1 Beta 1 is ready for download and testing! </p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>This beta release is intended for testing and development</strong> only. Please do not install, run, or test this version of WordPress on production or mission-critical websites. Instead, use a test environment or local site to explore the new features.</p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Test WordPress 7.1 Beta 1</h2>\n\n\n\n<p class=\"wp-block-paragraph\">You can test WordPress 7.1 Beta 1 in any of the following ways:</p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>WordPress Beta Tester Plugin</strong></td><td>Install and activate the <a href=\"https://wordpress.org/plugins/wordpress-beta-tester/\" rel=\"noreferrer noopener\" target=\"_blank\">WordPress Beta Tester</a> plugin on a WordPress install. Select the “Bleeding edge” channel and “Beta/RC Only” stream.</td></tr><tr><td><strong>Direct Download</strong></td><td>Download the <a href=\"https://wordpress.org/wordpress-7.1-beta1.zip\">Beta 1 version (zip)</a> and install it on a WordPress website.</td></tr><tr><td><strong>Command Line (WP-CLI)</strong></td><td>Use this <a href=\"https://make.wordpress.org/cli/\" rel=\"noreferrer noopener\" target=\"_blank\">WP-CLI</a> command: <br /><code>wp core update --version=7.1-beta1</code></td></tr><tr><td><strong>WordPress Playground</strong></td><td>Use a <a href=\"https://playground.wordpress.net/?site-slug=kind-classic-mountain&amp;networking=no&amp;php=8.3&amp;wp=beta&amp;language=&amp;multisite=no\" rel=\"noopener\" target=\"_blank\">7.1 Beta 1 WordPress Playground instance</a> to test the software directly in your browser. No setup required-just click and go!</td></tr></tbody></table></figure>\n\n\n\n<p class=\"wp-block-paragraph\">The scheduled final release date for WordPress 7.1 is <strong>August 19, 2026</strong>. The full <a href=\"https://make.wordpress.org/core/2026/07/03/wordpress-7-1-release-party-schedule/\" rel=\"noopener\" target=\"_blank\">release schedule can be found here</a>. Your help testing Beta and RC versions is vital to making this release as stable and powerful as possible. Thank you to everyone who contributes by testing! </p>\n\n\n\n<h2 class=\"wp-block-heading\">How important is your testing?</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Testing for issues is a critical part of developing any software, and it’s a meaningful way for anyone to contribute – whether or not you have experience. <a href=\"https://make.wordpress.org/test/2026/07/15/help-test-wordpress-7-1/\">Details on what to test in WordPress 7.1 are available here</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you encounter an issue, please share it in the <a href=\"https://wordpress.org/support/forum/alphabeta/\" rel=\"noopener\" target=\"_blank\">Alpha/Beta area</a> of the support forums. If you are comfortable submitting a reproducible bug report, you can do so <a href=\"https://core.trac.wordpress.org/newticket\" rel=\"noopener\" target=\"_blank\">via WordPress Trac</a>. You can also check your issue against this list of <a href=\"https://core.trac.wordpress.org/tickets/major\" rel=\"noopener\" target=\"_blank\">known bugs</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Curious about testing releases in general and how to get started? Follow along with the<a href=\"https://make.wordpress.org/test/\"> testing initiatives in Make Core</a> and join the <a href=\"https://wordpress.slack.com/messages/core-test/\">#core-test channel</a> on <a href=\"https://wordpress.slack.com/\">Making WordPress Slack</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.1 will include new features that were previously only available in the Gutenberg plugin. Learn more about Gutenberg updates since WordPress 7.0 in the <a href=\"https://make.wordpress.org/core/tag/gutenberg-new/\">What’s New in Gutenberg</a> posts for versions <a href=\"https://make.wordpress.org/core/2026/03/11/whats-new-in-gutenberg-22-7-11-march/\">22.7</a>, <a href=\"https://make.wordpress.org/core/2026/03/25/whats-new-in-gutenberg-22-8-25-march/\">22.8</a>, <a href=\"https://make.wordpress.org/core/2026/04/09/whats-new-in-gutenberg-22-9-8-april/\">22.9</a>, <a href=\"https://make.wordpress.org/core/2026/04/22/whats-new-in-gutenberg-23-0-22-april/\">23.0</a>, <a href=\"https://make.wordpress.org/core/2026/05/07/whats-new-in-gutenberg-23-1-07-may/\">23.1</a>, <a href=\"https://make.wordpress.org/core/2026/05/21/whats-new-in-gutenberg-23-2-21-may/\">23.2</a>, <a href=\"https://make.wordpress.org/core/2026/06/03/whats-new-in-gutenberg-23-3-03-jun/\">23.3</a>, <a href=\"https://make.wordpress.org/core/2026/06/17/whats-new-in-gutenberg-23-3-03-jun-2/\">23.4</a>, <a href=\"https://make.wordpress.org/core/2026/07/01/whats-new-in-gutenberg-23-5-july-1-2026/\">23.5</a> and 23.6.</p>\n\n\n\n<h2 class=\"wp-block-heading\">What’s new in WordPress 7.1?</h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.1 delivers a more complete set of styling controls, a smoother media experience, and a more personalized admin experience. Notes have evolved to add inline notes with @mentions and rich text formatting that make asynchronous feedback feel more powerful. New styling features unlock long requested features to style how blocks look across screen sizes and to style interactive states, all without writing custom CSS. Various client side media improvements means better format support, improved performance, and more resilient uploads when adding media to your site. A new inline cropping tool brings a fresh and more robust experience to editing images. Finally, the admin experience becomes easier to navigate with an ever present admin bar in the editors, improvements to the command palette, and various quality of life improvements. Underneath it all, developers get an expanding set of APIs to build on, and site owners get better support for a truly global audience.</p>\n\n\n\n<h3 class=\"wp-block-heading\">New suite of Notes features</h3>\n\n\n\n<p class=\"wp-block-paragraph\">Notes continue to grow into a fuller collaboration experience, making asynchronous feedback between teams faster and more expressive.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Text Formatting</strong>: Notes now support inline formatting like bold, italic, code, links and adding emoji; each with a respective keyboard shortcut, so feedback reads clearly without breaking your flow.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>@mentions</strong>: Type &#8220;@&#8221; in a Note to pull up a searchable list of collaborators and tag someone directly, so feedback points at the right person without leaving the sidebar.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Leave notes anywhere</strong>: Start more than one conversation on the same block instead of folding every comment into a single thread, making it easier to track distinct pieces of feedback.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Inline notes:</strong> Leave a note on a text selection instead of on an entire block.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Show more / show less</strong>: Long notes now collapse by default with a toggle to expand them, keeping the margin tidy while you write.</p>\n\n\n\n<h3 class=\"wp-block-heading\">Style it your way, on any screen</h3>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.1 takes a major step toward built-in responsive design and interactive styling, letting you achieve looks that once required writing custom CSS.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Responsive styling</strong>: Define how a block looks at different screen sizes directly in the editor, for both Global Styles and individual blocks without the need of writing custom CSS.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Viewport breakpoint customization</strong>: Theme authors can now define their own responsive breakpoints in <code>theme.json</code>, giving more flexibility for how responsive controls behave on a given site.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Interactive state styling</strong>: Style how blocks respond to interaction, like a button changing color on hover or focus, using a standardized set of controls for both Global Styles and individual block instances.</p>\n\n\n\n<h3 class=\"wp-block-heading\">A smoother media experience</h3>\n\n\n\n<p class=\"wp-block-paragraph\">Uploading, editing, and browsing media keeps getting more capable and more reliable.</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Client-side media processing</strong>: Image and media processing moves into the browser, now with broader format support that includes HEIC (the default format for iPhone photos), UltraHDR, AVIF and WebP support built in, plus GIF-to-video conversion for lighter, more efficient files. Uploads are also more resilient, with a progress indicator and automatic retries if your data connectivity drops off.</li>\n\n\n\n<li><strong>New Media Editor Modal</strong>: A dedicated modal for editing images replaces the inline cropping tool, bringing cropping, rotation, and metadata editing together in one streamlined workflow.</li>\n\n\n\n<li><strong>Smarter galleries</strong>: Gallery blocks can automatically pull in and sort media already attached to the current post, cutting down on manual set-up.</li>\n\n\n\n<li><strong>View attached images:</strong> After you upload images to a post, the inserter will automatically surface them in a new Attached images section to make it easier to find relevant images.</li>\n\n\n\n<li><strong>Infinite scrolling by default</strong>: The Media Library grid view now loads additional items automatically as you scroll, rather than requiring a click on &#8220;Load more&#8221; especially handy for sites that handle large media libraries. This can be disabled under your user profile.</li>\n</ul>\n\n\n\n<h3 class=\"wp-block-heading\">A more personal, more navigable admin</h3>\n\n\n\n<p class=\"wp-block-paragraph\">These meaningful upgrades make the WordPress admin easier to move around in and more consistent with how you like to work.</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Persistent toolbar (Omnibar)</strong>: The admin toolbar now travels with you into the Site Editor and Block Editor, with a series of polish improvements throughout.</li>\n\n\n\n<li><strong>Command palette improvements</strong>: Moving through the dashboard and editor with the command palette <code>(Ctrl/Cmd+K)</code> is more refined to make finding what you need even faster! Now results are grouped into <em>Recent, matching and Suggestions</em> sections instead of one flat list.</li>\n\n\n\n<li><strong>Admin color scheme in the Site Editor</strong>: The Site Editor now reflects your chosen admin color scheme instead of always using a fixed background.</li>\n\n\n\n<li><strong>DataViews and DataForms iterations</strong>: Continued refinement of the components behind managing lists of posts, pages, patterns, and templates, alongside the forms used to edit them.</li>\n\n\n\n<li><strong>Excerpts in the Posts list</strong>: The Posts list view now shows a short excerpt for each entry, making it easier to identify the post you&#8217;re looking for without opening it.</li>\n\n\n\n<li><strong>Visual revisions</strong>: This release adds a picker activity layout for browsing history in more detail, clearly labeled autosaves in the timeline, and an autosave notice that opens straight into the visual revisions view. Global Styles revisions get a small polish too, swapping the <em>active</em> style&#8217;s text label for a badge.</li>\n\n\n\n<li><strong>A dedicated Identity section</strong>: Site identity settings like your title, tagline, and icon are now live in their own clearly labeled section of the Site Editor, making them easier to find and update.</li>\n\n\n\n<li><strong>On This Day Widget</strong>: A new widget resurfaces what you published on this date in past years, right on your dashboard. A small nudge to look back on what you&#8217;ve written, and a reason to write something new today.</li>\n\n\n\n<li><strong>Allow Changing Comment Parent:</strong> Fixing a misthreaded comment used to mean editing the database directly. WordPress 7.1 adds an editable &#8220;In reply to&#8221; control to the Edit Comment screen, letting you pick a new parent from a dropdown of the post&#8217;s other comments. It&#8217;s scoped to the same post, so this is about untangling threads, not moving comments across posts.</li>\n</ul>\n\n\n\n<h3 class=\"wp-block-heading\">New blocks and block-level enhancements</h3>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.1 release brings a handful of block refinements that give more control with fewer steps.</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Playlist Block:</strong> A new block for adding a collection of audio files to a post or page, with an optional waveform visualization that shows the audio&#8217;s shape as it plays; a more visual way to present podcasts, music, or audio content without using any third-party plugins.</li>\n\n\n\n<li><strong>Tabs Block:</strong> A new block for organizing content into clickable tabbed panels instead of showing everything at once. It&#8217;s a cleaner way to present related content without overwhelming the page.</li>\n\n\n\n<li><strong>Background gradients</strong>: Background gradients and background images no longer conflict. The gradient used to get silently overridden by the image, but now they combine and display together. This fix extends beyond the Group block to Verse, Accordion, Pullquote, Post Content, and Quote block.</li>\n\n\n\n<li><strong>HTML block editable content</strong>: The HTML block now supports editable nested blocks. This is great to use for AI-generated content, which often arrives as raw HTML.</li>\n\n\n\n<li><strong>&#8220;Mark as decorative&#8221; for images</strong>: A new toggle on the Image block lets you hide purely decorative images from screen readers for a better accessibility experience.</li>\n\n\n\n<li><strong>Smarter shortcode handling</strong>: Pasting or converting a shortcode into the Embed block now creates a proper Embed block instead of leaving raw shortcode text behind, and the Shortcode block gains block-specific transforms of its own.</li>\n</ul>\n\n\n\n<h3 class=\"wp-block-heading\">Built for a global audience</h3>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.1 continues work to make Core reflect the full diversity of its worldwide community, with progress toward supporting Unicode email addresses so usernames, slugs, and email addresses can better represent users everywhere.</p>\n\n\n\n<h3 class=\"wp-block-heading\">Built for developers</h3>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.1 continues to expand the foundation developers build on.</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Abilities API expansion</strong>: Continued refinement of the Abilities API with improved querying, filtering, and input validation, giving developers and AI tooling a more reliable foundation to build on.</li>\n\n\n\n<li><strong>Block Bindings for list items</strong>: Block Bindings now extend to List Item, making it possible to connect more block content to dynamic data sources without custom code.</li>\n\n\n\n<li><strong>Custom icon registration</strong>: New functions let plugin and theme authors register their own icons for the Icons block for use throughout the block editor.</li>\n\n\n\n<li><strong>Enforced iframed editor</strong>: The post editor now always runs inside an iframe, isolating the editing canvas from admin styles for more predictable rendering. Blocks using Block API v2 or lower should be updated to v3 for compatibility.</li>\n\n\n\n<li><strong>wordpress/theme stabilization</strong>: Introduces design tokens and a stable React ThemeProvider to provide a more consistent, customizable foundation for WordPress admin interfaces.</li>\n\n\n\n<li><strong>Connectors authentication improvements</strong>: The Connectors screen now also supports username and application-password login &#8211; a more familiar way to connect plugins and services. This release also closes a security gap where browsers could auto-suggest saved credentials into the API key field.</li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\">With so much in progress for WordPress 7.1 Beta 1, this is still only the beginning; expect continued refinement with each Beta and RC release ahead of the final release on <strong>August 19, 2026</strong> at <a href=\"https://us.wordcamp.org/2026/\">WordCamp US 2026</a>.</p>\n\n\n\n<figure class=\"wp-block-image size-large has-custom-border\"><a href=\"https://us.wordcamp.org/2026/\"><img alt=\"WordCamp US: Powered by WordPress, Driven by Community, August 16-19, 2026\" class=\"wp-image-20859\" height=\"321\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/06/wcus-2026-teaser.png?resize=1024%2C321&#038;ssl=1\" width=\"1024\" /></a></figure>\n\n\n\n<h2 class=\"wp-block-heading\">Just for you: a Beta 1 haiku:</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Seeds of Seven-One,<br />Notes, styles, media, and tools—<br />Test, and watch them bloom.</p>\n\n\n\n<p class=\"has-text-align-right wp-block-paragraph\"><em>Props to </em><a class=\"mention\" href=\"https://profiles.wordpress.org/benjamin_zekavica/\"><span class=\"mentions-prefix\">@</span>benjamin_zekavica</a>, <a class=\"mention\" href=\"https://profiles.wordpress.org/amykamala/\"><span class=\"mentions-prefix\">@</span>amykamala</a>, <a class=\"mention\" href=\"https://profiles.wordpress.org/wildworks/\"><span class=\"mentions-prefix\">@</span>wildworks</a>, <a class=\"mention\" href=\"https://profiles.wordpress.org/adamsilverstein/\"><span class=\"mentions-prefix\">@</span>adamsilverstein</a>, <a class=\"mention\" href=\"https://profiles.wordpress.org/annezazu/\"><span class=\"mentions-prefix\">@</span>annezazu</a>, <a class=\"mention\" href=\"https://profiles.wordpress.org/fushar/\"><span class=\"mentions-prefix\">@</span>fushar</a>, <a class=\"mention\" href=\"https://profiles.wordpress.org/jorgefilipecosta/\"><span class=\"mentions-prefix\">@</span>jorgefilipecosta</a><em>, <a class=\"mention\" href=\"https://profiles.wordpress.org/joedolson/\"><span class=\"mentions-prefix\">@</span>joedolson</a> for proofreading and review.</em></p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 15 Jul 2026 15:53:33 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:11:\"Krupa Nanda\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:20;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:77:\"Open Channels FM: How AI Tools Are Transforming Everyday Web Design Practices\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556905\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:84:\"https://openchannels.fm/how-ai-tools-are-transforming-everyday-web-design-practices/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:200:\"In this episode, Bob and Cami discuss how AI is reshaping web design, offering tips on using AI tools effectively, educating clients, and adapting workflows for better efficiency in the digital space.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 15 Jul 2026 14:45:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:21;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:113:\"WPTavern: #225 – Milan Petrović on the Risks of Legacy PHP in WordPress and Why Upgrading Matters for Security\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:48:\"https://wptavern.com/?post_type=podcast&p=206447\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:126:\"https://wptavern.com/podcast/225-milan-petrovic-on-the-risks-of-legacy-php-in-wordpress-and-why-upgrading-matters-for-security\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:43219:\"<details>Transcript<div>\n<p class=\"wp-block-paragraph\">[00:00:19] <strong>Nathan Wrigley:</strong> Welcome to the Jukebox Podcast from WP Tavern. My name is Nathan Wrigley.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, the risks of legacy PHP in WordPress and why upgrading matters for security.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to wptavern.com/feed/podcast, and you can copy that URL into most podcast players. If you have a topic that you&#8217;d like us to feature on the podcast, I&#8217;m keen to hear from you and hopefully get you or your idea featured on the show. Head to wptavern.com/contact/jukebox and use the form there.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So on the podcast today we have Milan Petrović. Milan has been deeply immersed in the WordPress ecosystem since 2007, developing an array of plugins, especially for expanding bbPress forums, and running his own company, creating plugins before joining the Freemius team as a full stack developer. With nearly two decades of hand-on experience, Milan has witnessed firsthand the evolution of both the WordPress and PHP landscapes.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Many WordPress users may be only partially aware of PHP. Perhaps they&#8217;ve noticed version numbers in their hosting panel, but few of the millions of WordPress users understand the real impact that PHP versions have on the security and performance of their websites. Milan is here to shine a light on why embracing newer versions like PHP eight isn&#8217;t just good practise, but a crucial step for security and efficiency.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Milan begins by recounting his journey through WordPress development. The conversation gets into the heart of his recent WordCamp Europe presentation, which tackles how legacy PHP code exposes sites to thousands of open bugs and vulnerabilities. And why relying on old versions is, as he describes, an active invitation for automated exploitation.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The discussion explores the contrast between running legacy code, and using the native shields of modern PHP, and highlights how PHP 8 not only closes security holes, but also delivers major performance boosts, reducing memory usage, and accelerating speed.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re wondering why you should care about the PHP version your site is running on, or you&#8217;re a developer interested in practical ways to harden your code, Milan unpacks both the existential risks of outdated PHP, and the step-by-step benefits for hosts, agencies, and plug-in developers alike.</p>\n\n\n\n<p class=\"wp-block-paragraph\">He introduces his Vulnerability Lab plugin, designed for developers to see firsthand how code exploits play out differently across PHP versions, and makes the case that modernising can happen gradually, one update, one plugin at a time.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;ve ever questioned how your hosting choice, or plugin stack, could affect your site&#8217;s future. Or you&#8217;re ready to take the first steps towards building more secure and future proof WordPress products, this episode is for you.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re interested in finding out more, you can find all of the links in the show notes by heading to wptavern.com/podcast, where you&#8217;ll find all the other episodes as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And so without further delay, I bring you Milan Petrović.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I am joined on the podcast by Milan Petrović. Hello Milan.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:58] <strong>Milan Petrović:</strong> Hello Nathan. Thank you for having me here.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:04:00] <strong>Nathan Wrigley:</strong> You are very welcome. We&#8217;re in a beautiful, beautiful media room at WordCamp Europe. And I know that you have already done your presentation because we just had a little chat about the fact that you&#8217;ve done it and it went well and all of that.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Do you want to tell us a little bit about you and your background working with code and developing and security and all of that kind of stuff? And then we&#8217;ll talk about your actual presentation and how it went.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:04:25] <strong>Milan Petrović:</strong> So I started with WordPress almost 20 years ago, so way back in 2007. And I created a lot of plugins for WordPress, and I especially have a lot of plugins for bbPress for expanding forums. Yeah, people still use forums these days. So that was, I really like bbPress and all the stuff I did with that.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I have been working as a freelancer for a lot of years. I have my own company that was doing plugins, it&#8217;s called Dev4Press. But in 2024, I joined the amazing team at Freemius. So for almost two years I am a full stack developer at Freemius. And that was a really nice change of pace for me and the work I usually do before that. So yeah, that&#8217;s a short of it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:05:13] <strong>Nathan Wrigley:</strong> Yeah. That&#8217;s great. Thank you. And so the presentation that you did that is now over, goes like this. I&#8217;m going to read the entire blurb because it&#8217;s short enough to read, and it says, secure by design, hardening plugins with PHP 8.x. In the WordPress ecosystem, we&#8217;re often forced to choose between supporting the lowest common denominator of hosting and implementing modern security. But in 2026, writing legacy PHP 7 code isn&#8217;t just a bad habit, it&#8217;s an active invitation for automated exploitation. It&#8217;s time to stop playing whack-a-mole with sanitisation, and start building products that are secure by design. This talk isn&#8217;t just another slide deck on security tips. Through comparisons of a Vulnerability Lab plugin, you will see how common exploits like authentication bypass, and server side request forgery succeed on legacy code, only to be neutralised by the native shields of the latest PHP. You learn how to leverage the modern PHP patterns to ensure your plugins are resilient to a wide range of exploits.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Now into the show notes I will put Milan&#8217;s wordpress.tv presentation so that you can go and watch the entirety of it. I guess basically if at any point you get confused, that would be a good idea, pause this podcast and go and check that out. But, how did it go? How well received was it?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:33] <strong>Milan Petrović:</strong> For me personally, I&#8217;m very satisfied with how how it went. I don&#8217;t know, it&#8217;s a bit overwhelming to be honest, but I am very satisfied and I got a lot of questions after the talk. I met a lot of people that liked what I had to say. And I think it&#8217;s good feedback to have, for something that is more technical like this was.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:52] <strong>Nathan Wrigley:</strong> Well touching on the fact that it&#8217;s more technical, I have to confess that I think you are going to have to shepherd me through this, because a lot of the content that you I think probably got stuck into is beyond my pay grade. But hopefully we&#8217;ll get through it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Now at WordCamp Europe, where we are now, I don&#8217;t know what the ratio is, but I&#8217;m guessing that a significant proportion of the people out there are not developers. They kind of know that PHP is a thing. They realise that WordPress is built on that, but they don&#8217;t really have an understanding.</p>\n\n\n\n<p class=\"wp-block-paragraph\">They&#8217;ve probably heard of PHP 7. They&#8217;ve probably heard of PHP 8, because somewhere in a control panel that was shown to them. But maybe there&#8217;s not much of an understanding of the fact that it gets better over time. It gets secure over time. I think there&#8217;s probably a notion of, well, my website works. Why do I need to change anything?</p>\n\n\n\n<p class=\"wp-block-paragraph\">So let&#8217;s get into that. What were you talking about in your presentation? What&#8217;s changed in the landscape of PHP more recently that you brought to the fore that you shared with your audience?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:07:51] <strong>Milan Petrović:</strong> Yeah, I think that PHP 8 was a big milestone for a lot of things. And I&#8217;m not sure, but I don&#8217;t think that the wider communities are kind of aware about the impact of the PHP, or the server environment in general, on how the websites work and how secure they are. Maybe the WordPress in itself needs to spread more awareness about that.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Because right now we get a notice in the dashboard that maybe the PHP needs to be updated. But for a lot of website users, that can be too much and too little information at the same time, because they may be not aware of how to do things on their hosting site.</p>\n\n\n\n<p class=\"wp-block-paragraph\">We need to spread more awareness about how important the changes in the code are when it comes to the newer PHP versions, and what they can do to improve the security. And how developers should be starting to use more of those new features and the new things that PHP provides on a language level nowadays.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:08:49] <strong>Nathan Wrigley:</strong> WordPress has got this real legacy, I suppose is the right word, of supporting legacy code. So WordPress itself is supported way, way, way back. You can keep using versions of WordPress, which are many, many, many years old. And I wonder what your stance is in terms of PHP, whether or not WordPress runs versions of PHP which are far too old, in your opinion.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So in other words, should WordPress have a policy of, I don&#8217;t know, 8.x only? Or is 7 okay. And I don&#8217;t know what other CMS platforms, you know, Drupal, Joomla as was. I don&#8217;t know what they do, I don&#8217;t know what their posture is.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:09:32] <strong>Milan Petrović:</strong> I think that one of the most important decisions that, it was done with WordPress early on, is that backwards compatibility, because it opened the doors for a wider adoption. Because you don&#8217;t need to change server every year, or you don&#8217;t need to upgrade your software that often. And that helped a lot of hosting companies to provide WordPress hosting very cheaply, because they didn&#8217;t have to have the latest PHP, they didn&#8217;t have to invest much more money into all that. So WordPress got a lot of adoption from backwards compatibility policies.</p>\n\n\n\n<p class=\"wp-block-paragraph\">But in the same time, that also proved a bit of a problem. Because even the WordPress Core code is kind of stuck because of that policy of backwards compatibility. And it&#8217;s not only compatibility with old versions of WordPress, but the old versions of PHP. And we are running now maybe six years behind end of life PHP versions. Because PHP 7.4 end of life was four and a half years ago. And we still support it in the Core.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:10:33] <strong>Nathan Wrigley:</strong> Yeah, I guess it&#8217;s a nice thing to support it. And it, as you described, it was a great way of onboarding the millions of people that came along. But things have moved on.</p>\n\n\n\n<p class=\"wp-block-paragraph\">What would be some of the top level items? And I&#8217;m inviting you to open the scary book and sort of give out the worst case scenarios basically of running legacy code. So really, go to town, frighten us all. What are some of the horrors that await if you&#8217;re quite willing to, as a hosting company, support seven point whatever or beyond, six or five, or dare I say it, four, who knows? What are some of the terrible things that await us?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:11:08] <strong>Milan Petrović:</strong> To be honest, when I was researching some of the statistics and things like that, I was kind of scared when I saw that there are 3 or 4,000 open bug reports for PHP 7 and PHP 5, which are still in use today, and there are WordPress websites running on both of them in the millions. And there are 3 or 4,000 open and confirmed bags that are never going to be fixed. Never. So PHP 7 has thousands of bugs, and I&#8217;m sure that not everything security related, but a big chunk of those bags are related to security.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And there are open exploits that run on the PHP level. They don&#8217;t care really about if you are using WordPress or using something else. It&#8217;s more like a exploit on the level of a, on a server side that can be quite scary because you, even the technical people are not really sure what are all those bugs. Who is going to go through 3,000 or 4,000 bug reports?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:12:05] <strong>Nathan Wrigley:</strong> Yeah, so just to sort of describe that, the fact that there is no more updates to the 7 branch of PHP means that all of those bugs which are publicly available, anybody can go and read great detail about what they are. Well that then means that any hacker can do that, and probably did like a dozen years ago. And so really you are painting a picture there of you are asking for trouble.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:12:30] <strong>Milan Petrović:</strong> There are hosting companies that maybe do things a bit differently because you don&#8217;t need to run PHP as it was created. You can build your own version of PHP. You can patch bugs on your own. And a lot of hosting companies are doing that. But in the same time, that also poses a problem. You are going to run WordPress in your own plugins on a platform that is not actually officially PHP supported. It can have some different quirks that make your code run a bit differently.</p>\n\n\n\n<p class=\"wp-block-paragraph\">A while ago we had the Facebook running their own PHP build, that was quite different from the public PHP. But they used it, and other people started using it. So I don&#8217;t know. Still I think that the official PHP is the one you should be on because you never know what other issues. Even when hosting company patches the PHP they&#8217;re using, maybe they&#8217;re opening doors to something else that is not quite documented on that level.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I think that the best policies, I don&#8217;t expect for WordPress to adopt the latest PHP or only supported PHP versions, but to kind of move quicker on the adoption of the newest version. So maybe we should be quicker to adopt PHP 8.0 or 8.1 is a next minimal required version for WordPress.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:13:50] <strong>Nathan Wrigley:</strong> When you say you don&#8217;t expect WordPress to do it, is that simply because it doesn&#8217;t have a history of doing it? Is there a technical reason why WordPress could not keep up with the latest version? I know we&#8217;ve got this plugin architecture where there&#8217;s thousands and thousands of developers who are all doing their own thing, and there&#8217;s all of that. Is there any technical reason why WordPress couldn&#8217;t be on the cutting edge, most up-to-date, latest version?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:14:15] <strong>Milan Petrović:</strong> There are two factors in all that. First one is you can declare, PHP 8 is the minimal version we support. We don&#8217;t support PHP 7.4 anymore. And that means that you don&#8217;t need to make any changes in WordPress at that point. You can declare it because WordPress is compatible with all PHP versions. It works on 8.0 and 8.5. That&#8217;s no problem. But say that branch 7 is no longer supported, you&#8217;re kind of pushing other developers and hosting companies to improve their support for newer versions.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And you don&#8217;t need to make immediate changes to WordPress. But at that point, you are open to modernise the code because now you can have more stricter typing across the board. There are some strict typing things in older PHP versions, but with 8.0, you can do all of that. And it doesn&#8217;t have to be a process that is done immediately. It can be done gradually. You can update parts of the WordPress Core over time. And it&#8217;ll take a few years, to get up to date, but at least you are closing doors to some older versions of PHP, and you are pushing developers as well for plugins to have that policy.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Right now, each developer can have their own plugins supporting any version of PHP you want. For my plugins, I have policy of 8.0 as a minimal version since this year. And, I&#8217;m updating the code as I go along. I don&#8217;t do it, it&#8217;s impossible to do it all at once. And for WordPress, it&#8217;s going to be even worse to make it all up to date. But declaring PHP 8 is a minimal required version, would be a great step in the right direction for wider adoption.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:15:51] <strong>Nathan Wrigley:</strong> Yeah, I think the problem is simply one of the user base, isn&#8217;t it? There&#8217;s just millions of people, thousands of developers all doing their own thing. And casting 8.x, 8.0 and above as the new minimum, there&#8217;s going to be a moment where some things do go wrong.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So that calendar plugin that you&#8217;ve been using for ages, which just works. And sure, you&#8217;ve never really received any updates from the developer, but it just works. Everybody&#8217;s booking on my calendar and we are all good. And then suddenly PHP 8 is required and it turns out the calendar plugin now no longer works.</p>\n\n\n\n<p class=\"wp-block-paragraph\">You can imagine those kind of stories a million times over coming to the fore. But equally, we got to move on. There&#8217;s no way of, you know, because we can&#8217;t in 10 years still have sites on 7.4.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:16:43] <strong>Milan Petrović:</strong> We have sites on five point something. I recently checked the official WordPress tracking. 7.4 is on 20% even now. So we are far away from WordPress ditching the 7 branch. And I think there are still few percent of PHP 5 in all that so.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:17:01] <strong>Nathan Wrigley:</strong> Yes, I regularly look at the, it&#8217;s like a little donut chart, isn&#8217;t it? That is often produced and you gradually see the eight point x whatever section of the pie getting bigger as they produce the next survey. But you&#8217;re right, it&#8217;s still a significant chunk that&#8217;s on 7 and below.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And whilst when I look at that chart, it doesn&#8217;t really bring any alarm bells to the fore, I just think, oh, that&#8217;s a shame. But now that you are presenting this talk, and giving me this information, I realise that that attack surface is worse.</p>\n\n\n\n<p class=\"wp-block-paragraph\">When you gave that talk, who is your target audience? Were you directly sort of aiming at the hosting companies who presumably can do a lot of work very quickly? You know, they could take a million people onto 8 with a little bit of development work and on the back end of their platform. Or are you really encouraging the general WordPress user, like me, to take a bit more interest and make sure that I am going into the cPanel or whatever it is and updating myself? Or is it a bit of both?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:17:59] <strong>Milan Petrović:</strong> For everyone actually. It&#8217;s for developers to be more aware of what they can gain with the new PHP versions. It&#8217;s for hosting companies. Because it&#8217;s not only about security when it comes to the newer PHP. The PHP is faster and faster. So each new version gets you 5 or 10% more performance without doing anything. So PHP 8.5 is more than 50% faster than PHP 7.4. So that&#8217;s a significant update.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And I have even, one slide was showing how much less memory PHP 8.5 used to run exactly the same piece of code. So it&#8217;s pretty wild to see that hosting companies are maybe the biggest factor in all this. They will gain a lot more because they&#8217;re going to free a lot of resources to run more websites because PHP is going to use less memory and it&#8217;s going to be faster.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So I understand they need to invest a lot of money to do all that. But, I don&#8217;t know, I think that gains from that are very significant, on that level alone.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:18:57] <strong>Nathan Wrigley:</strong> Yeah, so you described there are really compelling scenario. You know, it&#8217;s quicker, it uses less memory, you&#8217;ll save money. I mean what else do you need? You&#8217;ve just presented the entire argument.</p>\n\n\n\n<p class=\"wp-block-paragraph\">However, it hasn&#8217;t happened. So technically speaking, why do you think it hasn&#8217;t happened? Is there an acquisition of new knowledge that is difficult to take in? Is it that simply you would have to, I don&#8217;t know, retrain your staff? How do you understand that it hasn&#8217;t happened? What are the reasons people are digging their heels in and not making these updates?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:19:25] <strong>Milan Petrović:</strong> I kind of make the group of two or three types of hosting companies. One, and that&#8217;s usually more expensive managed hosting solutions. They are forcing the updates. They&#8217;re not maybe on the latest version, but they are forcing their users to use at least three or four versions of PHP back. So maybe 8.2 or 8.3, which is a great step in the right direction.</p>\n\n\n\n<p class=\"wp-block-paragraph\">There is also a problem of support. If something starts breaking, they&#8217;re going to be the first one to be asked about that, because they made the change to the server. So why now website that was working yesterday is no longer working today because of some change made on a hosting level. So there are a lot of factors to play into that adoption.</p>\n\n\n\n<p class=\"wp-block-paragraph\">But on the other hand, there are a lot of developers that have moved on with supporting PHP 8. A lot of plugins are very much updated and, especially popular plugins. They invested a lot of time to do the update. It&#8217;s getting easier to support it. But on the other hand, you have very old websites that are simply cannot move without proper testing, without updating the plugins. And there are cases when you cannot simply update one plugin because something else may break, or you made some changes that will make some other thing break. So it&#8217;s a big puzzle that is definitely not easy to solve, but maybe we should start some work on that as a community to do it, and to move people along.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I don&#8217;t want to say force the change, but make people aware of the benefits. Make people aware of the risks if they continue to run the old and outdated software. And the same goes for not updating plugins, not updating WordPress. No matter how much work is done in that regard, there are still most likely some exploits on a WordPress level for very old versions that at some point someone is going to find out about and exploit.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:21:16] <strong>Nathan Wrigley:</strong> I mean I guess the motto of WordPress was democratised publishing, which means basically make it available to everybody. No matter your level of expertise, make it available to everybody. And I&#8217;m sure that if you were to grab the CEO of any hosting company and say, I can save you money, I can save you resources, and all of those things that you outlined earlier, they would, yeah, we know, we know. But we&#8217;ve got thousands of non-technical people using WordPress.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I kind of have this analogy in my head, and it goes a bit like this. Several years ago, I bought a bike. And it sits in my garage and there is my bike. And I expect my bike to work tomorrow in the same way that it did four years ago. And in 10 years, I expect my bike to work. I don&#8217;t expect there to be an update to wheels or gears or the saddle. It doesn&#8217;t need an update. It&#8217;s just a bike. And I need my bike to be a bike and nothing more.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And I get the impression that many people treat their WordPress website as the same thing. This sort of static commodity that, sure enough, they pay a monthly fee for it, but it&#8217;s this website. It&#8217;s a thing, and it doesn&#8217;t need changing. And so what I&#8217;m trying to say is, I&#8217;m fairly sure that the hosting companies are met with that an awful lot. The customers who just, it&#8217;s a bike, it&#8217;s a website. Do you know what I mean?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:22:37] <strong>Milan Petrović:</strong> Yeah, but you need to maintain your bike. If you don&#8217;t do it, it&#8217;s going to, your belt is going to rust, your wheels are going to be deflated or whatever. A lot of things can happen with it if you don&#8217;t maintain it. So, we don&#8217;t need to upgrade everything all at once, but we can start from someplace. We can do it gradually. But still, WordPress needs to be the platform that leads the charging that, because it&#8217;s going to force other developers to do it. It&#8217;s going to force hosting companies to start doing it. And it&#8217;s not a big jump on moving just that one version, but it&#8217;s going to help to move things along faster. Let&#8217;s see how it goes in the next few years. But I really don&#8217;t expect for WordPress to drop 7.4 for at least a year or two, maybe even more.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:23:24] <strong>Nathan Wrigley:</strong> I loved your rebuttal of my bike analogy there. That was perfect. That&#8217;s exactly right. The bike will rust, the wheels will be deflated and all of that, yeah. So we need to drag the WordPress users along.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Now, in your presentation, you mentioned something that I have never used, the Vulnerability Lab plugin, which you used to demonstrate the attack. Can you just tell us a little bit about that? Because I&#8217;d be curious to follow that up, and maybe some people listening to this would too.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:23:47] <strong>Milan Petrović:</strong> I started it for, created for this talk specifically to add few examples and to run the code that is going to show those things if you run the plugin on the old version and the new version of PHP. And I do plan to expand on it because there are a lot more PHP security elements that can be demonstrated in that way.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So it can show you, you have like a, in many cases the same code, but if you run it on one platform, you&#8217;re going to get one result. And if you run it on the newer one, you will get something different. So it&#8217;s useful to show, and some of those changes are quite small, those attributes that you can add to the code are very, very small, but they can really help you to improve security of your plugin.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And there are more complex security measures that can be implemented, but the format of the talk wasn&#8217;t really suitable to mention everything. But this was like something to get you started on the path of discovering what else PHP 8 can offer, when it comes to improving the security of the plugins and what possible exploits and vulnerabilities are there.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I try to use some obvious things that are very easy to spot. And I&#8217;m sure I did made some of those errors myself in the past. So some of those examples are something that I dealt with when I was upgrading my code. So I&#8217;m sure that a lot of people can see similar problems in their own code, and similar kind of solutions that can help them to overcome those and to make them much more resilient in the future.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:17] <strong>Nathan Wrigley:</strong> So is your plugin designed primarily, would you say for developers in mind, or is it something that just a typical end user may get some mileage out of?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:26] <strong>Milan Petrović:</strong> No, it&#8217;s more for developers that they can see, they can run that code and see how it behaves on the old version and the new version to demonstrate some of those things. And I will definitely expand it to include more examples in the future. Even for myself to like a document, what can happen if you run something in the old version, and the new version?</p>\n\n\n\n<p class=\"wp-block-paragraph\">I had some suggestions coming to me like, maybe like a pattern library that is going to show what is the pattern that we use with old PHP and how to improve it with a new one, and document which version of PHP is going to support it, and how it&#8217;s going to improve the code.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:01] <strong>Nathan Wrigley:</strong> So is the idea then that you would instal it on various different, let&#8217;s say that you&#8217;ve got a live site and you&#8217;ve got, I don&#8217;t know, a development site and another development site, is that you would put it on each of those, different PHP versions, and just sort of compare and contrast what.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:16] <strong>Milan Petrović:</strong> Yeah, that can be used.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:17] <strong>Nathan Wrigley:</strong> Yeah, in that way. And what&#8217;s the reporting that you get? Is it kind of error logs, you know, that only a developer would be able to understand, or is it in plain language that somebody like me could understand?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:26] <strong>Milan Petrović:</strong> Right now it&#8217;s a bit technical because if you run a certain part of the code, some of those elements do have a visual component in the admin section. You will see, one of the examples, if it&#8217;s run on PHP 7.4, it&#8217;s going to result in a fatal error for sure, depending on the server settings. And if you run it on the new version, you will get a full code running and executing as expected.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So it&#8217;s a bit of a development thing that developers can use themselves to show maybe to potential clients or to website owners what is going to happen if they continue to run the outdated versions of the PHP. So it&#8217;s not just, yeah, the PHP 7.4 is bad, but here it is, why it is bad actually.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:27:12] <strong>Nathan Wrigley:</strong> Okay, that&#8217;s a really interesting use case, isn&#8217;t it? So if I&#8217;m an agency owner and I&#8217;ve got, I don&#8217;t know, a client over here who is absolutely wedded to this plugin, this calendar plugin say, and we know that the development of that plugin has ended years ago, then trying to persuade that client to find something new, or have something new built is difficult.</p>\n\n\n\n<p class=\"wp-block-paragraph\">But with the capabilities of the plugin that you&#8217;ve created, you&#8217;ll be able to show in a sort of readable human way, okay, right. That&#8217;s all very well, but we&#8217;ve got to get onto PHP 8.0. And when we do that, this is going to happen.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So that&#8217;s actually quite a useful tool for agencies to be able to dangle things in front of the noses of their clients. Potentially, I don&#8217;t know, get some new work out of it as well, because there&#8217;s this extra work that needs to be done to bring it up to the modern standards.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:28:01] <strong>Milan Petrović:</strong> Yes. And one example especially demonstrates not only security, it demonstrates the performance. It shows you how much memory that piece of code is using on old version. Almost half the memory is going to be used less with a new version. So that&#8217;s very on the nose demonstration on security, and the performance in the same time. So things like that can help. And I will definitely try to invest more time in showing more examples and anyone can contribute.</p>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s a plugin available on GitHub, so any contributions in that regard are welcome. And we can maybe all work to create like a list of patterns that are something that a lot of people can use, and show different people how the PHP can help them move along.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And again, I don&#8217;t want to sound like we don&#8217;t need whatever WordPress is doing. We still need to use all the security enhancements that WordPress has built in the Core. Escaping, sanitisation. All that is still very important because you cannot solve everything by upgrading PHP and upgrading your code to use some of the PHP features. There are still a lot of security elements in WordPress itself that are very important and should not be replaced, or removed, from the code. There are patterns that are crucial to ensuring the security is on a top level. So combination of what WordPress already has, plus everything we get with the newer PHP is something that we should strive in the future, and to make things better.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And it&#8217;s not that complicated to start with the process. You can start upgrading small things. You can start with stricter typing. You can start with very small changes, and then gradually you can add those new attributes. You can replace some of the functions that you may be used with old version of PHP, but there is something better in the new version. So that&#8217;s something that everyone can do. Do a bit at a time so not everything at once. Spend time and make some gradual upgrades, and that&#8217;s going to help moving along.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:29:57] <strong>Nathan Wrigley:</strong> You are obviously here to talk about where PHP meets WordPress, but presumably you, yourself are gaining intel from the PHP community. Is there a resource, like a central PHP resource that you would direct people to, or would you rather steer them towards kind of WordPress resources? The things that people are doing in the WordPress space and the hosting space. There&#8217;s not really a question there, but it&#8217;s more where do you find your information? Where&#8217;s the most reliable place?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:30:25] <strong>Milan Petrović:</strong> You need to check everything. PHP website is a really good resource to find the information about what&#8217;s coming in the next version of PHP, because the preparations take up to a year to release a new version of PHP. So they&#8217;re now on a cycle that every December we get a new feature version. So in December this year, there is going to be PHP 8.6. And you already know most of the things that are coming to that version. You have the detailed list of changes for every PHP version. And that&#8217;s something that any developer should look at, and to see maybe something that will drive them to upgrade.</p>\n\n\n\n<p class=\"wp-block-paragraph\">In the current usage of third party libraries, there are a lot of libraries used in PHP that have moved on beyond 7.4. There are a lot of libraries that now require 8.1 or 8.2. If you depend on some library for, I don&#8217;t know, parsing URLs, or doing something else, something for security, something for whatever. You may face the problem that if you want to use the latest version of that library, you will need to have the newer PHP version. So you are kind of forced to upgrade your plugin requirements to meet with the requirements of the third party libraries.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And outside of WordPress ecosystem, those libraries will move much faster with the adoption of newer PHPs versions than WordPress itself, because they don&#8217;t deal with millions and millions of websites that are affected. They are creating the library the best way they can. And they want to ensure that their library is secure, that their library has access to the latest features. So they are going to bump requirements for those libraries on their own. And if you are depending on it, you need to do it yourself for your plugin. So it&#8217;s kind of, those libraries are kind of forcing the hand of some developers to upgrade, even if they maybe are not ready at this point to do it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:32:15] <strong>Nathan Wrigley:</strong> Yeah, it certainly sounds like there&#8217;s no lack of information out there. If you make your business to find the information, then it&#8217;s all there. You&#8217;ve just got to make the effort to go and find it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;ve kind of run the gamut of everything I wish to ask. However, I&#8217;m very conscious, as I said at the beginning, that this conversation is a little bit above my pay grade. Is there anything that I missed that you wished you had been asked that you wanted to get across?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:32:38] <strong>Milan Petrović:</strong> No, I think we covered a lot of stuff in that.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:32:42] <strong>Nathan Wrigley:</strong> Well I&#8217;m glad to hear it. That&#8217;s great. Yeah, thank you.</p>\n\n\n\n<p class=\"wp-block-paragraph\">In which case, I&#8217;m assuming, given that you&#8217;ve come to an event like this and you&#8217;ve put a plugin on GitHub, you are sort of semi available, or very available, to have conversations with people around this. And if that&#8217;s the case, where&#8217;s the best place to find you online? A website or an email address or a Twitter handle or whatever.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:33:00] <strong>Milan Petrović:</strong> We included the slide with the contact information. So even the email, if someone wants to get more information, they can do it on various social networks as well. So any input about all that is welcome. And I&#8217;d be happy to help if someone needs, some pointers or additional information to get started with all this.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:33:21] <strong>Nathan Wrigley:</strong> Well, thank you. That&#8217;s very much appreciated. As always, if you go to the show notes on the WP Tavern website and click on the episode involving Milan, you&#8217;ll be able to find, buried probably towards the bottom, all the different bits and pieces, the wordpress.tv video that will go with his presentation and various other links that have been discussed during the course of this episode.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So with that said, Milan, thank you so much for chatting to me today. I really appreciate it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:33:47] <strong>Milan Petrović:</strong> Thank you. It was really great, and I appreciate your invitation for the interview.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:33:52] <strong>Nathan Wrigley:</strong> You are so welcome. Thank you.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:33:53] <strong>Milan Petrović:</strong> Thank you.</p>\n</div></details>\n\n\n\n<p class=\"wp-block-paragraph\">On the podcast today we have <a href=\"https://profiles.wordpress.org/gdragon/\">Milan Petrović</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Milan has been deeply immersed in the WordPress ecosystem since 2007, developing an array of plugins, especially for expanding bbPress forums, and running his own company creating plugins before joining the Freemius team as a full stack developer. With nearly two decades of hands-on experience, Milan has witnessed firsthand the evolution of both the WordPress and PHP landscapes.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Many WordPress users may be only partially aware of PHP, perhaps they’ve noticed version numbers in their hosting panels, but few of the millions of WordPress users understand the real impact that PHP versions have on the security and performance of their websites. Milan is here to shine a light on why embracing newer versions, like PHP 8.x, isn’t just good practice but a crucial step for security and efficiency.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Milan begins by recounting his journey through WordPress development. The conversation gets into the heart of his recent WordCamp Europe presentation, which tackles how legacy PHP code exposes sites to thousands of open bugs and vulnerabilities, and why relying on old versions is, as he describes, “an active invitation for automated exploitation.” The discussion explores the contrast between running legacy code and using the “native shields” of modern PHP, and highlights how PHP 8.x not only closes security holes but also delivers major performance boosts, reducing memory usage and accelerating speed.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you’re wondering why you should care about the PHP version your site is running on, or you’re a developer interested in practical ways to harden your code, Milan unpacks both the existential risks of outdated PHP and the step-by-step benefits for hosts, agencies, and plugin developers alike.</p>\n\n\n\n<p class=\"wp-block-paragraph\">He introduces his Vulnerability Lab plugin, designed for developers to see first-hand how code exploits play out differently across PHP versions, and makes the case that modernising can happen gradually, one update, one plugin at a time.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you’ve ever questioned how your hosting choice or plugin stack could affect your site’s future, or you’re ready to take the first steps towards building more secure and future-proof WordPress products, this episode is for you.</p>\n\n\n\n<h2 class=\"wp-block-heading\">Useful links</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://europe.wordcamp.org/2026/session/secure-by-design-hardening-plugins-with-php-8-x/\">Secure-by-design: hardening plugins with PHP 8.x</a> &#8211; Milan&#8217;s presentation at WordCamp Europe 2026</p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://bbpress.org\">bbPress</a></p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://www.dev4press.com\">Dev4Press</a></p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://freemius.com\">Freemius</a></p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://github.com/dev4press/vulnerability-lab\"> Vulnerability Lab plugin</a> on GitHub</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 15 Jul 2026 14:00:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:14:\"Nathan Wrigley\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:22;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:73:\"Open Channels FM: We are Welcoming InMotion Hosting as our Newest Sponsor\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556962\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:80:\"https://openchannels.fm/we-are-welcoming-inmotion-hosting-as-our-newest-sponsor/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:170:\"InMotion Hosting joins Open Channels FM Podcast as a sponsor, offering reliable hosting with great support. They\'ve been a solid choice for over 25 years. Check them out!\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 15 Jul 2026 10:08:45 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:23;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:81:\"Open Channels FM: Multi-Layered Security and the Future of Hosting in an AI World\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556869\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:88:\"https://openchannels.fm/multi-layered-security-and-the-future-of-hosting-in-an-ai-world/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:232:\"In this episode, Adam and Aaron discuss evolving web security in the AI era, emphasizing proactive strategies, layered defenses, and the vital role of hosts in protecting websites against modern threats. Secure your online presence!\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 14 Jul 2026 12:41:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:24;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:50:\"WordPress.org blog: Your Guide to WordCamp US 2026\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"https://wordpress.org/news/?p=21007\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:51:\"https://wordpress.org/news/2026/07/wcus-2026-guide/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:24081:\"<figure class=\"wp-block-image size-large has-custom-border is-style-default\"><img alt=\"WordCamp US: Powered by WordPress, Driven by Community, August 16-19, 2026\" class=\"wp-image-20859\" height=\"321\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/06/wcus-2026-teaser.png?resize=1024%2C321&#038;ssl=1\" style=\"border-top-left-radius: 5px; border-top-right-radius: 5px; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px;\" width=\"1024\" /><figcaption class=\"wp-element-caption\"><img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f4c5.png\" style=\"height: 1em;\" /> <strong>August 16-19, 2026 | Phoenix Convention Center</strong>,<strong> Phoenix, Arizona</strong></figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">WordCamp US 2026 returns for another year, this time in Phoenix, Arizona, for four days, August 16 to 19. It comes at a moment of real energy for WordPress, as artificial intelligence reshapes everyday workflows, the business of building and maintaining sites is shifting, and new people keep discovering the platform every day. Four tracks address this moment, covering AI, Honing Your Skills, Technical WordPress, and Beginner WordPress. Between them, there is something for everyone, whether you lead an agency, freelance for local clients, write code for a living, or are building your very first site. Whatever draws you in, you will leave Phoenix better equipped and better connected than ever.</p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-c9c19393 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-text-align-center wp-element-button\" href=\"https://us.wordcamp.org/2026/tickets/\">Get Your Tickets</a></div>\n\n\n\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-text-align-center wp-element-button\" href=\"https://us.wordcamp.org/2026/contributor-day/\">Sign Up for Contributor Day</a></div>\n\n\n\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-text-align-center wp-element-button\" href=\"https://us.wordcamp.org/2026/schedule/\">See the Schedule</a></div>\n</div>\n\n\n\n<p class=\"wp-block-paragraph\">Phoenix itself rewards anyone who adds a day or two to their trip. The capital of Arizona sits in the Sonoran Desert and pairs a lively downtown with a rich arts and food scene. The Roosevelt Row arts district is known for its galleries, murals, and independent restaurants. It is also home to one of the largest art walks in the region. Nearby, Chase Field and the Footprint Center host professional baseball and live shows, and the surrounding desert offers striking scenery at places like Papago Park and the Desert Botanical Garden.</p>\n\n\n\n<div class=\"wp-block-jetpack-slideshow aligncenter\"><div class=\"wp-block-jetpack-slideshow_container swiper\"><ul class=\"wp-block-jetpack-slideshow_swiper-wrapper swiper-wrapper\"><li class=\"wp-block-jetpack-slideshow_slide swiper-slide\"><figure><img alt=\"\" class=\"wp-block-jetpack-slideshow_image wp-image-21052\" height=\"1147\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/phoenix-1.png?resize=1920%2C1147&#038;ssl=1\" width=\"1920\" /></figure></li><li class=\"wp-block-jetpack-slideshow_slide swiper-slide\"><figure><img alt=\"\" class=\"wp-block-jetpack-slideshow_image wp-image-21053\" height=\"612\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/phoenix-2.png?resize=1024%2C612&#038;ssl=1\" width=\"1024\" /></figure></li><li class=\"wp-block-jetpack-slideshow_slide swiper-slide\"><figure><img alt=\"\" class=\"wp-block-jetpack-slideshow_image wp-image-21054\" height=\"612\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/phoenix-3.png?resize=1024%2C612&#038;ssl=1\" width=\"1024\" /></figure></li><li class=\"wp-block-jetpack-slideshow_slide swiper-slide\"><figure><img alt=\"\" class=\"wp-block-jetpack-slideshow_image wp-image-21056\" height=\"612\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/phoenix-4.png?resize=1024%2C612&#038;ssl=1\" width=\"1024\" /></figure></li></ul><a class=\"wp-block-jetpack-slideshow_button-prev swiper-button-prev swiper-button-white\"></a><a class=\"wp-block-jetpack-slideshow_button-next swiper-button-next swiper-button-white\"></a><a class=\"wp-block-jetpack-slideshow_button-pause\"></a><div class=\"wp-block-jetpack-slideshow_pagination swiper-pagination swiper-pagination-white\"></div></div></div>\n\n\n\n<h2 class=\"wp-block-heading\">Start with Contributor Day</h2>\n\n\n\n<p class=\"wp-block-paragraph\">The week begins with <a href=\"https://us.wordcamp.org/2026/contributor-day/\">Contributor Day</a>, a full day set aside for giving back to the project that makes everything else possible. Attendees will gather in teams to improve WordPress itself, from Core code and documentation to design, training, accessibility, and translation.</p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">WordPress is so unique because we&#8217;re not just a product; we&#8217;re a movement.</p>\n<cite>Matt Mullenweg, WordPress Cofounder</cite></blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Contributor Day is open to everyone, whatever your skills, and whether or not you have ever contributed before. Come and experience the open source collaboration that is at the heart of the project. <a href=\"https://us.wordcamp.org/2026/contributor-day/\">Signing up</a> in advance helps us prepare our veteran contributors and provide you with the best experience.</p>\n\n\n\n<figure class=\"wp-block-gallery alignfull has-nested-images columns-6 is-cropped has-black-background-color has-background wp-block-gallery-1 is-layout-flex wp-container-core-gallery-is-layout-db4b8a9e wp-block-gallery-is-layout-flex\" style=\"border-width: 20px; border-radius: 2px;\">\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-19085\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2025/08/Z632926.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-19089\" height=\"1707\" src=\"https://i0.wp.com/wordpress.org/news/files/2025/08/DSC8723-scaled.jpg?fit=1024%2C683&amp;ssl=1\" width=\"2560\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-19110\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2025/08/DSC04553.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21080\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC8737.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21078\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC0748.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21079\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC0768.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21077\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC0379.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21074\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC0167.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21076\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC0331.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21083\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/Z636050.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21082\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/Z632983.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-19083\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2025/08/DSC8887-2.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n</figure>\n\n\n\n<h2 class=\"wp-block-heading\">Explore Real-World Projects on Showcase Day</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Day 2, Showcase Day, is dedicated to real-world WordPress projects and focuses on how teams develop features, manage publishing, and run demanding sites at scale. It brings to life the kind of work collected in the WordPress <a href=\"https://wordpress.org/showcase/\">Showcase</a>, the directory of standout sites built on the platform, from global brands like <a href=\"https://wordpress.org/showcase/disney-connect/\">Disney</a> to community publishers and institutions like <a href=\"https://wordpress.org/showcase/nasa/\">NASA</a>. Past WordCamp US Showcase days have brought teams from the likes of <a href=\"https://www.youtube.com/watch?v=PGvh7fCOUk0\">Wikimedia</a> and <a href=\"https://www.youtube.com/watch?v=MHk-Us00pTk\">CANCOM</a> to explain how they manage large, high-traffic systems. Other sessions took a builder&#8217;s perspective on catching bugs faster with automated testing and even running the Block Editor inside a custom app.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img alt=\"\" class=\"wp-image-21064\" height=\"576\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/Z637241.jpg?resize=1024%2C576&#038;ssl=1\" width=\"1024\" /></figure>\n\n\n\n<h2 class=\"wp-block-heading\">Dive Into Two Conference Days</h2>\n\n\n\n<p class=\"wp-block-paragraph\">The two main conference days will bring a full slate of sessions across four tracks. First among them is the AI track, which treats the technology as a tool to handle with care rather than a headline to chase. Its sessions set guardrails for AI-assisted development, prepare for a web where AI agents become the visitors a site must serve, and weigh the legal and ethical questions of putting AI tools in the hands of clients. Speakers from companies like Elementor will be taking a look at where the web is heading, while keeping the focus on what teams can adopt today without giving up control of their work.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The Technical WordPress and Honing Your Skills tracks cover the craft and business of building with WordPress. On the technical side, sessions dig into modern development workflows, automated testing with tools like the browser-based <a href=\"https://playground.wordpress.net/\">WordPress Playground</a>, and plugin pipelines. The Honing Your Skills track adds practical guidance on pricing, maintenance, and how the agency model is changing as clients ask for more. The Beginner WordPress track keeps the door open for newcomers, with approachable sessions that make your first WordCamp less daunting. Hands-on work runs through all of these tracks, so alongside the talks, attendees will find workshops and working sessions where they can build something real and leave ready to apply it to their own projects.</p>\n\n\n\n<figure class=\"wp-block-gallery alignfull has-nested-images columns-6 is-cropped has-black-background-color has-background wp-block-gallery-2 is-layout-flex wp-container-core-gallery-is-layout-db4b8a9e wp-block-gallery-is-layout-flex\" style=\"border-width: 20px;\">\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-19080\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2025/08/IMG_5641.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21086\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/Z633923.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21085\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC9190.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-full wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21065\" height=\"1280\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/Z637801.jpg?resize=1920%2C1280&#038;ssl=1\" width=\"1920\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21084\" height=\"1024\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/Z637088-1.jpg?resize=819%2C1024&#038;ssl=1\" width=\"819\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<figure class=\"wp-block-image size-large wp-lightbox-container\"><img alt=\"\" class=\"wp-image-21081\" height=\"683\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/DSC9344.jpg?resize=1024%2C683&#038;ssl=1\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n</figure>\n\n\n\n<p class=\"wp-block-paragraph\">Not all of the value happens in the session rooms. On the show floor, the <a href=\"https://us.wordcamp.org/2026/47-days-out-whats-waiting-for-you-at-wordcamp-us-2026/#happiness\">Happiness Bar</a> is a free, drop-in help desk where you can sit down with a volunteer WordPress expert and work through whatever has you stuck. The <a href=\"https://us.wordcamp.org/2026/47-days-out-whats-waiting-for-you-at-wordcamp-us-2026/#sponsor\">Sponsor Hall</a> next door is where many of the best unplanned conversations happen, and its <a href=\"https://us.wordcamp.org/2026/47-days-out-whats-waiting-for-you-at-wordcamp-us-2026/#career\">Career Corner</a> gives anyone weighing their next move a relaxed place to browse the job board, meet company reps, and see who is hiring across the ecosystem.</p>\n\n\n\n<h2 class=\"wp-block-heading\">Plan Your Trip to Phoenix</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Getting to Phoenix is straightforward. The <a href=\"https://us.wordcamp.org/2026/about/venue/\">Phoenix Convention Center</a> sits in the heart of downtown, less than five miles from Phoenix Sky Harbor International Airport (PHX) and about 15 minutes away on the <a href=\"https://www.valleymetro.org/how-to-ride/rail\">Valley Metro light rail</a>. WordCamp US has a room block at the Sheraton Phoenix Downtown, close to the convention center, so <a href=\"https://book.passkey.com/event/51129263/owner/68648/home\">book your hotel</a> before the block fills, and <a href=\"https://us.wordcamp.org/2026/tickets/\">reserve your ticket</a> if you have not already. The full event lineup and details live on the <a href=\"https://us.wordcamp.org/2026/schedule/\">WordCamp US 2026 site</a>, and the conference closes with an evening social before everyone heads home.</p>\n\n\n\n<div class=\"wp-block-group has-off-white-background-color has-background is-nowrap is-layout-flex wp-container-core-group-is-layout-7c1a8141 wp-block-group-is-layout-flex\">\n<ol class=\"wp-block-list has-off-white-background-color has-background has-large-font-size wp-container-content-9cfa9a5a\">\n<li><strong><img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f39f.png\" style=\"height: 1em;\" /> </strong><a href=\"https://us.wordcamp.org/2026/tickets/\">Reserve your ticket</a></li>\n\n\n\n<li><img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f6cf.png\" style=\"height: 1em;\" /><a href=\"https://us.wordcamp.org/2026/about/travel-accommodation/\"> Find accommodations</a></li>\n\n\n\n<li><img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f68c.png\" style=\"height: 1em;\" /><a href=\"https://us.wordcamp.org/2026/plan-your-trip-to-phoenix/\"> Plan your trip</a></li>\n\n\n\n<li><img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f4cd.png\" style=\"height: 1em;\" /><a href=\"https://www.visitphoenix.com/\">Explore Phoenix</a></li>\n</ol>\n\n\n\n<figure class=\"wp-block-image size-full wp-container-content-577e1c61\" style=\"margin-top: 0; margin-right: 0; margin-bottom: 0; margin-left: 0;\"><img alt=\"\" class=\"wp-image-21164\" height=\"2560\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/07/route-66-traveller-boy-scaled.png?resize=2066%2C2560&#038;ssl=1\" width=\"2066\" /></figure>\n</div>\n\n\n\n<h3 class=\"wp-block-heading\">Help Us Spread the Word!</h3>\n\n\n\n<p class=\"wp-block-paragraph\">Whether attending in person or following along online, share your experience and help welcome others to the WordPress community. Use the #WCUS and #WordPress hashtags to tell your story on social.</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Mon, 13 Jul 2026 13:07:07 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:17:\"Nicholas Garofalo\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:25;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:93:\"Open Channels FM: Understanding Open Source Law and AI Impacts in Modern Software Development\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556631\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:100:\"https://openchannels.fm/understanding-open-source-law-and-ai-impacts-in-modern-software-development/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:214:\"In this Open Web Conversations episode, host Anne Bovelett chats with lawyer Carlo Piana about open source software\'s legal challenges, AI\'s impact on coding, and the importance of proper licensing and attribution.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Mon, 13 Jul 2026 08:54:09 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:26;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:126:\"Gutenberg Times: Gutenberg Changelog #132 – Proposals for Core, Calls for Testing, WordPress 7.1 and Gutenberg 23.4 and 23.5\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:53:\"https://gutenbergtimes.com/?post_type=podcast&p=46018\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:59:\"https://gutenbergtimes.com/podcast/gutenberg-changelog-132/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:69012:\"<p class=\"wp-block-paragraph\">In episode 132 of the <em>Gutenberg Changelog</em> podcast, host Birgit Pauli-Haack and guest Ellen Bauer explore the latest updates within the WordPress ecosystem. The conversation centers on the releases of Gutenberg 23.4 and 23.5, the recent WordPress 7.0.1 maintenance update, and the strategic roadmap for the upcoming WordPress 7.1.A significant portion of the episode is dedicated to major merge proposals destined for WordPress 7.1 that aim to evolve the core software. </p>\n\n\n\n<p class=\"wp-block-paragraph\">These include &#8220;Core Abilities&#8221; for AI agent integration, the new &#8220;Knowledge&#8221; post type for managing site standards and guidelines, and &#8220;Design System Theming&#8221; to enhance consistency and accessibility via CSS custom properties. The hosts also discuss the shift toward mandatory iframing for the post editor in block-based themes, a critical architectural change designed to improve content rendering.Beyond core architecture, the episode highlights user-focused improvements such as enhanced responsive editing controls, which now allow for granular canvas resizing without preset limits. They also touch on media-related updates, including aspect ratio controls in the media editor, and improvements to the Icon block. </p>\n\n\n\n<p class=\"wp-block-paragraph\">With WordPress 7.1’s Beta 1 approaching, Birgit and Ellen emphasize the importance of community involvement, encouraging developers and site owners to participate in ongoing &#8220;Call for Testing&#8221; efforts. Whether discussing React 19 status or new grid layout properties, the episode serves as a comprehensive briefing for anyone looking to stay current with the rapidly changing landscape of the block editor and WordPress core development.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://gutenbergtimes.com/podcast/gutenberg-changelog-132/#shownotes\">Show Notes</a> / <a href=\"https://gutenbergtimes.com/podcast/gutenberg-changelog-132/#transcript\">Transcript</a></p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Editor: <a href=\"https://www.linkedin.com/in/sandy-reed/\">Sandy Reed</a></li>\n\n\n\n<li>Logo: <a href=\"https://markuraine.com/\">Mark Uraine</a></li>\n\n\n\n<li>Production: <a href=\"https://icodeforapurpose.com\">Birgit Pauli-Haack</a></li>\n</ul>\n\n\n\n<p class=\"has-larger-font-size wp-block-paragraph\" id=\"shownotes\"><strong>Show Notes</strong></p>\n\n\n\n<h2 class=\"wp-block-heading\">Special Guest: Ellen Bauer</h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://x.com/ellenbauer\">On X (former Twitter) @ellenbauer</a></li>\n\n\n\n<li><a href=\"https://profiles.wordpress.org/elmastudio/\">WordPress.org Ellen Bauer</a></li>\n\n\n\n<li><a href=\"https://bsky.app/profile/ellenbauer.bsky.social\">Bluesky</a></li>\n\n\n\n<li><a href=\"https://www.elmastudio.de/en/\">ElmaStudio</a></li>\n\n\n\n<li>Previews appearances on the show\n<ul class=\"wp-block-list\">\n<li><a href=\"https://gutenbergtimes.com/podcast/gutenberg-changelog-124-gutenberg-22-wordpress-6-9/\">Gutenberg Changelog #124 – Gutenberg 22.0 and WordPress 6.9</a></li>\n\n\n\n<li><a href=\"https://gutenbergtimes.com/podcast/gutenberg-changelog-117-woocommerce-starter-theme-and-blocks/\">Gutenberg Changelog 117 – WooCommerce Starter Theme and Blocks, WordCamp Europe, and Gutenberg 20.7 and 20.8</a></li>\n\n\n\n<li><a href=\"https://gutenbergtimes.com/podcast/gutenberg-changelog-105-gutenberg-18-9-block-themes-and-woocommerce/\">Gutenberg Changelog #105 – Gutenberg 18.9, Block Themes and WooCommerce</a></li>\n\n\n\n<li><a href=\"https://gutenbergtimes.com/podcast/gutenberg-changelog-88-wordpress-6-4-and-gutenberg-16-5/\">Gutenberg Changelog #88 – WordPress 6.4 and Gutenberg 16.4 and 16.5.</a></li>\n</ul>\n</li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">Announcements</h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://make.wordpress.org/test/2026/07/03/call-for-testing-responsive-styling/\">Call for Testing: Responsive Styling</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/05/21/media-editor-modal-call-for-testing/\">Modal Media Editor</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/06/04/call-for-testing-client-side-media-processing/\">Client media processing</a> and the </li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/06/03/announcing-a-collaborative-editing-outreach-effort-for-7-1/\">Real-time collaboration outreach effort </a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/06/10/call-for-testing-unicode-email-addresses/\">Call for Testing: Unicode email addresses</a></li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">Community Contributions</h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://make.wordpress.org/core/2026/07/02/merge-proposal-expanding-wordpress-core-abilities/\">Merge Proposal: Expanding WordPress Core Abilities</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/06/22/merge-proposal-guidelines-built-on-knowledge/\">Merge Proposal: Guidelines built on Knowledge</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/07/07/merge-proposal-design-system-theming/\">Merge Proposal: Design System Theming</a></li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">What&#8217;s released</h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://wordpress.org/news/2026/07/wordpress-7-0-1-maintenance-release/\">WordPress 7.0.1</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/07/01/wordpress-7-0-1-rc1-is-now-available/\">WordPress 7.0.1 RC1</a></li>\n\n\n\n<li><a href=\"https://gutenbergtimes.com/?p=45920&amp;preview=1&amp;_ppp=99b8f1f429\">WordPress 7.0.1 Fixes Registration Spam, wp_kses() CSS Corruption, and 7.0 Admin Design Glitches</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/06/19/roadmap-to-7-1/\">Roadmap to 7.1</a></li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">Post Editor iframed </h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li> <a href=\"https://github.com/WordPress/gutenberg/pull/74042\">Post editor: always iframe #74042</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/02/24/iframed-editor-changes-in-wordpress-7-0/\">iframed Editor Changes in WordPress 7.0</a> (February 2026) </li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2025/11/12/preparing-the-post-editor-for-full-iframe-integration/\">Preparing the Post Editor for Full iframe Integration</a> (November 2025)</li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2021/06/29/blocks-in-an-iframed-template-editor/\">Blocks in an iframed (template) editor</a> (June 2021)</li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">Punted from 7.1 </h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://make.wordpress.org/core/2026/07/07/the-classic-block-stays-in-the-inserter-for-wordpress-7-1/\">The Classic block stays in the inserter for WordPress 7.1</a></li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/06/05/react-19-upgrade-temporarily-reverted-in-gutenberg/\">React 19 upgrade temporarily reverted in Gutenberg</a></li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">Gutenberg releases</h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://make.wordpress.org/core/2026/06/17/whats-new-in-gutenberg-23-3-03-jun-2/\">What’s new in Gutenberg 23.4? (June 17, 2026)</a>\n<ul class=\"wp-block-list\">\n<li>Docs: Auto-generate per-block API reference pages from block.json. (<a href=\"https://github.com/WordPress/gutenberg/pull/77612\">77612</a>) </li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/05/05/proposal-auto-generate-block-editor-handbook-docs-from-block-json/\">Proposal: Auto-generate Block Editor Handbook docs from block.json</a></li>\n\n\n\n<li>Documentation pages: <a href=\"https://developer.wordpress.org/block-editor/reference-guides/core-blocks/\">Core Blocks Reference</a></li>\n</ul>\n</li>\n\n\n\n<li><a href=\"https://make.wordpress.org/core/2026/07/01/whats-new-in-gutenberg-23-5-july-1-2026/\">What’s new in Gutenberg 23.5? (July 1, 2026)</a></li>\n</ul>\n\n\n\n<p class=\"has-large-font-size wp-block-paragraph\">Stay in Touch</p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<ul class=\"wp-block-list\">\n<li>Did you like this episode? <a href=\"https://lovethepodcast.com/gutenbergchangelog\"><strong>Please write us a review </strong></a></li>\n\n\n\n<li>Ping us on X (formerly known as Twitter) or send DMs with questions. <a href=\"https://twitter.com/gutenbergtimes\">@gutenbergtimes </a>and <a href=\"https://twitter.com/bph\">@bph</a>.</li>\n\n\n\n<li><em>If you have questions or suggestions, or news you want us to include, send them to <a href=\"mailto:changelog@gutenbergtimes.com\">changelog@gutenbergtimes.com</a>. </em></li>\n\n\n\n<li><em>Please write us a review on iTunes! <a href=\"https://gutenbergtimes.com/itunes/\">(Click here to learn how)</a></em></li>\n</ul>\n</div></div>\n\n\n\n<p class=\"has-large-font-size wp-block-paragraph\" id=\"transcript\"><strong>Transcript</strong></p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Welcome to our 132nd episode of the Gutenberg Changelog podcast. In today&#8217;s episode, we will talk about proposals for core, calls for testing Gutenberg 23.4, Gutenberg 23.5, and whatever side ideas we have about 7.1, which is in the works. I&#8217;m your host, Birgit Pauli-Haack, curator at the Gutenberg Times and a full time core contributor for the WordPress open source project sponsored by Automattic. With me today on the show, and I&#8217;m very delighted to tell you that is Ellen Bauer, product manager at WordPress.com and early adopter of block themes. Thank you for joining me, Ellen. How are you today?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Thank you very much. Always happy to be here. I&#8217;m great. I just landed back in Bangkok this week where we are. I&#8217;m staying here a little bit longer with my family this year from Germany, visiting family and attending a meetup. And yeah, it&#8217;s good to kind of do that travel because it always inspires me to get out of a routine. And yeah, I&#8217;m really glad I&#8217;m here now and motivated.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> To get back into working, improving WordPress.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> That&#8217;s a great time to spend in Germany. And I hope you had luck with the weather.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer</em>: Well, there was this heat wave in the second week. It completely knocked me out, to be honest.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: Yeah, that was really hard. And a lot of people say that.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> It was great and went on the last day I went to Legoland for the first time, which was also an experience and exhausting, but great.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> That’s here between Munich and Augsburg.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, I think it&#8217;s close. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, between my first time. Oh, nice. Yeah, maybe I should go there too. But it is fun.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> It is fun. Maybe not. I don&#8217;t recommend to go in the summer on a Sunday, which we did, but. Oh yeah, that&#8217;s actually really fun.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Family day. Yeah. So you mentioned you attended the meetup in Porto. What was your takeaway from the meetup with digital?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> So it was actually the main reason I came to Europe for it was the first time all products meetup from Automattic in beautiful Portugal for me, also the first time I&#8217;ve been to Portugal, which shouldn&#8217;t happen to not visit before. But it was really cool. I love Portugal. Really lovely people, beautiful vibe, nice weather. Yeah, it was really relaxing, really a treat. And then very inspiring and motivating to be in the product group for the first time all together in a nice setting and we had amazing conversations. For me, I also got to know my team a little bit better because I just sort of recently switched into dot com, so that was helpful. But yeah, also a lot of meaningful, deep conversations and I&#8217;m really, really motivated after that meetup.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Oh yeah. So when you said meetup, I&#8217;m still in the community brain, so I thought it might have been a WordPress meetup because I spent some time. And that&#8217;s probably also the reason why my brain went there instead of the internal. Because I spent some time with meetups, local WordPress meetups in Salzburg and in Erfurt and also in Munich. I restarted the meetup here in Munich with a few of the original founders and some other people and. And it&#8217;s a totally different vibe than a WordPress conference.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> That is true. I love meetups.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> You meet 15 maximum 20 people and then you learn more about how they use WordPress, what they really move a normal user. So it kind of grounds you much better than kind of always being in the contributor section, kind of.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> So that is true. Well, there was WordCamp Europe, which I didn&#8217;t attend because it was just so much. I attended WordCamp Asia, which I also loved this year. That was such an amazing experience and very motivating. And I talked to a lot of people who are meetup organizers in India and I really now want to visit one of their meetups. It sounds fun. I also visited the meetup here in Bangkok before and I love the people there, the really tight community. And I&#8217;m also. I have been thinking for many years now that I should actually start a meetup in our town in New Zealand. I haven&#8217;t committed, but I&#8217;m always coming back thinking about it. So maybe I should just commit and do that because it would be cool to have like a local.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> In New Zealand. There aren&#8217;t many around, but it would be cool.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Well, the first thing that you need is a co-organizer. So don&#8217;t start until you have a second person to do that because we travel a lot. Well, I travel a lot and I cannot be at every meetup, so I need somebody else to do that. So that was kind of back of mind.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> That&#8217;s a good advice.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. And the meetups in India, they&#8217;re really big. They&#8217;re 40, 50 people.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I talked to someone and. And they have 200 people every month on Surat. I was like, I want to come. Yeah, it&#8217;s amazing. Like, I want to visit.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> It&#8217;s a small word camp for an evening kind of thing.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> That is so true.</p>\n\n\n\n<h3 class=\"wp-block-heading\">Calls for Testing</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> All right. Yeah. So work for 7.1 is progressing and there are calls for testing out, and this is the first time that there are so many out there. There are five of them. And if you want to learn what&#8217;s really in 7.1, there&#8217;s no better way to take a deep dive and heed the call for testing. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So there&#8217;s a call for testing for the responsive styling and yes, it&#8217;s coming to WordPress now. And then there&#8217;s a call for testing for the new modal media editor that opens up when you click on the crop icon in the toolbar of an image block or a cover block. And then there is the call for testing for the client media processing. That&#8217;s a feature that comes to 7.1 where the client, the browser is actually doing a lot of work in uploading the upload side of the image uploads and the resizing and then dumps it into the WordPress media library. </p>\n\n\n\n<p class=\"wp-block-paragraph\">There&#8217;s also a real time collaboration outreach effort that is also a call for testing. And then there&#8217;s a call for testing for getting Unicode into email addresses. And that&#8217;s kind of fun too. So the testing has done an amazing job putting those calls for testing together because you get instructions on how to use it and videos to show you how to use it and then the instructions also for the testing. So your mental work on how do I test this is already done. You&#8217;re just going to follow the script and, and then have room in your mental room to observe your feelings for whatever you&#8217;re doing and kind of try to, to verbalize them and share your feedback. So it&#8217;s really interesting and I hope you dear listeners are going to heed those calls. One or two of them. You don&#8217;t have to do all of them. Yeah, I don&#8217;t grade you, but there will be a test. Yeah. </p>\n\n\n\n<h3 class=\"wp-block-heading\">Community Contributions</h3>\n\n\n\n<p class=\"wp-block-paragraph\">Then there are also two. Well, I said two, but there are actually three merge proposals from the contributors. There&#8217;s new things coming to WordPress Core. One is expanding the WordPress Core abilities. It&#8217;s a merge proposal to add three read-only abilities to cover the settings, content and users for AI. And it gives AI clients real tools to call so the agents can understand what your site&#8217;s configuration, post and people are doing. There&#8217;s a discussion should this be in core, should this be a plugin and all that you can read up on the post. And the second one is also for AI is the guidelines to build knowledge on your website. Yeah, what&#8217;s your tone about what&#8217;s the tone of voice, the expression, what the topic is about and what the members are, what the standards are and all the notes for revision and capabilities. So an AI agent could follow those instructions as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And for people who manage multiple sites with one AI they can actually it&#8217;s different for every site. So it&#8217;s really important to have that on the site to give that that&#8217;s a new content type and new settings pages for these things. So you can even use your AI to update those guidelines. There&#8217;s one thing and then of course the last one is the bigger one and that&#8217;s a merge proposal for the design systems theming Andrew Duthie published a merge proposal bringing design tokens and new theme components to WordPress built by the Gutenberg Components team. But it turns the hard coded admin styles into CSS custom properties so your plugins and screens stay consistent and accessible. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Then a color ramp tool generates harmonious accessible scales from just two seed colors and the user color scheme reaches the site editor which will come into I think 7.1. So with a dark mode on the horizon. So it&#8217;s a good time to get involved in the discussion now, dear listeners, and to make your point of view listen to and converse with others on the impact for you and your business and for your clients because that&#8217;s where the decisions are made. Some of them are already made but they are loosely held, so to speak. </p>\n\n\n\n<p class=\"wp-block-paragraph\">There&#8217;s a whole aspect of WordPress is we have strong opinions but they&#8217;re loosely held. If you have a good argument and you have a good use case or a different point of view, you are listened to. Of course if aired respectfully and even if it&#8217;s not respectful it should be because we all want to do the same thing. So the links to all the merge proposals and calls for testing will be in the show notes. You get to pick what you are interested in and so that&#8217;s a whole thing that happened in the last three weeks when we didn&#8217;t have a Gutenberg change log. So I wanted to catch you up. Any thoughts on that Ellen, that you want to share with our listeners?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I think on the merge proposals but I think for the calls for testing the responsive styling of course sticks out to me because we have been calling for that for so long and the user the feedback was always there like what is that without responsive styling? So now here it is. So yeah go ahead and test it and I will do the same and kind of contribute to make it better or improve what. What we can. But here we go. We finally have. I think the number one ask always this is missing in Gutenberg.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. I think the number one ask is not the responsive design because Gutenberg is responsive in certain areas. It&#8217;s a viewpoint. It&#8217;s a media kind of thing. Yeah. So what is a tablet? What is a mobile. And to change things for those screen sizes. And there was a big hesitation and there&#8217;s. On the developer blog, there&#8217;s an article about intrinsic design that&#8217;s built into Gutenberg. And I think the thinking was, okay, intrinsic design is what comes after media queries. Comes after. So because we need to also talk to what is component in the container queries in CSS and all that. And at the start of Gutenberg people wanted to push the envelope of intrinsic design and then see what&#8217;s missing. And. And now we know where it all goes and how to. To change it. And there is a. Yeah, we talk about it a little later when we come to that. Yeah, but so that&#8217;s kind of. That part why it took so long, I think was the reason why I kind of went on the drain there.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> That is true. I&#8217;m glad that we didn&#8217;t do like earlier versions of it. It seems late, but yeah, there&#8217;s. There&#8217;s a reason.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> But I think, yeah, a lot of plugin companies actually filled that gap quite nicely. I also saw a few implementations where you didn&#8217;t have three viewports or breakpoints, you had six, so. And I kind of couldn&#8217;t imagine that a normal user can keep in their head six different sizes to control the styling and when something needs to be changed to find it again where that actually was changed. I get the hesitation. So yeah, yeah..</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> You quickly go a little overboard with that. And I&#8217;m also glad that we didn&#8217;t do that on the core level.</p>\n\n\n\n<h3 class=\"wp-block-heading\">What’s Released &#8211; WordPress 7.0.1</h3>\n\n\n\n<p class=\"wp-block-paragraph\">Birgit Pauli-Haack: Yeah. So that brings us to what&#8217;s released and it&#8217;s release week kind of thing. So on Wednesday and we&#8217;re recording this on Friday, July 10, Thursday, July 9, WordPress 7.0.1 was released with bug fixes from the major release. And the release candidate announcement has a list of all the fixes in track and from the Gutenberg repo, </p>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;m preparing an article for the Gutenberg Times. I will probably put in the show notes about what the fixes actually did is the WPKSS or however say that CSS corruption on some of the admin design glitches and some more. So you can have a summary of that. Yeah. </p>\n\n\n\n<p class=\"wp-block-paragraph\">On Wednesday, just the day before 7.0.1, a user ask in the core channel, what is. I see all the communication. Yeah. What is the latest version actually, and at that time it was still 7.0, but we say but tomorrow it&#8217;s going to be 7.0.1. 7.0.1. Yes. Yeah, yeah. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So 7.1 last month Anne McCarthy posted the roadmap 7.1. It was aspirational and also very concise with an outline and links to the tracking issue for the many features contributors have been working towards. Beta 1 of 7.1 is scheduled for next week. That&#8217;s July 15th. And by then we will know the full picture of what made it and didn&#8217;t make it into the release features from the Gutenberg plugin releases 22.6 through 23.6 will come to 7.1 unless they&#8217;re behind an experiment flag or plugin or plugin only as guardrail 23.6 release candidate. And that&#8217;s what&#8217;s getting into the beta version is on July 14, so one day before the beta version, because that&#8217;s where all the NPM packages are created and all the things get into the branches. Right feature branch. </p>\n\n\n\n<p class=\"wp-block-paragraph\">The final release of 23.6 is moved to July 22nd. That was kind of decided by the release tech leads to get it all just in time for beta and organize that. So the deadline for enhancement into the plugin on 7.1 is July 14, the day before beta. So if you&#8217;re a contributor and you want to get the feature that you were working on in this weekend is probably crucial because it also needs to be reviewed and approved. So give people time to get in there. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So yeah, what should be on your radar for 7.1 is the mandatory iframe of the post editor. We mentioned it before. It actually has also a lead time to come to this point is the post editor runs inside or the block editor should run inside an iframe because it isolates the content from your admin styles and makes the viewport units and media queries work correctly against the editing canvas rather than the browser window. And in 7.1, iframing becomes more enforced for block based themes or for all themes because it ensures that canvas behaves predictably and the blocks render accurately for both the post editor and the site editor, template editor and pattern editor and plugin developers. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So plugin developers who have not updated their Block collections from version 2Block JSON version 2 to 3 should actually upgrade to make this all work. If you want to catch up on the newest discussion, there&#8217;s a Gutenberg PR that&#8217;s called Always the post editor for book theme. And that&#8217;s the 79819. And if you put that in your playground, you can actually add some of the plugins or your staging site, or add it to the staging site, then you can test your things. I think the biggest problems are sites that are maintained by people that do not read the make blog or do not listen to podcasts or read blog posts about their site or the software. And those are sites that haven&#8217;t been maintained for a while, otherwise they would have already upgraded things. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> So block themes need to do anything too. They haven&#8217;t. No. Right.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I haven’t looked into that.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> It&#8217;s a problem for blocks. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> That are in the block plugin collections.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. That only. They were only meant for post editor and have never been used inside editor or something like that. Because those would have broken already. Because the site editor since 2020 kind of uses an iframe version. So if you use the block in a template or use the pages thing from the site editor, the pages administration from the site editor, you will know when the block breaks. And in the post editor, if you go into the console, you see the notification that it&#8217;s going to be deprecated. But if you&#8217;re only in the post editor and never look at anything else and those blocks might break if they&#8217;re not updated.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> What should they do if this happened to them?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> There are some guardrails in place and there were two PRs. That one is the hard kind of, okay, we do all the iframe insight and that&#8217;s going to be in beta. And in beta, listening to the feedback will decide if there will be a switch to the other less hard choice there in terms of saying, okay, if it&#8217;s a block theme, it&#8217;s going to be an iframe post editor. But if it&#8217;s not a block theme and. Or if there are blocks on the page that are on the old version, like the version 2, then it will not be iframed, but that is subject to change. It&#8217;s kind of. There&#8217;s a trial and error kind of process here to figure out what is the best way move forward. Because the first post blog post about that was actually published in June ‘21, so five years. And then there was another one in November 2025, and there was another one in February ‘26. So there is a lot of leeway or runway for agency developers and plugin developers to kind of update, but sooner or later there will be a push to make it final and then deal with the consequences. Yeah. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Anne McCarthy&#8217;s roadmap included two updates that we already know have been already punted. So that&#8217;s the update to React 19 and the deprecation of the classic block. Those things have been punted. And there are blog posts on the make blog for the reasons and next steps for that. It&#8217;s pretty much the classic blog where there was a lot of communication around it that said, okay, maybe it&#8217;s not a good time yet. And for the RAC 19 there were too many backwards compatibility issues, but it&#8217;s going to come. So it just needs a little bit more runway to get final to that point. All right. Any thoughts about that?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Not really. I&#8217;m excited for 7.1. I think we haven&#8217;t mentioned the release time. Is that still planned for WordCamp US and like August 19th.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: Yes, the planning is July 15th being beta and then August 5th being release candidate and August 19th final release on the last day of WordCamp US.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Okay, cool. I&#8217;m excited.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: Yeah, I&#8217;m excited too. There are nice features in there and there are nice updates to the site editor there and I&#8217;m very excited about that. </p>\n\n\n\n<h3 class=\"wp-block-heading\">Gutenberg 23.4</h3>\n\n\n\n<p class=\"wp-block-paragraph\">And now that brings us to Gutenberg 23.4. Let&#8217;s go and talk about things.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> So that was released June 17th. We&#8217;re also going to talk about the next release 23.5 right after. So let&#8217;s start with this one first. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So I think the most exciting things in there are related to media. And the first thing that is pretty exciting is if you load media into the post editor, you now get like a little notification snack bar that kind of tells you the progress of your uploads. Like if you load dump, just dump in like 20 images you&#8217;re going to see. And you also I think timed first image, second image, third image. We are used to it, I don&#8217;t know from apps and stuff. So I think that is really, really helpful to see the progress of the loading there.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. And Adam Silverstein did an amazing job to get this all done. There&#8217;s a second one that also that the upload process is now enabled. So when it&#8217;s interrupted because you&#8217;re offline or something, it also resumes automatically the upload on the when the connection returns. So this would save quite a few hurry up and wait kind of thing. When you&#8217;re maybe on a train or in a country where you don&#8217;t have stable Internet connections to upload your media. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Right now, I only highlighted that because it&#8217;s in the same thing that the client side media processing is now geared towards 7.1. So the plugin’s only guardrail has been removed and it can be merged into WordPress.</p>\n\n\n\n<h3 class=\"wp-block-heading\">Enhancements</h3>\n\n\n\n<p class=\"wp-block-paragraph\">The next one is the playlist block. It now has a visualization style selector so it has the playlist lock. When you try and test it, you&#8217;ll see there is a visualization kind of where the music builds some animation on top of the track and you can select the styles now for that. And also it now has a track length setting so you can set up the settings for that as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Another thing I kind of liked because I&#8217;ve built that before is if you have, I don&#8217;t know, on a WooCommerce theme or something, if you want to have the log out log in or for any other kind of purpose, you can now get that into an inner block of the navigation submenu. The lockout lock in. That wasn&#8217;t possible before. It&#8217;s a small thing but very helpful for whenever you want to have that in a drop down or sub menu.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. If you have a membership site or subscribers only content and you. You offer them a nice accessible way to log in and log out. There&#8217;s a very minimal change, but you might need. You will notice it. It&#8217;s the time to read icon has been renamed to time. So it&#8217;s not. Might be getting rid of redundancy, but I&#8217;m not sure it&#8217;s even clearer. It&#8217;s clear enough. So yeah, that&#8217;s the change.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, I think that&#8217;s mainly kind of to reuse it, to be able to reuse it for more things. Right.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Another thing that I think is a little bit bigger and quite helpful is that now it&#8217;s possible that columns and gallery blocks can be transformed into grid variations for layout styling. I think that&#8217;s kind of cool. I think I wanted to do that many, many times.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, me too. Because I forgot that I have a grid block and I tried to do things with the columns block.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, yeah. So often you kind of start out in a column and then you realize no, that should be a grid.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> And then again for the media. But this time it&#8217;s out of the block editor. The media editing modal has changed and it has some new features, better features, new libraries. And we talked about it before on this podcast. But now you can reorder the details field has been reordered and then now you have aspect ratio controls for the mobile toolbar and they refactored a little bit the modal layout in total. But this is a great, great tool. So these are all just the usability issues. The main feature was already in 23.2 or 3 and there are editable attachment fields. And the mobile tool. The mobile toolbar has been updated to include the aspect ratio controls. Also uses the zoom uses now plus and minus buttons. Yeah. Instead of the spyglass.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Oh yeah. That is actually very helpful an update on the dashboard. And you maybe have to help me out if I&#8217;m not 100% sure if I understand that correctly. So we always had the grid columns and now they are opinionated. So pre designed responsive. Is that correct if I say that like in your dashboard, like the two columns, I think it&#8217;s maximum four columns. It doesn&#8217;t go more than four and then it reduces like it nicely responsive by default, right?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. It goes from 960 desktop width, so four columns to two columns between a tablet kind of size, between if it&#8217;s smaller than 960 to 600 and if, if it&#8217;s smaller than 600 or 600 and smaller, it&#8217;s going to one column and has a mobile kind of view there. So it&#8217;s definitely responsive. But that&#8217;s the dashboard. It&#8217;s about the admin dashboard. It&#8217;s not in the block editor. So that grid has nothing to do with a grid block in the block editor. So we have a little issue there with using the same words for different things. But that&#8217;s because it&#8217;s all grid based. But it&#8217;s a good thing. </p>\n\n\n\n<p class=\"wp-block-paragraph\">And contributors have an experiment on redesigning the dashboard and also let blocks going in there and all that. So it&#8217;s. It&#8217;s quite interesting to see that there are more additional features in there like this day before. Right. So if you&#8217;re in a block, you can. They&#8217;re figuring out how to put the previous day and previous years. So if you have a blog for 30 years or 10 years, you. You get. Or even five years. Yeah. You get a notification, what you published about this time of year, last year or something like that.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, I like that.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> And that was actually kind of nice.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> It kind of embraces your blogging history.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, exactly.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> One actually kind of cool little change that I really like is in the site editor now. The admin color scheme, if you select another one, get translated into the site editor. So I know a lot of people always say, oh, you go into the site editor and it&#8217;s this black different looking user interface. And yeah it&#8217;s. Why is it so dark? So now it kind of adopts the color scheme you have selected. And I think this like part of bigger work going into kind of making the interfaces more be like one thing instead of.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. The unification of the admin interface is also a long time coming and I think that&#8217;s a, that&#8217;s a fantastic step. Yeah. To kind of just make it sure that if you have a green sidebar that it&#8217;s also green in the site editor.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah. Because why, why wouldn&#8217;t it be?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: Yeah. So on the client media side again, the ultra HDR JPEGs that are detected by upload and then the originals are kept unmodified and the sizes subsizes. They preserve their ICO standards. So you have a better quality of the Ultra HD but it also handles the bigger sizes. So it&#8217;s a nice addition to the media upload feature that we talked about before.</p>\n\n\n\n<h3 class=\"wp-block-heading\">APIs</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> And then we also have an update on APIs. Oh, God. You have to help me with this one. I read it, but now I&#8217;m kind of like what was that about again? The future it will help.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: So it tracks per entity, the view configuration for pages. And then so it&#8217;s about the pages of pages, posts, patterns, template parts, templates and have their default layout in the grids being the, the layout grid in the admin. So when you&#8217;re in the site editor you have a choice when you look at templates, what kind of layout. You have a grid layout, a list layout and these kinds of things. And now there is actually an API that you can extract that view configuration for several other things. If you&#8217;re plugin developers, you can then replicate what the, what the priority is or what the preference is for your user. And you see that in the rest API when you pull out the information and display it again, that you get the configuration with it. I don&#8217;t know.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> So you can practically kind of unlock whatever the configuration was in default and then use that in a plugin or something, right?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Exactly. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> The same screen.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> So when you. One use case could be if you are using WordPress as your content container, but have another application that displays things as a headless or in another. In another admin content management system that only talks to WordPress with all and pulls out the things that are in WordPress and measures it up with other data that&#8217;s also in the system, then you are able to display the same what the user sees in the WordPress admin, you can display that also in your system at the same time. So that kind of would be one of the use cases that I just made up.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, that makes sense and very good to explain in that way. What else do we have next?</p>\n\n\n\n<h3 class=\"wp-block-heading\">Experiments</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> So the dashboard we talked about that now has also an events widget that can be filled. </p>\n\n\n\n<h3 class=\"wp-block-heading\">Documentation</h3>\n\n\n\n<p class=\"wp-block-paragraph\">I wanted to point out one documentation thing that is really a big deal that Juan Margarido has taken on in April or May and push that through a merge now with 23.4 and that is the auto generation of the per block API reference from the block JSON files. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So, until now it was really hard to figure out, okay, what&#8217;s the block markup and are there all the supports in there? Because the documentation was handmade. So if somebody updated a block&#8217;s configuration and block JSON and added support to it for other things, it would not show in the documentation until someone touches the documentation page. And for 90 blocks or so that are in core right now, that&#8217;s a moving target and fast moving target. So he proposed to go in and auto generate that documentation page for humans and AI to map multiple things. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So one is the parent relationship with other blocks like think accordion block and the sub blocks there, the attributions in the table, in a table that what the block supports and with links to explain those features. So if you don&#8217;t know what the alignment or support of a block is, you can look it up right from there and then what block styles come with core so you don&#8217;t have to figure that out from the interface. So like the button comes with two styles, one is the default, the other one is the outline style. Then which CSS selectors are automatically created and then an example of the block markup. And last but not least, also the links to the source of the information and the packages. So you have a full 36-degree view on the block. And because the documentation is auto updated, it comes right there when the new features are kind of added to the block and it will be shown in the documentation. </p>\n\n\n\n<p class=\"wp-block-paragraph\">This not only helps the developers and theme developers to have a better handle on or one lookup page or section in the documentation, it also helps AI agents to form a comprehensive space to learn about WordPress blocks. Because I have found that AI sometimes just does a custom HTML block and puts it all there instead of using a column block or cover block or something like that. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So this is a very big deal because that&#8217;s something where AI elevates human capabilities because he used AI to run the code that parses the block JSON and puts it into the documentation page and then also has that documentation page from the GitHub repo into the developers.wordpress.org document block editor documentation automatically merged there. So this is a big deal. And kudos to Juan Margarido. He also spent some time getting some community input from the documentation team from the Gutenberg leadership. We had a hallway hangout with a Q and A and it finally was merged now. So kudos.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, that&#8217;s pretty cool. </p>\n\n\n\n<h3 class=\"wp-block-heading\">Gutenberg 23.5</h3>\n\n\n\n<p class=\"wp-block-paragraph\">I think now we&#8217;re moving to the latest release, 23.5, released July 1. </p>\n\n\n\n<h3 class=\"wp-block-heading\">Enhancements</h3>\n\n\n\n<p class=\"wp-block-paragraph\">I think the first thing we wanted to highlight was that the design system token defaults now with out a runtime which practically, as far as I understand it correctly, helps that all the styling from the design system is just there by default. There&#8217;s nothing that got missed. Is that correct? Yeah, because it happened before that some design elements were in style.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Exactly. Yeah. It&#8217;s now available as public export. That&#8217;s pretty much so you can use it in your own apps that you put into apps. I say it&#8217;s also called plugin, so you can use it without having to import it into your plugin via NPM and these kinds of things via the build process. So you can just import it into your app here. </p>\n\n\n\n<p class=\"wp-block-paragraph\">But I also want to point out again the match proposal for the design system. Everything there is kind of in a holistic way explained and also what it&#8217;s supposed to come to. And these are all plenty of the component work that&#8217;s done for 23.5 and released or merged is actually in support of the design system and the UI revamp of the components.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I think about the block library. And we have a few other updates in the release. The first one is that the viewport states and the controls are now support for they supporting aspect ratio and all the related controls with that.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> So I think yeah, it&#8217;s part of the styling system. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> For image blocks featured image block media library also no, no background images. A background cover image and cover block, yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: Also yeah, okay, that&#8217;s the viewport states is the name that they give the responsive editing screens. So those controls are now also available. </p>\n\n\n\n<p class=\"wp-block-paragraph\">There&#8217;s also a line item in the block library section of the changelog about the classic block to hide it from the inserter that has been reverted. That&#8217;s part of the blog post that I mentioned earlier that was published after the release of 23.4, so I wanted to point that out. </p>\n\n\n\n<p class=\"wp-block-paragraph\">The next one is that the media editor modal is now available also for the cover block that comes with that. I think I mentioned that already. But now when you have a cover block with an image, you can also use the media editor modal to crop it, to rotate it, to tilt it and all that kind of things.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> That&#8217;s a nice add on small but also visually really nice to have is that the icon block now has controls for flip and rotate the icons, which is very nice to have like a. One of the things you like kind of expect to be able to do and then it&#8217;s super difficult. So now you can do that. And then it also. What is the second one about?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Oh, it just adds a default placeholder instead of to the blockchain.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Yeah. So there was also a big push to have text alignment support for some of the text blocks. And now the block quote. I think there were seven or eight blocks that have that again. This time there was missing text align support and that has been rectified. So now you have also text align support for the block quote. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Yeah, that was one thing that threw me quite a bit and quite often I always went back to the quotes block. But a quote block and a pull quote have different use cases and a pull plot is an excerpt from the article and you couldn&#8217;t make it not centered. It was kind of odd that you couldn&#8217;t left align it. Which is my favorite. Yeah. Centered when you have more than one word in the center, you hardly can read it. Or more than one line. Yeah. So I always wanted to be left aligned and I can&#8217;t quote just a sentence. Yeah. So I&#8217;m really great that they have a text aligned support now that makes sense.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> It&#8217;s these little things that kind of throw you, throw you off if you don&#8217;t have them and you&#8217;re like, why can&#8217;t I then? I think one of the biggest things in this release is that the resizable editor now it&#8217;s like fully resizable. You can drag it along. It&#8217;s not just mobile, tablet, desktop, you can get your own size and preview it. I think this is one of the biggest releases in this. In this update 23.5. So can you do anything else? You can resize it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Birgit Pauli-Haack: Yeah, yeah. It has a handle though. You can resize it. So you have a handle to make it smaller but not as small as mobile. So you can see if. If somebody uses a tablet whatever and odd width you can kind of test it if, if your settings actually work there or your. If the. The layout is there. But you cannot change the viewports themselves. Yeah. They are not customizable. It&#8217;s just so you can see the preview there. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Which is very helpful like visually.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. Especially when you get a call and you don&#8217;t have that device on hand. Yeah. That a client sees or a client has a complaint from their clients that something is wrong on the view. You can just kind of tested in the block editor without having the device on hand. </p>\n\n\n\n<p class=\"wp-block-paragraph\">But there is a long standing request to be able to change the viewport numbers and because right now they are hard coded to I think 768 is the desktop and then 467. Yeah. 468 is the tablet and or between there is tablet and then below is the mobile. But there is good news. There is coming with 23.6. It&#8217;s already merged is in PR where you can change that via the theme JSON. So theme developers are now able to change viewport numbers for their sites. There is no UI yet for it. But that&#8217;s typical. That theme JSON is first. So theme developers can test it out and can actually use it. But for the UI you need a little bit more information how things are going and how users would work with it.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> And there&#8217;s also been a smaller change on. If you add a note that just. It&#8217;s simplified how the show more or less collapse works. If you have a long note you want to collapse it and show more or less. I think that just has been reworked or simplified.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Right.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I don&#8217;t think it&#8217;s anything we see on the user side. Right. It&#8217;s more in the background. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> It&#8217;s just faster. Yeah. It&#8217;s kind of that. Okay. Mostly performance issue. Yeah. You&#8217;ll see a slight change there. </p>\n\n\n\n<p class=\"wp-block-paragraph\">There is the experiment of the omnipresent toolbar which is pretty much the admin bar. In the editors you see the admin bar, the black admin bar on top of the screen when you&#8217;re logged in and you look at your website from that perspective and you also in the post editor you see the black toolbar but you couldn&#8217;t in the site editor or in the other editors. So now the experiment is to show it but then also unify the interface because the design view or the site editor has its own W to go back to the other admin. And when it&#8217;s in the admin bar you just click where you normally click to get to the site. So it&#8217;s all unification of the interface pretty much. And now you can see the site icon instead of the dash icon if you select it as well in the toolbar. So there has been an ongoing effort and some of it might come to 7.1. It&#8217;s on the roadmap for the admin bar everywhere, so to speak.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I think one thing that I remember I struggled with quite a lot is the flex behavior of children. So now there has been.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> You mean your child? Well, it&#8217;s not the flexibility of toddlers.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Ellen Bauer: The Flex elements. I love flexbox CSS always have. But I think we always had a problem that they weren&#8217;t behaving like exactly like CSS. Flexbox should behave. So now one of the changes has been that so flex children that had a fixed width, this is now like truly fixed. I think it was squishable before. Can you say that? Is that correct? And now it&#8217;s like a truly fixed width to zero. So I think that&#8217;s one of the things visually that helps a lot. And then the other one was grid layouts now have fill available space, toggle. Is that correct? I think it&#8217;s just a toggle in the settings. Right. That you can toggle on and off and then you have auto fill and auto fit behavior. Okay. And this behaves exactly like CSS grid behavior.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, you would expect. Yeah, that&#8217;s pretty nice. There was some. Some quirkiness to the grid block and the grid layouts and I&#8217;m glad that Isabella is working on that constantly to improve it and to get back to it.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, she&#8217;s doing great work. I met her live at WordCamp Asia this year and it was really pleasant because I love flexbox Grid. I always love these blocks and CSS settings and they never quite worked. How I or like went into that depth, I wish they had. And yeah, she&#8217;s. I think, like, she has the same opinions, so it was a good chat. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Another thing that is kind of cool and fun to have is that now global styles allow text shadow settings. So, yeah, there&#8217;s these options of text shadow, if you ever want to use that in like a cool, fun design or. So now you can set it in global styles, which is really cool. That wasn&#8217;t possible before at all, I believe. Right?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Right.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack</em>: It&#8217;s a new style support.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I really like that.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, I tested it and it&#8217;s really nice. There are some presets in there that come from core, and I still need to figure out or find out how you can switch off some of the styles and how you can add your own styles like you can do with the shadow box. The shadow box has a feature that you can switch out the core styles with your own styles or just switch them off, but you definitely would need that for the texture as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Maybe we will add that.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, it&#8217;s not there. It&#8217;s the first version and the first version is pretty much a minimal viable kind of setup. Yeah. </p>\n\n\n\n<p class=\"wp-block-paragraph\">The next thing is again Media Editor modal. It now has some error states. You can magnify the crop to fill the canvas and the current post always includes the initial options. There are also minor fixes, but that is because it gets ready for 7.1 release. So every aspect of it is actually and comes from feedback from the call for testing. The call for testing was actually already issued in I think in May. So it&#8217;s already a month in or two months in. So there is already some feedback coming back. </p>\n\n\n\n<p class=\"wp-block-paragraph\">The data layer has a feature for the real time collaboration or many features, but one of them stands out is that you can disable collaboration per post. So if you have maybe a recipe or a book post type and you don&#8217;t want anybody to collaborate with you on that, you can switch that off. It&#8217;s probably best for very visual post types or it&#8217;s also necessary for template parts or for navigation. Those are also post types. You can control that now. </p>\n\n\n\n<p class=\"wp-block-paragraph\">So there was a for a while in the text controls there was a prop to have the next 40px default size and there was underscore. Underscore was an experimental property and that now has been made the default. So if you had a 36 before or 32 on the default size for the text box, then if you wanted to be in the same realm as WordPress itself, you had to use the underscore next 40px default size prop to have the same sizes of the controls and now those are default now. So you don&#8217;t have to do this experimental prop to use but it will change how things work. So you might want to, as a theme developer or a plugin developer, you probably want to check your plugins, your text control components, how they change behavior or at least the default layout. So that&#8217;s why I&#8217;m calling that out here in the episode. </p>\n\n\n\n<p class=\"wp-block-paragraph\">And also a similar thing is known that 23.6 Gutenberg 23.5 bumps. The minimum required version to install the Gutenberg plugin is now 6.94 versions 23.5 and newer. So if you are on 6.7 or 6.8, you are not getting the newest version of the Gutenberg plugin. So I think. Oh, there&#8217;s one more. Did I overlook something?</p>\n\n\n\n<h3 class=\"wp-block-heading\">Performance</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> No, I think on performance you highlighted that blocks migrate markdown converter from showdown to marked. And what does that do?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> It actually is just performed faster. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Oh, yeah. Okay.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> And it also has a different parser, so it might have a say. It&#8217;s G. What&#8217;s it called? GTM. There is a standard for markdown that comes from GitHub and it now adheres to that standard. Yeah. So that&#8217;s updated. It&#8217;s a minimum change most people wouldn&#8217;t even need to do. But if you copy paste something from GitHub or from other Markdown editors or from your AI agent, it&#8217;s a different parsing process.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I just researched that and it said that the previous one was like from 2018 or so and this is just like a faster newer version that we updated to. Okay, that makes sense. </p>\n\n\n\n<h3 class=\"wp-block-heading\">Experiments</h3>\n\n\n\n<p class=\"wp-block-paragraph\">And then there was one last highlighted thing on the block library unwrapping. Classic block migration notice experiment.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, that&#8217;s part of the effort to the classic logic. But that has also been reverted so it will not announce that this is deprecated. So it&#8217;s important to know that that line item in the change log has been overwritten already with a newer version that comes to 23.6 on July 22.</p>\n\n\n\n<h3 class=\"wp-block-heading\">Various</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> And there was another small update on icons to self declare icons color on the icons block.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Oh, nice. Yeah, I overlooked that. I got lost in the changelog already. So.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I mean there were a lot of these smaller things.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Oh yeah. So if you have an icon, it can say I&#8217;m. I&#8217;m only in blue or something like that. What does it mean, the current color?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Oh, current color. Yeah, of course. Duh. Yeah. I was still stuck on tab sync finally second the tab sync because it&#8217;s the. For stabilizing it to come into 7.1. The tabs block is still under active development until July 14, so don&#8217;t start building on it yet because there&#8217;s API cleanup and refactoring going on where the contributors try to nail down the final version before it gets into core. Yeah, that&#8217;s the end of it.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Wow.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah, we still had a lot to talk about, Ellen. Yeah. So apart from the responsive styling, are you excited about some things that come to 7.1 in the near future?</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I think for me, being like a Visual X thing builder or and working on blocks, I think responsiveness is a big one and I&#8217;m excited to see how. Yeah. How we just kind of improve things. Also, I like that we are looking more into the dashboard and finding ways to unify the experience. I think this is one of the things that always come up that it looks kind of like two different versions, partly outdated. And I think we need to move along and kind of come to maybe not make everyone happy, of course, but come to a compromise that we can all live with and then move forward. I think this would really help WordPress to kind of shine in a way that it doesn&#8217;t look outdated or not like one product. I think if we can come together and do that and push for that change, that would be really, really helpful for all of us and for everyone and for WordPress. So I&#8217;m excited to contribute and help to make this happen.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Awesome. Awesome. Yeah. Yeah. I like the new blocks that are coming. Of course. I have been a fan of blocks since the beginning of the block editor, so I like that the playlist block and the TAMS block. And finally. The table of content. There is an effort to actually have the table of content come to WordPress. Right now. It&#8217;s only available for years in the Gutenberg plugin.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I didn&#8217;t even know. I thought it would be in.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Even small things like rotating icons and stuff like that or having them be the current color and all these grid and Flexbox things. They. We need these things. I think it&#8217;s still very, very important to have professional settings like that available.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah. And this is a visual person. You&#8217;re probably also happy that you now can have in the group block. Background gradients. Gradients. We all love gradients. I love gradients. I love gradients. Yeah. And there&#8217;s these kinds of things.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> They&#8217;re like, why aren&#8217;t they there? And so responsiveness. And I think just of kind of growing up Gutenberg and the editing experience.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Seems. And even like with AI helping on a lot of things and being able to patch CSS and stuff on onto things to make things better that we don&#8217;t have. I think it&#8217;s still important that we aim for a really high quality experience in manual editing so people find what they&#8217;re looking for and are not frustrated or get lost. I think that&#8217;s just the quality we want to stand for and have in WordPress no matter what.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> I think the standard should like, should be. We aim. Should aim for that as being just there for people, for users.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> I think we. We develop, as I say. Yeah. Are kind of really immersed in this AI grace and hype and also the possibilities and the usefulness of AI in our work. There is a danger that we forget that WordPress users that are writers or publishers actually are not using AI to do their work on WordPress. So we definitely need a delightful interface and all these small changes, quality of life changes and the big changes like the responsive editing and the dynamic galleries and whatever is going to come. The modal editor, the media editor needs to be delightful and useful for humans that are kind of having fun and producing more content for the Internet that is kind of. Yeah. Eating it whole, so to speak, with AI.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yeah, yeah, I love that too. Delightful is a beautiful word to use. Yeah. We want to delight people using WordPress and this should be our aim. AI or not, like in whatever. We have to meet users wherever they are, however they want to use the tool. It shouldn&#8217;t be, oh, we can leave this stuff now because everyone uses AI. I think if we have a user interface, it would be delightful. If it&#8217;s not yet delightful, we have to make it delightful. And AI can only help us to do that because we can contribute faster, we can move things faster. So let&#8217;s use AI for that, to delight users to meet them wherever they are for everything we offer, and we do offer a user interface. So here we are with some work to do.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haac</em>k: I think that&#8217;s a good end of the show today. Thank you so much, Ellen, to be on the show and walk with me through those changes that are coming and if people want to reach you, how is a good way to reach out to you.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> So I am in the community Slack WordPress community Slack. I&#8217;m also on social media, not that active to be fair, but reachable anytime. I think for WordPress community, the community Slack is the best place to reach me. But if you look at my name, Ellen Bauer, you can find me online on all kinds of platforms and I&#8217;m oh, I&#8217;m actually revamping my Manu and my Little Elmo Studio blog. So there&#8217;s going to be a new design and I&#8217;m really excited to get blogging again. Also doing a lot more like a few more YouTube videos. I have some ideas for that over the summer month now. So, so wonderful. Yeah, I will share if I have some news on that. Look out for Ellen or Elmer Studio and just reach out anywhere.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Excellent.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Yes, I&#8217;m always excited to hear from you.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> Wonderful. Thank you so much, Ellen.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Thank you for having me. Birget, you&#8217;re welcome to be on the show.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Birgit Pauli-Haack:</em> It&#8217;s delightful to have you to overuse that word. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Now, dear listeners, the show notes will be published on GutenbergTimes.com podcast this is number 132, 132. And if you have questions and suggestions or news you want us to include, send them to <a href=\"http://changelogudenbergtimes.com\">changelog@gutenbergtimes.com</a> that&#8217;s <a href=\"http://changelogutenbergtimes.com\">changelog@gutenbergtimes.com</a> thank you all for listening. And until the next time, goodbye.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Ellen Bauer:</em> Bye.</p>\n\n\n\n<p class=\"wp-block-paragraph\"></p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sun, 12 Jul 2026 10:57:10 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:19:\"Gutenberg Changelog\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:27;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:116:\"Gutenberg Times: Roadmap 7.1, Gutenberg 23.5, Responsive Styling, Migration to Block themes — Weekend Edition #368\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"https://gutenbergtimes.com/?p=45946\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:119:\"https://gutenbergtimes.com/roadmap-7-1-gutenberg-23-5-responsive-styling-migration-to-block-themes-weekend-edition-368/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:24996:\"<p class=\"wp-block-paragraph\">Hi there, </p>\n\n\n\n<p class=\"wp-block-paragraph\">After a four-week break — courtesy of a sciatic nerve with strong opinions — I&#8217;m happy to be back in by office chair and in your inbox. There is plenty to catch up on.  </p>\n\n\n\n<p class=\"wp-block-paragraph\">Beyond the updates on the new WordPress and Gutenberg versions, you&#8217;ll find stories below from WordPress veterans on migrating to and working with block themes on client sites and dive into more complex theme solutions or </p>\n\n\n\n<p class=\"wp-block-paragraph\">Don&#8217;t let me keep you from your light summer reading. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Have a splendid weekend ahead! </p>\n\n\n\n<p class=\"wp-block-paragraph\">Yours, <img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f495.png\" style=\"height: 1em;\" /><br /><em>Birgit</em></p>\n\n\n\n\n\n<h2 class=\"wp-block-heading\" id=\"0-word-press-release-information\">Developing Gutenberg and WordPress</h2>\n\n\n\n<p class=\"wp-block-paragraph\">The team around release lead Aaron Jorbin pushed <a href=\"https://wordpress.org/news/2026/07/wordpress-7-0-1-maintenance-release/\">WordPress 7.0.1 Maintenance release </a>out the door to update millions of WordPress sites. The update covers 17 Trac tickets and 14 Gutenberg PRs. The full list is available in the <a href=\"https://make.wordpress.org/core/2026/07/01/wordpress-7-0-1-rc1-is-now-available/\">RC 1 announcement post </a>from last week. </p>\n\n\n\n<p class=\"wp-block-paragraph\">In <a href=\"https://gutenbergtimes.com/wordpress-7-0-1-fixes-registration-spam-wp_kses-css-corruption-and-7-0-admin-design-glitches/\"><strong>WordPress 7.0.1 Fixes Registration Spam, wp_kses() CSS Corruption, and 7.0 Admin Design Glitches</strong>,</a> I cover the most important fixes for end users and developers of this release.  You&#8217;ll learn how the registration-spam loophole got closed, which admin design glitches were sanded off, and why developers can finally remove their <code>wp_kses()</code> CSS workarounds. Update your sites soon if auto-updates aren&#8217;t enabled. </p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ryan Welcher</strong> compiled <a href=\"https://developer.wordpress.org/news/2026/07/whats-new-for-developers-july-2026/\"><strong>What&#8217;s new for developers (July 2026)</strong></a>, and it&#8217;s all about the 7.1 cycle getting real: Beta 1 lands July 15, final release August 19 at WordCamp US. You&#8217;ll want to test responsive styling, the React 19 runtime flag, and Unicode email addresses now. Also on your radar: merge proposals for Core Abilities and Guidelines, the 40px component default, icons inheriting color, and Playground&#8217;s MCP support.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<div class=\"wp-block-group has-light-background-background-color has-background\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"wp-block-paragraph\"><img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f399.png\" style=\"height: 1em;\" /> The latest episode is  <a href=\"https://gutenbergtimes.com/podcast/gutenberg-changelog-132/\">Gutenberg Changelog #132 – Proposals for Core, Calls for Testing, WordPress 7.1 and Gutenberg 23.4 and 23.5</a></p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img alt=\"\" class=\"wp-image-46077\" height=\"183\" src=\"https://i0.wp.com/gutenbergtimes.com/wp-content/uploads/2026/07/Screenshot-2026-07-10-at-10.56.17-edited-1.png?resize=652%2C183&#038;ssl=1\" width=\"652\" /></figure>\n\n\n<div class=\"wp-block-newsletterglue-showhide ng-block\" width=\"100%\">\n<figure class=\"wp-block-embed is-type-rich is-provider-pocket-casts wp-block-embed-pocket-casts\"><div class=\"wp-block-embed__wrapper\">\n\n</div></figure>\n</div></div></div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Berislav &#8220;Bero&#8221; Grgičak</strong> announced <a href=\"https://make.wordpress.org/core/2026/07/01/whats-new-in-gutenberg-23-5-july-1-2026/\">what&#8217;s new in Gutenberg 23.5</a>, released July 1. The headliner: you can now drag the editor canvas to any width, with the device preview dropdown and resize handles working together for responsive editing. The experimental Media editor gains a magnified crop canvas, pixel-snapping handles, and Cover block support. Also notable: text shadows in Global Styles, flip and rotate controls for the Icon block, and a minimum WordPress version bump to 6.9.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\">For the next episode of the Gutenberg Changelog, I sat down with <strong>Ellen Bauer </strong>to chat about what&#8217;s coming next for WordPress. We dug into the latest Gutenberg plugin releases (23.4 and 23.5) and the recent WordPress 7.1 update. Plus, we walked through some big merge proposal, like the Design System Theming. our excitement around responsive styling coming to WordPress. It’s a packed episode full of news you won&#8217;t want to miss! The episode will land in your favorite podcast app over the weekend.</p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img alt=\"\" class=\"wp-image-45996\" height=\"194\" src=\"https://i0.wp.com/gutenbergtimes.com/wp-content/uploads/2026/07/Screenshot-2026-07-10-at-10.56.17.png?resize=652%2C194&#038;ssl=1\" width=\"652\" /></figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<h3 class=\"wp-block-heading\" id=\"wordpress-7-1-roadmap-and-more-calls-for-testing\">WordPress 7.1 roadmap and more calls for testing</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Anne McCarthy</strong> published <a href=\"https://make.wordpress.org/core/2026/06/19/roadmap-to-7-1/\">Roadmap to WordPress 7.1</a>., scheduled for August 19, 2026. Longstanding styling gaps are being tackled: responsive styling and interactive-state styling let you adjust blocks per viewport or on hover — no custom CSS required. You&#8217;ll also find new Playlist, Table of Contents, and Tabs blocks, a smarter command palette, a Design → Identity screen, the admin bar inside the editors, a media editor modal, and expanded Unicode support for email addresses.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Also mentioned Real-time collaboration, Knowledge Guidelines, React 19 upgrade, Classic block deprecation have been punted since the posts came out. Beta 1 arrives July 15 and will settle which of the other Roadmap features are in and which will be punted to a future release.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\">The latest Weekend Edition<a href=\"https://gutenbergtimes.com/calls-for-testing-gutenberg-23-3-block-mcp-weekend-edition-367/#calls-for-testing-for-wordpress-7-1\"> listed three calls for testing</a>. Meanwhile, two more came online:</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nikunj Hatkar</strong>, this year&#8217;s team rep of the Core Test team, posted a <a href=\"https://make.wordpress.org/test/2026/07/03/call-for-testing-responsive-styling/\">call for testing responsive styling</a>. You&#8217;ll be able to style blocks differently for tablet and mobile right in the editor — no custom CSS or media queries needed. The underlying PR unifies the resizable canvas with the device-preview switcher. Fire up the linked WordPress Playground instance, walk through the four test scenarios, and share what feels intuitive or broken. Plugin and theme developers should test their canvas integrations, too.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Dennis Snell</strong> published a <a href=\"https://make.wordpress.org/core/2026/06/10/call-for-testing-unicode-email-addresses/\">call for testing Unicode email addresses</a>. With initial support merged, <code>is_email()</code> and <code>sanitize_email()</code> now accepting non-ASCII addresses like <code>grå@grå.org</code>, and validation aligns with the <a href=\"https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address\"><em>Web Hypertext Application Technology Working Group</em> (WHATWG) spec.</a> You&#8217;ll want to check your plugins and themes: the new <code>WP_Email_Address</code> class gives you structured access to local and domain parts, and a snippet lets you disable Unicode support until third-party integrations catch up.</p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"three-merge-proposals\">Three Merge Proposals </h3>\n\n\n\n<p class=\"wp-block-paragraph\">Core contributors put together three merge proposal for new features to be added to Core for public comment. </p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Jorge Costa</strong> published a <strong><a href=\"https://make.wordpress.org/core/2026/07/02/merge-proposal-expanding-wordpress-core-abilities/\">merge proposal to expand WordPress Core Abilities</a> </strong>in WordPress, adding three read-only abilities covering settings, content, and users. Building on the Abilities API from 6.9, they give the AI Client real tools to call, so agents can understand your site&#8217;s configuration, posts, and people. Settings and post types opt in through a dedicated flag, and management abilities are planned for a later WordPress version. </p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Greg Ziółkowski</strong> published a <a href=\"https://make.wordpress.org/core/2026/06/22/merge-proposal-guidelines-built-on-knowledge/\"><strong>merge proposal for Guidelines built on Knowledge</strong></a>, a new custom post type headed for WordPress 7.1. Knowledge gives your site one shared home for standards, memories, and notes — with revisions, capabilities, and REST access built in. Guidelines is the first feature on top, letting you capture voice, tone, and per-block rules right where writing happens. Although, originally aimed at WordPress 7.1, in their l<a href=\"https://make.wordpress.org/core/2026/06/22/merge-proposal-guidelines-built-on-knowledge/#comment-49029\">atest comment, Anne McCarthy indicated</a> that it needs to simmer some more before it&#8217;s considered for inclusion in WordPress Core. </p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Andrew Duthie</strong> published a <a href=\"https://make.wordpress.org/core/2026/07/07/merge-proposal-design-system-theming/\"><strong>merge proposal for Design System Theming</strong></a>, bringing design tokens and a new theme component to WordPress. Built by the Gutenberg Components Team, it turns hard-coded admin styles into CSS custom properties, so your plugins and screens stay consistent and accessible. A color ramp tool generates harmonious, accessible scales from just two seed colors, and the user color scheme reaches the Site Editor — with dark mode on the horizon. </p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"0-p\">Plugins, Themes, and Tools for #nocode site builders and owners</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Anne Katzeff </strong>published a tutorial <strong><a href=\"https://www.askdesign.biz/blog/2026/05/exploring-the-wordpress-cover-block-parallax-scroll/\">exploring the WordPress Cover Block for parallax scrolls</a>. </strong>You&#8217;ll learn how the Fixed Background setting turns a Cover block into a layered parallax effect — background, middle ground, and foreground text moving at different speeds. The post steps through nesting a second Cover block, switching which layer scrolls, and improving text readability with grouped backgrounds. A video tutorial rounds it out. She also demos her process in <a href=\"https://www.youtube.com/watch?v=dux016qIXSM\">this YouTube video</a>. </p>\n\n\n<div class=\"wp-block-newsletterglue-showhide ng-block\" width=\"100%\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n\n</div></figure>\n</div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Carrie Dils </strong>shared a case study, <a href=\"https://carriedils.com/one-header-two-themes/\"><strong>One Header, Two Themes</strong></a>, on phasing a legacy Elementor site toward Full Site Editing without a rebuild or content freeze. Using ThemeSwitcher Pro to run two themes side-by-side, she built one shared header in a plugin that both themes render. You&#8217;ll learn from five real-world snags — WooCommerce&#8217;s hooked blocks, cascade conflicts, routing gaps, query-string bypasses — and why shipping the shared layer first de-risks everything after.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Gina Lucia</strong> compared <a href=\"https://olliewp.com/wordpress-theme-vs-page-builder/\"><strong>WordPress block themes vs page builders</strong></a> on the <em>Ollie</em> blog. You&#8217;ll get a clear-eyed walkthrough of what classic themes, page builders, and block themes each handle — scope, design control, performance, lock-in, and maintenance — with side-by-side tables. Her conclusion: block themes combine sitewide design control with visual editing natively, so you rarely need a page builder anymore, though migration costs and team habits can justify keeping one.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Elliott Richmond</strong> explained <strong><a href=\"https://elliottrichmond.co.uk/why-i-spent-16-months-turning-400-holiday-cottages-into-wordpress-blocks/\">why he spent 16 months turning 400+ holiday cottages into WordPress blocks</a>.</strong> The kate &amp; tom&#8217;s site moved from ACF flexible content to a native block theme, freeing the marketing team from waiting on custom widgets. You&#8217;ll appreciate his candor: 10,590 widgets migrated via a purpose-built plugin, re-run against fresh production snapshots, with flaky conversions fixed by hand. Even untuned, PageSpeed jumped from 22 to 67.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Wes Theron</strong> published a video tutorial, <strong><a href=\"https://www.youtube.com/watch?v=OFRAPMPQMeA\">How to Create and Edit Navigation Menus in WordPress</a>,</strong> for anyone getting comfortable with block themes. In under ten minutes, you&#8217;ll learn how to edit your menu with the Navigation block, add pages, posts, categories, and custom links, and build dropdown menus. Timestamps let you jump straight to the part you need — handy if dropdowns are the only thing standing between you and a finished header.</p>\n\n\n<div class=\"wp-block-newsletterglue-showhide ng-block\" width=\"100%\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n\n</div></figure>\n</div>\n\n\n<h2 class=\"wp-block-heading\" id=\"2-word-press-6-0-1-and-6-1-scheduled\">Theme Development for Full Site Editing and Blocks</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Henrique Iamarino</strong>  shared how the Automattic Design team <a href=\"https://automattic.design/2026/07/09/build-a-wordpress-theme-without-ever-opening-figma/\"><strong>built a WordPress theme without ever opening Figma</strong></a>. You&#8217;ll follow the making of Crafted, a production-ready theme created almost entirely in the WordPress Editor: Global Styles for typography and spacing, <a href=\"https://wordpress.org/plugins/create-block-theme/\">Create Block Theme</a> to save edits to theme files, WordPress Studio for local review, and an AI assistant for finishing-touch hover CSS. His takeaway: the Editor is now a professional design surface.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Justin Tadlock</strong> explained <a href=\"https://developer.wordpress.org/news/2026/06/dynamically-loading-template-parts-in-block-themes/\"><strong>how to dynamically load template parts in block themes</strong></a> on the Developer Blog. Instead of maintaining a pile of near-identical templates, you can hook into the <code>render_block_data</code> filter and swap a template part&#8217;s slug on the fly — say, a different sidebar per post category. His walkthrough covers early returns, fallback behavior, and file setup, and the technique works for headers, footers, and banners, too.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n<div class=\"ng-block-4b01c1257f063910 wp-block-newsletterglue-container ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div class=\"ng-block-vs ng-block-vs-1\" colspan=\"3\" height=\"0\" style=\"height: 0px;\"></div></div><div><div class=\"ng-block-hs ng-block-hs-1\" height=\"0\" style=\"width: 0px;\"></div><div align=\"none\" class=\"ng-block-td\" style=\"font-size: 16px; font-family: Helvetica; line-height: 1.6; font-weight: normal; padding-top: 20px; padding-bottom: 20px; padding-left: 0px; padding-right: 0px; text-align: none; color: #666666; background-color: #fdfcea; border-radius: 12px;\"><div class=\"ng-block-119ac99e7e4f7a0b wp-block-newsletterglue-text ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div align=\"none\" class=\"ng-block-td\" style=\"font-size: 16px; font-family: Helvetica; line-height: 1.6; font-weight: normal; padding-top: 8px; padding-bottom: 10px; padding-left: 20px; padding-right: 20px; text-align: none; color: #666666;\"><p><strong> <a href=\"https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/\" rel=\"noreferrer noopener\" target=\"_blank\">&#8220;Keeping up with Gutenberg &#8211; Index 2026&#8221;</a> </strong><br />A chronological list of the WordPress Make Blog posts from various teams involved in Gutenberg development: Design, Theme Review Team, Core Editor, Core JS, Core CSS, Test, and Meta team from Jan. 2024 on. Updated by yours truly. </p></div></div></div></div>\n\n<div class=\"ng-block-a522924b5f9a2a61 wp-block-newsletterglue-text ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div align=\"none\" class=\"ng-block-td\" style=\"font-size: 16px; font-family: Helvetica; line-height: 1.6; font-weight: normal; padding-top: 8px; padding-bottom: 10px; padding-left: 20px; padding-right: 20px; text-align: none; color: #666666;\"><p>The previous years are also available: <br /><strong><strong><a href=\"https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/keeping-up-with-gutenberg-index-2020/\">2020</a> | <a href=\"https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/keeping-up-with-gutenberg-index-2021/\">2021</a></strong> | <strong><a href=\"https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/keeping-up-with-gutenberg-index-2022/\">2022</a></strong></strong> | <strong><a href=\"https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/gutenberg-index-2023\">2023</a></strong> | <a href=\"https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/gutenberg-index-2024/\"><strong>2024</strong></a> | <strong><a href=\"https://make.wordpress.org/core/handbook/references/keeping-up-with-gutenberg-index/gutenberg-index-2025/\">2025</a></strong></p></div></div></div></div></div><div class=\"ng-block-hs ng-block-hs-2\" height=\"0\" style=\"width: 0px;\"></div></div><div><div class=\"ng-block-vs ng-block-vs-2\" colspan=\"3\" height=\"0\" style=\"height: 0px;\"></div></div></div></div>\n\n\n<h2 class=\"wp-block-heading\" id=\"ai-and-wordpress\">AI and WordPress</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Jeff Paul</strong> announced <strong><a href=\"https://make.wordpress.org/ai/2026/07/08/whats-new-in-ai-1-1-0/\">what&#8217;s new in AI 1.1.0</a>,</strong> the latest release of the canonical AI plugin. Two experiments headline, <code>type-ahead text</code> suggests inline ghost text as you write in the block editor, and <code>key encryption</code> secures your AI Connector API keys in the database. You&#8217;ll also find smarter content readiness checks with locale-aware counting, more control over guest comment moderation, a new <code>core/read-settings</code> Ability, and a peek at 1.2.0 plans.</p>\n\n\n<div class=\"ng-block-349578ace7fdbe0d wp-block-newsletterglue-container ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div class=\"ng-block-vs ng-block-vs-1\" colspan=\"3\" height=\"0\" style=\"height: 0px;\"></div></div><div><div class=\"ng-block-hs ng-block-hs-1\" height=\"0\" style=\"width: 0px;\"></div><div align=\"none\" class=\"ng-block-td\" style=\"font-size: 16px; font-family: Helvetica; line-height: 1.6; font-weight: normal; padding-top: 20px; padding-bottom: 20px; padding-left: 0px; padding-right: 0px; text-align: none; color: #666666; background-color: #f8f8f8; border-radius: 8px;\"><div class=\"ng-block-cdbdee01d40a4465 wp-block-newsletterglue-text ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div align=\"none\" class=\"ng-block-td\" style=\"font-size: 16px; font-family: Helvetica; line-height: 1.6; font-weight: normal; padding-top: 8px; padding-bottom: 10px; padding-left: 20px; padding-right: 20px; text-align: none; color: #666666;\"><p><strong><a href=\"https://gutenbergtimes.com/need-a-zip-from-master/\">Need a plugin .zip from Gutenberg&#8217;s master branch?</a></strong><br />Gutenberg Times provides daily build for testing and review.</p></div></div></div></div>\n\n<div class=\"ng-block-20e5c4a8fdf30241 wp-block-newsletterglue-image ng-block size-full is-resized\" width=\"100%\"><div><div><div align=\"center\" class=\"ng-block-td\" style=\"padding-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px;\"><a href=\"https://playground.wordpress.net/?blueprint-url=https://gutenbergtimes.com/wp-content/uploads/2020/11/playnightly.json\"><img alt=\"\" class=\"wp-image-42874 ng-image\" height=\"45\" src=\"https://i0.wp.com/gutenbergtimes.com/wp-content/uploads/2024/02/Screenshot-2025-11-15-at-12.06.44.png?resize=196%2C45&#038;ssl=1\" style=\"border-style: none; border-color: transparent;\" width=\"196\" /></a></div></div></div></div>\n\n<div class=\"ng-block-3013f4d0787cd26f wp-block-newsletterglue-text ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div align=\"none\" class=\"ng-block-td\" style=\"font-size: 16px; font-family: Helvetica; line-height: 1.6; font-weight: normal; padding-top: 8px; padding-bottom: 10px; padding-left: 20px; padding-right: 20px; text-align: none; color: #666666;\"><p>Now also available via <a href=\"https://playground.wordpress.net/?blueprint-url=https://gutenbergtimes.com/wp-content/uploads/2020/11/playnightly.json\">WordPress Playground</a>. There is no need for a test site locally or on a server. Have you been using it? <a href=\"mailto:pauli@gutenbergtimes.com\">Email me </a>with your experience.</p></div></div></div></div></div><div class=\"ng-block-hs ng-block-hs-2\" height=\"0\" style=\"width: 0px;\"></div></div><div><div class=\"ng-block-vs ng-block-vs-2\" colspan=\"3\" height=\"0\" style=\"height: 0px;\"></div></div></div></div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\n\n\n\n<p class=\"has-text-align-center has-small-font-size wp-block-paragraph\"><em>Questions? Suggestions? Ideas? </em><br /><em>Don&#8217;t hesitate to send <a href=\"mailto:pauli@gutenbergtimes.com\">them via email</a> or</em><br /><em> send me a message on WordPress Slack or Twitter @bph</em>.</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" />\n\n\n\n<p class=\"has-text-align-center has-small-font-size wp-block-paragraph\">For questions to be answered on the <a href=\"http://gutenbergtimes.com/podcast\">Gutenberg Changelog</a>, <br />send them to <a href=\"mailto:changelog@gutenbergtimes.com\">changelog@gutenbergtimes.com</a></p>\n\n\n<div class=\"ng-block-4d6dafbbd6113313 wp-block-newsletterglue-separator ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div align=\"center\" class=\"ng-block-td\" style=\"padding-top: 20px; padding-bottom: 20px; padding-left: 20px; padding-right: 20px; color: #666666;\"><hr style=\"background-color: transparent; color: transparent; margin: 0; border: 0; border-top: 1px solid #666666; width: 560px; height: 0;\" /></div></div></div></div>\n\n<div class=\"wp-block-newsletterglue-showhide ng-block\" width=\"100%\"><div class=\"ng-block-c9961842721b69ca wp-block-newsletterglue-text ng-block\" style=\"color: #666666;\" width=\"100%\"><div><div><div align=\"none\" class=\"ng-block-td\" style=\"font-size: 14px; font-family: Helvetica; line-height: 0.2; font-weight: normal; padding-top: 8px; padding-bottom: 10px; padding-left: 20px; padding-right: 20px; text-align: none; color: #666666;\"><p><strong>Featured Image: </strong></p></div></div></div></div></div>\n\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" />\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sat, 11 Jul 2026 01:37:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:18:\"Birgit Pauli-Haack\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:28;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:101:\"Open Channels FM: The Real Challenge of Technological Solutions: Exclusion in the Age of Verification\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556720\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:107:\"https://openchannels.fm/the-real-challenge-of-technological-solutions-exclusion-in-the-age-of-verification/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:419:\"David Snead, director of the Secure Hosting Alliance and a long-time Internet policy leader, shares his perspective on the complexities that emerge when technological solutions like age verification are implemented in the digital infrastructure space. Dave&#8217;s reflection highlights how the push for more secure, regulated environments can unintentionally create barriers for vulnerable or less tech-savvy [&#8230;]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Fri, 10 Jul 2026 14:34:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:29;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:56:\"Dennis Snell: See DATA, CDATA, RCDATA, and PCDATA oh my!\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:36:\"https://fluffyandflakey.blog/?p=3943\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:79:\"https://fluffyandflakey.blog/2026/07/10/see-data-cdata-rcdata-and-pcdata-oh-my/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:30966:\"<p class=\"wp-block-paragraph\">HTML and XML are markup languages based on plaintext files. This means that any given character <em>could</em> be part of a syntax form (a tag, a comment, a character reference, etc…) <em>or</em> it could be representing itself the way it reads in the file literally.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-html\"><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">tag</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-string\">&amp;middot;</span> Text node<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">tag</span><span class=\"tok-punctuation\">&gt;</span></div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<p class=\"wp-block-paragraph\">Whenever a character might be ambiguous, both languages require explicit indication of the intent of the character. In HTML this occurs via <em>escaping</em>, while XML allows escaping <em>or</em> wrapping the content in a <em>marked section</em>, specifically a <code>CDATA section</code>.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-xml\"><div class=\"cm-line\"><span class=\"tok-string\">&amp;lt;</span>tag<span class=\"tok-string\">&amp;gt;</span></div><div class=\"cm-line\"><span class=\"tok-string2\">&lt;![CDATA[&lt;tag&gt;· Text node&lt;/tag&gt;]]&gt;</span></div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<p class=\"wp-block-paragraph\">These terms confuse me at times, especially since <code>CDATA</code> and <code>CDATA sections</code> are distinct forms of the same content, and it’s easy to conflate each term. This post is here to disambiguate the terms, their meanings, and why they exist.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#summary\">The punchline comes at the end</a>, but the story is hopefully worth the read.</p>\n\n\n\n<span id=\"more-3943\"></span>\n\n\n\n<h2 class=\"wp-block-heading\">Markup and mixed content</h2>\n\n\n\n<p class=\"wp-block-paragraph\">One of the first jobs of a parser for any plaintext-oriented format is to determine if the next input character represents real text or is part of a syntax form that carries special meaning. If it’s a syntax form we would call it <em>markup</em>, but if the characters are part of real text meant for display or rendering or reading then we call it <em>data</em>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Anything that is not syntax is data.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The interpretation of the next character depends on the region of the document in which it’s parsed. While the rules for syntax forms are complicated<sup class=\"fn\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#0ba56e66-ab0f-4fbd-93d2-df22a6984fd7\" id=\"0ba56e66-ab0f-4fbd-93d2-df22a6984fd7-link\">1</a></sup>, this post will focus on the data forms.</p>\n\n\n\n<h3 class=\"wp-block-heading\">PCDATA — “parsed character data”</h3>\n\n\n\n<p class=\"is-style-plain wp-block-paragraph\"><em>May form: tags, comments, sections, character references, literal text.</em></p>\n\n\n\n<p class=\"wp-block-paragraph\">Characters in this region could be data or could form the start of a new markup element. It’s “parsed” because it needs parsing before determining what it represents.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The HTML specification renames this to <code>Data</code>, which is simpler and a bit harder to search for. In XML, however, it’s used in a document-type definition (DTD). When an element may contain content — text — its data model must include <code>#PCDATA</code>. Otherwise the only characters allowable within that element are other elements, comments, and whitespace. XML documents are required to be valid SGML documents, so its own specification adopts the terminology from SGML’s.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Those who have worked with DTDs might note that <em>elements</em> in XML may contain <code>#PCDATA</code> while <em>attributes</em> contain <code>CDATA</code> instead. First of all, the <code>#</code> is there only to make it explicit that <code>PCDATA</code> is referring to the reserved keyword, rather than a <code>&lt;pcdata&gt;</code> element. Secondly, there’s a good reason for this, which is that attributes can only contain text — they can’t contain other elements of markup. If an attribute value could contain a <code>&lt;span&gt;</code> element, for example, then the attribute value would need to be <code>#PCDATA</code> instead, but this is prevented by design.</p>\n\n\n\n<p class=\"wp-block-paragraph\">PCDATA actually contains more than just literal text and elements. In addition to comments, processing instructions, and other node-like syntax, one important feature of PCDATA is the <em>character reference</em>. These make it possible to represent characters that would conflate with syntax (such as ‘<code>&lt;</code>’ — <code>&amp;lt;</code>) or which might be cumbersome to enter on a keyboard (such as ‘§’ — <code>&amp;sect;</code>). When parsing, each character in these sequences neither creates an element nor  displays as the text itself; rather, the entire sequence is parsed and translates into the character it refers to.</p>\n\n\n\n<p class=\"wp-block-paragraph\">HTML pre-specifies <a href=\"https://github.com/w3c/html/blob/master/entities.json\">a fixed set of named character references</a>, but any Unicode code point may be referenced by its decimal or hexadecimal numeric index. While XML also allows referencing code points by their index<sup class=\"fn\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#6d3de5b9-f8a6-4f46-853b-3d407731feca\" id=\"6d3de5b9-f8a6-4f46-853b-3d407731feca-link\">2</a></sup>, it only pre-specifies the five named characters which correspond to its main markup introducers: <code>&lt;</code>, <code>></code>, <code>&amp;</code>, <code>\'</code>, and <code>\"</code>. In XML, any additional named character references are created through the DTD by defining <em>entities</em>.</p>\n\n\n\n<h3 class=\"wp-block-heading\"> CDATA — “character data”</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>May form: [character references], literal text.</em></p>\n\n\n\n<p class=\"wp-block-paragraph\">If a character isn’t markup, then it’s <em>character data</em>, which means that it’s representing its literal self or it’s part of a <em>character reference</em>. Once the parser has entered this region it will not create markup elements.</p>\n\n\n\n<p class=\"wp-block-paragraph\">CDATA is the most confusable kind of character data; this is because there are many kinds of CDATA that share the same name:</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>XML attributes may contain CDATA, where character references are decoded.</li>\n\n\n\n<li>XML CDATA sections only contain CDATA, but character references are not decoded.</li>\n\n\n\n<li>HTML <em>kind of</em> has the same CDATA sections, but only in <em>foreign elements</em> (inlined SVG and MathML elements).</li>\n\n\n\n<li>SGML elements may be declared to have a CDATA content model, in which case all content until the appropriate closing tag is to be parsed as character data, where character references are not decoded.</li>\n</ul>\n\n\n\n<h4 class=\"wp-block-heading\">CDATA sections contain only literal text</h4>\n\n\n\n<p class=\"wp-block-paragraph\">Many people are familiar with <code>CDATA sections</code>, but it took me far longer to understand them than my intuition led on. They are the vestige of SGML “marked regions” which tell the parser to handle a specific range of bytes in a special way. The <code>CDATA</code> section is one of those, which tells the parser to <em>completely turn off until it reaches <code>]]&gt;</code></em>.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-xml\"><div class=\"cm-line\"><span class=\"tok-string2\">&lt;![CDATA[literal characters only in here]]&gt;</span></div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<p class=\"wp-block-paragraph\">It had other marked sections, however, which served different purposes.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-xml\"><div class=\"cm-line\">&lt;![IGNORE[everything in here is ignored; it doesn’t exist.]]&gt;</div><div class=\"cm-line\">&lt;![INCLUDE[in here things <span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">em</span><span class=\"tok-punctuation\">&gt;</span>do<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">em</span><span class=\"tok-punctuation\">&gt;</span> exist as normal.]]&gt;</div><div class=\"cm-line\">&lt;![RCDATA[read on to learn about RCDATA!]]&gt;</div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<p class=\"wp-block-paragraph\">The <code>IGNORE</code> and <code>INCLUDE</code> sections may seem strange, since SGML already has comments, and <code>INCLUDE</code> effectively does nothing, but the sections can be marked by replaced <em>entities</em>, making for conditional inclusion which can be overwritten via command-line arguments when invoking the SGML parser.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-xml\"><div class=\"cm-line\">&lt;!ENTITY % review-only &quot;IGNORE&quot;&gt;</div><div class=\"cm-line\"></div><div class=\"cm-line\">...</div><div class=\"cm-line\"></div><div class=\"cm-line\">&lt;![%review-only;[</div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">aside</span><span class=\"tok-punctuation\">&gt;</span></div><div class=\"cm-line\">Add `-Dreview-only=INCLUDE` when building drafts.</div><div class=\"cm-line\">This note won’t appear otherwise.</div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">aside</span><span class=\"tok-punctuation\">&gt;</span></div><div class=\"cm-line\">]]&gt;</div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://www.w3.org/XML/9712-reports.html#:~:text=XML%20will%20have%20CDATA%20marked%20sections\">XML only retained CDATA sections</a> from SGML, while HTML never included them. They are useful because they are so easy to parse. All characters inside of them are to be treated as literal text, up until the first occurrence of the terminating <code>]]&gt;</code>. Unlike elements, the marked sections do not nest.</p>\n\n\n\n<h4 class=\"wp-block-heading\">There are no CDATA sections in HTML</h4>\n\n\n\n<p class=\"wp-block-paragraph\">The Internet is full of discussions about the use of CDATA sections in HTML, but there are no such things, mostly. HTML itself is an amalgam of pure HTML and embedded SVG and MathML. Content inside of those <em>embedded</em> SVG and MathML elements is parsed differently, and within this “foreign content” there <em>are</em> <code>CDATA section</code> nodes.</p>\n\n\n\n<p class=\"wp-block-paragraph\">When something which <em>look like a CDATA section</em> appears in an HTML document, it’s transformed into a “bogus” HTML comment and considered a snippet of malformed markup. To make things more confusing, the parsing rules differ inside an HTML document for these regions depending on whether they are found within HTML elements or foreign elements.</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When a real CDATA section appears within SVG and MathML, it parses as in XML or SGML — everything is  literal text <em>until</em> the nearest <code>]]&gt;</code>.</li>\n\n\n\n<li>When a malformed CDATA look-alike appears in an HTML element, it gets special treatment — the parser only turns off until the nearest <code>&gt;</code>. This means that these sections end even without a closing <code>]]&gt;</code>, and when they do, all of their contained content disappears from the page.</li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\">That small difference confuses naïve parsers and is a regular source of bugs.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-html\"><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&gt;</span>&lt;![CDATA[There are no tags in here.]]&gt;<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&gt;</span></div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">svg</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">text</span><span class=\"tok-punctuation\">&gt;</span>&lt;![CDATA[<span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">none</span><span class=\"tok-punctuation\">&gt;</span> here either.]]&gt;<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">text</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">svg</span><span class=\"tok-punctuation\">&gt;</span></div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&gt;</span>&lt;![CDATA[But there <span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">em</span><span class=\"tok-punctuation\">&gt;</span>are<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">em</span><span class=\"tok-punctuation\">&gt;</span> tags in here]]&gt;<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&gt;</span></div><div class=\"cm-line\">     the section ends here ╯   ╰ start of a real end tag</div><div class=\"cm-line\"></div><div class=\"cm-line\">The following is the equivalent markup to the third line.</div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-comment\">&lt;!--But there &lt;em--&gt;</span>are<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName tok-invalid\">em</span><span class=\"tok-punctuation\">&gt;</span> tags in here]]&gt;<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">div</span><span class=\"tok-punctuation\">&gt;</span></div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<h4 class=\"wp-block-heading\">SGML contains CDATA regions outside of marked CDATA sections</h4>\n\n\n\n<p class=\"wp-block-paragraph\">SGML made it possible to define more kinds of content than XML does for a given element. For example, an element in SGML can be declared to have a CDATA content model, in which case the element itself behaves like a CDATA section. All characters after the opening tag are treated as literal text until the parser finds the nearest appropriate end tag<sup class=\"fn\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#2d0aee27-cf77-4b19-a4c5-3b1cc4192c53\" id=\"2d0aee27-cf77-4b19-a4c5-3b1cc4192c53-link\">3</a></sup>. XML rejected this ability because it increases the complexity of the parser and requires that every document also contains a full DTD when parsing. For example, if an element were declared to have CDATA content, then <code>a &lt;at> b</code> would represent that literal string; on the other hand, if it were declared like any other normal element, it would have three children: “<code>a </code>”, the <code>&lt;at></code> opening tag, and “<code> b</code>”.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-xml\"><div class=\"cm-line\">&lt;!ELEMENT verbatim - - CDATA&gt;</div><div class=\"cm-line\"></div><div class=\"cm-line\">...</div><div class=\"cm-line\"></div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">verbatim</span><span class=\"tok-punctuation\">&gt;</span></div><div class=\"cm-line\">There are <span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">no</span><span class=\"tok-punctuation\">&gt;</span> tags in here, because this is CDATA,</div><div class=\"cm-line\">but you wouldn’t know without reading the DTD,</div><div class=\"cm-line\">overcomplicating the demands on the parser.</div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">verbatim</span><span class=\"tok-punctuation\">&gt;</span></div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<p class=\"wp-block-paragraph\">These kinds of elements do exist in HTML, though a few were modified when HTML5 was standardized in 2008. Inside of the elements, the parser essentially turns off, which makes them easy to parse and can help avoid the need to extensively escape content. These elements are, of course, <code>&lt;script></code> and <code>&lt;style></code><sup class=\"fn\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#68152c30-bf36-4e5b-a7df-3f0610daeadb\" id=\"68152c30-bf36-4e5b-a7df-3f0610daeadb-link\">4</a></sup>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Were it not for the CDATA declared content model, every angle bracket and ampersand would have to be escaped in included JavaScript and CSS. In XHTML this was required, because it had no CDATA declared content model (since it was XML)<sup class=\"fn\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#21aeab38-6e1f-4700-a8f4-27c96ebe0c3b\" id=\"21aeab38-6e1f-4700-a8f4-27c96ebe0c3b-link\">5</a></sup>.</p>\n\n\n\n<h4 class=\"wp-block-heading\">All text in XML is CDATA</h4>\n\n\n\n<p class=\"wp-block-paragraph\">Herein lies the most-confusing aspect of discussing CDATA — XML contains CDATA sections as well as <em>CDATA</em> as normal text. After parsing there is no distinction between <code>&amp;lt;tag&amp;gt;</code> and <code>&lt;![CDATA[&lt;tag&gt;]]&gt;</code> in the parsed content.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Many XML generators (or serializers) provide two mechanisms for creating text content: one wraps text in a <code>CDATA section</code> and leaves the text as it came (apart from avoiding including the terminating sequence); the other escapes syntax characters instead. While there are times where it would be appropriate to intentionally pick one over the other, a good library design would at least offer a third mechanism (if not <em>only</em> providing this third mechanism) which simply produces <em>CDATA</em>, itself determining when to wrap and when to escape<sup class=\"fn\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#6e56b2ce-8156-4bf5-a4d3-d297a401c1a3\" id=\"6e56b2ce-8156-4bf5-a4d3-d297a401c1a3-link\">6</a></sup>, and whether or not to produce chunks of wrapped text interspersed with chunks of escaped text.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The real difference between these two kinds of CDATA is purely presentational in the source document, as the XML snippet below only contains one text node, not two. <em>Creating CDATA does not imply creating a <code>CDATA section</code>!</em></p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-xml\"><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">rule</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-string2\">&lt;![CDATA[#X13&lt;d&amp;r&gt;]]&gt;</span> (<span class=\"tok-string\">&amp;pp;</span>4 <span class=\"tok-string\">&amp;ss;</span>3.11)<span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">rule</span><span class=\"tok-punctuation\">&gt;</span></div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<h3 class=\"wp-block-heading\">RCDATA — “replaceable character data”</h3>\n\n\n\n<p class=\"wp-block-paragraph\"><em>May form: character references, literal text.</em></p>\n\n\n\n<p class=\"wp-block-paragraph\">There’s one more confusing designation for characters in the HTML and XML input streams: <em>RCDATA</em>. RCDATA is almost identical to CDATA, except that in contexts where CDATA does not decode character references and entities, RCDATA <em>will</em> decode them <em>into</em> CDATA. This is confusing, because in the context of an XML attribute, the <code>CDATA</code> designation in a DTD automatically implies that character references are decoded, unlike the <code>CDATA</code> sections in <em>content</em>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">To this end there are no RCDATA attributes, since character references are always decoded inside attribute values. The RCDATA declaration is like the SGML CDATA content declaration: all characters following the opening tag for this element will be treated as text until the nearest matching closing tag (the difference being only that character references are recognized and decoded).</p>\n\n\n\n<p class=\"wp-block-paragraph\">It’s worth remembering that XML rejected the CDATA content type because of how it complicates parsing, and it also rejected the RCDATA type. On the other hand, RCDATA was incorporated into HTML, but statically so. HTML has no configurable DTD, but in its specification two elements contain RCDATA content:</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>TITLE</code></li>\n\n\n\n<li><code>TEXTAREA</code></li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\">While it’s easy to comprehend the way that <code>&lt;textarea></code> works, and that’s probably because we are used to entering text into one on a web page, the behavior of <code>&lt;title></code> is consistently confused in all manner of programming languages, platforms, and HTML-parsing code.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The TITLE element <em>only</em> contains character data — it cannot contain other markup. The parsing is among the easiest sections of an HTML document to parse: once the <code>&lt;title&gt;</code> opening tag is detected, the parser can capture everything until the nearest <code>&lt;/title&gt;</code> closing tag. Everything it captured is literal text, after decoding character references.</p>\n\n\n<div class=\"wp-block-code\">\n	<div class=\"cm-editor\">\n		<div class=\"cm-scroller\">\n			\n<pre>\n<code class=\"language-html\"><div class=\"cm-line\"><span class=\"tok-comment\">&lt;!-- the title is &quot;&lt;title&gt;&quot; --&gt;</span></div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">title</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">title</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">title</span><span class=\"tok-punctuation\">&gt;</span></div><div class=\"cm-line\"></div><div class=\"cm-line\"><span class=\"tok-comment\">&lt;!-- equivalent HTML --&gt;</span></div><div class=\"cm-line\"><span class=\"tok-punctuation\">&lt;</span><span class=\"tok-typeName\">title</span><span class=\"tok-punctuation\">&gt;</span><span class=\"tok-string\">&amp;lt;</span>title<span class=\"tok-string\">&amp;gt;</span><span class=\"tok-punctuation\">&lt;/</span><span class=\"tok-typeName\">title</span><span class=\"tok-punctuation\">&gt;</span></div></code></pre>\n		</div>\n	</div>\n</div>\n\n\n<p class=\"wp-block-paragraph\">This complicates content management systems like WordPress which allow posts to have HTML in their <em>post titles</em>, because a page can show richly-formatted article titles which cannot be represented in the browser tab’s label, and care must be taken to extract the plaintext content from that HTML before display in those contexts.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"summary\">Coda</h2>\n\n\n\n<p class=\"wp-block-paragraph\">HTML and XML both speak about different kinds of characters in their source documents and content models, which traces from the complicated ways that SGML documents could be constructed. SGML’s complexity almost always stems from the central idea that computers should do extra work to remove the hassle for humans to enter structured content in plaintext documents.</p>\n\n\n\n<p class=\"wp-block-paragraph\">HTML, inspired by SGML, adopted some of the names and mechanisms for parsing those regions of text in distinct ways, but codified a single parsing standard independent of SGML. When XML was later developed, it was meant to form a simplified subset of SGML. This subset flipped the tradeoffs, leaning on humans performing extra work to remove the hassle for computers to parse structure in plaintext documents. For these text forms, this meant rejecting a few of the constructs while retaining others.</p>\n\n\n\n<p class=\"wp-block-paragraph\">This is also another demonstration of how <em>balanced tags are not enough</em> to have well-behaved HTML with a naïve parser. A well-formed XML document <a href=\"https://www.ch.imperial.ac.uk/rzepa/talks/pmr11/xml-dev/9708/0152.html\">may be parsed with a terse PERL script and regular expression</a>, but HTML relies heavily on the context in which characters are found. Any HTML parser <em>must</em> know the special rules for each kind of element’s content model.</p>\n\n\n\n<h3 class=\"wp-block-heading\">In summary</h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When it’s unclear whether a character forms text or markup, that is PCDATA. Once parsed, there is no PCDATA anymore; it’s either a form of DATA or MARKUP.</li>\n\n\n\n<li>All text nodes in HTML are “DATA.”</li>\n\n\n\n<li>“CDATA” just means “character data” and means that after parsing, the content is text. It does not indicate whether character references are to be decoded or not; that comes from the region in the document, based on its context.</li>\n\n\n\n<li>There are no CDATA sections in HTML<sup class=\"fn\"><a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#31e75dae-1847-44df-92e1-8ae5756eeec6\" id=\"31e75dae-1847-44df-92e1-8ae5756eeec6-link\">7</a></sup>.</li>\n\n\n\n<li>All text nodes in XML are CDATA, but only after being parsed.</li>\n\n\n\n<li>CDATA sections offer a convenient way to avoid escaping, but are indistinguishable from the equivalent escaped text.</li>\n\n\n\n<li>HTML contains two special RCDATA elements which <em>only</em> and <em>always</em> contain a single text node child: <code>&lt;title&gt;</code> and <code>&lt;textarea&gt;</code>. Everything until the closing tag will be parsed as text, even if it looks like markup.</li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\">This post is already long and still over-simplifies the picture. SGML is a rich and robust specification and includes <code>NDATA</code> and <code>SDATA</code>, HTML includes a <em>latching</em> <code>PLAINTEXT</code> parsing mode in which <em>the rest of the entire document is parsed as literal character data</em>, and there are other surprising goodies in how entities interact with the character mode.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Thanks for making it through to the end, or jumping directly here if you couldn’t wait.</p>\n\n\n<ol class=\"wp-block-footnotes\"><li id=\"0ba56e66-ab0f-4fbd-93d2-df22a6984fd7\">As an example, each part of a tag — its name, attribute names, attribute values — carries its own parsing rules. The same is true for comments, DOCTYPE declarations, and every other syntax form. <a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#0ba56e66-ab0f-4fbd-93d2-df22a6984fd7-link\"><img alt=\"↩\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png\" style=\"height: 1em;\" />︎</a></li><li id=\"6d3de5b9-f8a6-4f46-853b-3d407731feca\">XML only allows character references to the characters in its “character set,” which is <em>almost</em> all Unicode code points, but excludes some control characters and U+FFFE and U+FFFF. <a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#6d3de5b9-f8a6-4f46-853b-3d407731feca-link\"><img alt=\"↩\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png\" style=\"height: 1em;\" />︎</a></li><li id=\"2d0aee27-cf77-4b19-a4c5-3b1cc4192c53\">Because SGML was designed to minimize the amount of necessary syntax, it’s not necessary to have a full end tag for an open element, but that’s a simple-enough model to understand the concept. <a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#2d0aee27-cf77-4b19-a4c5-3b1cc4192c53-link\"><img alt=\"↩\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png\" style=\"height: 1em;\" />︎</a></li><li id=\"68152c30-bf36-4e5b-a7df-3f0610daeadb\">The <code>&lt;style&gt;</code> element is straightforward, but <a href=\"https://sirre.al/2025/08/06/safe-json-in-script-tags-how-not-to-break-a-site/\">the <code>&lt;script&gt;</code> element has its own complicated modification</a> of the CDATA content model. It’s mostly CDATA, but makes it possible to escape the closing tag so that very old pages won’t break. HTML also applies this parsing mode for the <code>&lt;iframe&gt;</code>, <code>&lt;noembed&gt;</code>, <code>&lt;noframes&gt;</code>, and <code>&lt;noscript&gt;</code> elements (as well as for the deprecated <code>&lt;xmp&gt;</code> element), but these nominally should have no content inside of them (or shouldn’t be used); applying the CDATA content model prevents creating other elements as their children. <a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#68152c30-bf36-4e5b-a7df-3f0610daeadb-link\"><img alt=\"↩\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png\" style=\"height: 1em;\" />︎</a></li><li id=\"21aeab38-6e1f-4700-a8f4-27c96ebe0c3b\">Frustratingly, in XHTML one <em>must</em> escape JavaScript and CSS in the page to avoid parsing failure, while in HTML one <em>must not</em>. This alone makes for a complicated stage in any reliable HTML/XHTML converter. <a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#21aeab38-6e1f-4700-a8f4-27c96ebe0c3b-link\"><img alt=\"↩\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png\" style=\"height: 1em;\" />︎</a></li><li id=\"6e56b2ce-8156-4bf5-a4d3-d297a401c1a3\">Wrapping a language like HTML inside a CDATA section is a convenient way to represent the HTML visually and retain the ability to easily modify it, but entities present a problem. The serializer must either pre-translate the entity into its resolved character content, losing the macro-like behavior and its name; or leave the entity in place, thus nullifying it because it will not be recognized as an entity on parse. However, in such a situation, a serializer is free to terminate the CDATA section, append the entity, and open a new one to continue. <a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#6e56b2ce-8156-4bf5-a4d3-d297a401c1a3-link\"><img alt=\"↩\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png\" style=\"height: 1em;\" />︎</a></li><li id=\"31e75dae-1847-44df-92e1-8ae5756eeec6\">As mentioned in the discussion about CDATA, embedded SVG and MathML elements <em>can</em> contain CDATA sections, but these are not technically HTML elements. <a href=\"https://fluffyandflakey.blog/tag/wordpress/feed/#31e75dae-1847-44df-92e1-8ae5756eeec6-link\"><img alt=\"↩\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/21a9.png\" style=\"height: 1em;\" />︎</a></li></ol>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Fri, 10 Jul 2026 11:07:27 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Dennis Snell\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:30;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:113:\"Gutenberg Times: WordPress 7.0.1 Fixes Registration Spam, wp_kses() CSS Corruption, and 7.0 Admin Design Glitches\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"https://gutenbergtimes.com/?p=45920\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:120:\"https://gutenbergtimes.com/wordpress-7-0-1-fixes-registration-spam-wp_kses-css-corruption-and-7-0-admin-design-glitches/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:7735:\"<p class=\"wp-block-paragraph\">WordPress 7.0.1 is now available. As the first maintenance release of the 7.0 cycle, it&#8217;s strictly a bug-fix release: every included ticket addresses either a regression introduced during 7.0 development or an issue intentionally deferred at the end of the cycle.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The release ships fixes for 17 core Trac tickets and 14 Gutenberg PRs. Because this is a maintenance release, sites with automatic background updates enabled will update to 7.0.1 automatically — everyone else should update as soon as possible. Here&#8217;s what stands out for each audience.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Kudos to release lead Aaron Jorbin and his team for pushing this release over the finish line and getting it into hands of WordPress users quickly. </p>\n\n\n\n<h2 class=\"wp-block-heading\">The most important fixes for end users</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Registration page spam is shut down (<a href=\"https://core.trac.wordpress.org/ticket/63085\">#63085</a>).</strong> The account registration page could be abused to send &#8220;Login details&#8221; spam emails from your site. This is arguably the most impactful fix in the release for anyone running a site with open registration — it protects both your users&#8217; inboxes and your domain&#8217;s email reputation.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The 7.0 admin reskin gets its rough edges sanded off.</strong> WordPress 7.0&#8217;s refreshed admin design shipped with a handful of visual glitches that this release cleans up:</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Form elements are now standardized in the mobile viewport (<a href=\"https://core.trac.wordpress.org/ticket/64999\">#64999</a>)</li>\n\n\n\n<li>The image editor&#8217;s scale and crop inputs no longer mismatch in size, and the info icon uses the new color scheme (<a href=\"https://core.trac.wordpress.org/ticket/64937\">#64937</a>, <a href=\"https://core.trac.wordpress.org/ticket/65428\">#65428</a>)</li>\n\n\n\n<li>The publish settings panel no longer crowds its primary action buttons together (<a href=\"https://core.trac.wordpress.org/ticket/65286\">#65286</a>)</li>\n\n\n\n<li>The Media Library&#8217;s loading spinner is properly aligned in the modal filter toolbar, and the search bar no longer jumps position after a search (<a href=\"https://core.trac.wordpress.org/ticket/65275\">#65275</a>, <a href=\"https://core.trac.wordpress.org/ticket/65296\">#65296</a>)</li>\n\n\n\n<li>A &#8220;black flash&#8221; that briefly appeared on wp-admin pages before the interface finished loading is gone (Gutenberg <a href=\"https://github.com/WordPress/gutenberg/pull/78493\">#78493</a>)</li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Emoji behave correctly again.</strong> Two related fixes: the emoji detection script is once more printed in the admin (<a href=\"https://core.trac.wordpress.org/ticket/65310\">#65310</a>), and certain characters are no longer incorrectly replaced by Twemoji images (<a href=\"https://core.trac.wordpress.org/ticket/64318\">#64318</a>).</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Accessibility improvements to the new revisions experience.</strong> The Visual History / Revisions feature introduced in 7.0 receives several accessibility fixes: focus now moves to the revisions slider when entering revisions mode, and changed blocks are marked with a CSS outline as a secondary, non-color indicator — important for users with low vision or color blindness (<a href=\"https://core.trac.wordpress.org/ticket/65122\">#65122</a>, Gutenberg <a href=\"https://github.com/WordPress/gutenberg/pull/77530\">#77530</a>, <a href=\"https://github.com/WordPress/gutenberg/pull/78393\">#78393</a>, <a href=\"https://github.com/WordPress/gutenberg/pull/79691\">#79691</a>).</p>\n\n\n\n<h2 class=\"wp-block-heading\">The most important fixes for developers</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><code>wp_kses()</code> no longer corrupts valid CSS (<a href=\"https://core.trac.wordpress.org/ticket/65270\">#65270</a>).</strong> Since 7.0 RC4, <code>wp_kses()</code> could mangle legitimate <code>background-image: url(…)</code> declarations into a broken <code>style=\")\"</code> attribute. If your theme or plugin outputs inline background images through KSES-filtered content, 7.0.1 restores expected behavior — any workarounds you shipped can now be removed.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><code>global-styles-inline-css</code> can be dequeued again (<a href=\"https://core.trac.wordpress.org/ticket/65336\">#65336</a>).</strong> Since 7.0, developers were unable to remove the global styles inline stylesheet. If your build pipeline or performance optimization strips this and re-serves it another way, that control is back.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>PHP 8.5 compatibility fix in <code>wp_get_attachment_image_src()</code> (<a href=\"https://core.trac.wordpress.org/ticket/64742\">#64742</a>).</strong> An incorrect array access triggered issues under PHP 8.5. If you&#8217;re testing sites on newer PHP versions, this removes one blocker.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>A removed Navigation function returns as a deprecated shim (Gutenberg <a href=\"https://github.com/WordPress/gutenberg/pull/78484\">#78484</a>).</strong> <code>block_core_navigation_submenu_render_submenu_icon()</code> was removed in 7.0, breaking themes and plugins that called it directly. It&#8217;s restored as a deprecated shim — but treat this as your migration notice, not a reprieve. Update any code that references it.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Editor state management fixes reduce false &#8220;unsaved changes&#8221; warnings.</strong> Two Gutenberg fixes matter here: </p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>controlled/mode block changes are now marked non-persistent (<a href=\"https://github.com/WordPress/gutenberg/pull/79350\">#79350</a>), and </li>\n\n\n\n<li>related navigation entities are no longer dirtied during passive renders (<a href=\"https://github.com/WordPress/gutenberg/pull/79000\">#79000</a>). </li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\">Together these should mean fewer spurious dirty states and a cleaner undo history — a quality-of-life improvement if you build with template parts and navigation blocks.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Block Visibility: &#8220;hide everywhere&#8221; keeps working after a block opts out of visibility support (<a href=\"https://core.trac.wordpress.org/ticket/65389\">#65389</a>).</strong> If you register blocks that disable visibility support, previously hidden instances now stay hidden as expected.</p>\n\n\n\n<h2 class=\"wp-block-heading\">How to update</h2>\n\n\n\n<p class=\"wp-block-paragraph\">You can update directly from <strong>Dashboard → Updates</strong> in your site&#8217;s admin, run <code>wp core update</code> with WP-CLI, or download WordPress 7.0.1 from WordPress.org and install it manually. Sites that support automatic background updates for minor releases will begin updating on their own shortly.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The full ticket list is available in the<a href=\"https://make.wordpress.org/core/2026/07/01/wordpress-7-0-1-rc1-is-now-available/\"> release candidate announcement</a>, Trac report 4, and the 7.0.x editor tasks board on GitHub.</p>\n\n\n\n<h2 class=\"wp-block-heading\">What&#8217;s next: WordPress 7.1</h2>\n\n\n\n<p class=\"wp-block-paragraph\">With 7.0.1 out the door, attention turns to the next major release: WordPress 7.1 is scheduled for August 19, 2026. To see what&#8217;s planned for the release, check out the <a href=\"https://make.wordpress.org/core/2026/06/19/roadmap-to-7-1/\">Roadmap to 7.1</a> on the Make WordPress Core blog.</p>\n\n\n\n<p class=\"wp-block-paragraph\"></p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Fri, 10 Jul 2026 09:34:45 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:18:\"Birgit Pauli-Haack\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:31;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"WordPress.org blog: WordPress 7.0.1 Maintenance Release\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"https://wordpress.org/news/?p=21005\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:71:\"https://wordpress.org/news/2026/07/wordpress-7-0-1-maintenance-release/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:8685:\"<p class=\"wp-block-paragraph\"><strong>WordPress 7.0.1 is now available!</strong></p>\n\n\n\n<p class=\"wp-block-paragraph\">This minor release includes fixes for 31 bugs <a href=\"https://core.trac.wordpress.org/query?resolution=fixed&amp;milestone=7.0.1&amp;group=component&amp;col=id&amp;col=summary&amp;col=milestone&amp;col=owner&amp;col=type&amp;col=status&amp;col=priority&amp;order=priority\">throughout Core</a> and the <a href=\"https://core.trac.wordpress.org/changeset/62610\">Block Editor</a>, addressing issues affecting multiple areas of WordPress including the block editor, admin ui, and media. For a full list of bug fixes, please refer to the <a href=\"https://make.wordpress.org/core/2026/07/01/wordpress-7-0-1-rc1-is-now-available/\">release candidate announcement.</a></p>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.0.1 is a short-cycle maintenance release. The next major version of WordPress will be 7.1; it is scheduled for release on 19 August 2026 at <a href=\"https://us.wordcamp.org/2026/\">WordCamp US</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you have sites that support automatic background updates, the update process will begin automatically.</p>\n\n\n\n<p class=\"wp-block-paragraph\">You can <a href=\"https://wordpress.org/wordpress-7.0.1.zip\">download WordPress 7.0.1 from WordPress.org</a>, or visit your WordPress Dashboard, click “Updates”, and then click “Update Now”. For more information on this release, please <a href=\"https://wordpress.org/support/wordpress-version/version-7-0-1\">visit the HelpHub site</a>.</p>\n\n\n\n<h2 class=\"wp-block-heading\">Thank you to these WordPress contributors</h2>\n\n\n\n<p class=\"wp-block-paragraph\">This release was led by <a href=\"https://profiles.wordpress.org/jorbin/\">Aaron Jorbin</a>, <a href=\"https://profiles.wordpress.org/masteradhoc/\">Brian Haas</a>, <a href=\"https://profiles.wordpress.org/cbravobernal/\">Carlos Bravo</a> and <a href=\"https://profiles.wordpress.org/estelaris/\">Estela Rueda</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress 7.0.1 would not have been possible without the contributions of the following people. Their asynchronous coordination to deliver maintenance fixes into a stable release is a testament to the power and capability of the WordPress community.</p>\n\n\n\n<p class=\"is-style-wporg-props-long wp-block-paragraph\"><a href=\"https://profiles.wordpress.org/jorbin\">Aaron Jorbin</a>, <a href=\"https://profiles.wordpress.org/abduremon\">Abdur Rahman Emon</a>, <a href=\"https://profiles.wordpress.org/abhishekfdd\">Abhishek Kumar</a>, <a href=\"https://profiles.wordpress.org/adamsilverstein\">Adam Silverstein</a>, <a href=\"https://profiles.wordpress.org/zieladam\">Adam Zieliński</a>, <a href=\"https://profiles.wordpress.org/iamadisingh\">Aditya Singh</a>, <a href=\"https://profiles.wordpress.org/wildworks\">Aki Hamano</a>, <a href=\"https://profiles.wordpress.org/afercia\">Andrea Fercia</a>, <a href=\"https://profiles.wordpress.org/andraganescu\">Andrei Draganescu</a>, <a href=\"https://profiles.wordpress.org/andrewserong\">Andrew Serong</a>, <a href=\"https://profiles.wordpress.org/annezazu\">annezazu</a>, <a href=\"https://profiles.wordpress.org/scruffian\">Ben Dwyer</a>, <a href=\"https://profiles.wordpress.org/bacoords\">Brian Coords</a>, <a href=\"https://profiles.wordpress.org/masteradhoc\">Brian Haas</a>, <a href=\"https://profiles.wordpress.org/cbravobernal\">Carlos Bravo</a>, <a href=\"https://profiles.wordpress.org/cogdesign\">cogdesign</a>, <a href=\"https://profiles.wordpress.org/danluu\">Dan Luu</a>, <a href=\"https://profiles.wordpress.org/talldanwp\">Daniel Richards</a>, <a href=\"https://profiles.wordpress.org/darshitrajyaguru97\">Darshit Rajyaguru</a>, <a href=\"https://profiles.wordpress.org/davidbaumwald\">David Baumwald</a>, <a href=\"https://profiles.wordpress.org/dmsnell\">Dennis Snell</a>, <a href=\"https://profiles.wordpress.org/dhruvang21\">Dhruvang21</a>, <a href=\"https://profiles.wordpress.org/ellatrix\">Ella Van Durpe</a>, <a href=\"https://profiles.wordpress.org/r1k0\">Erick Wambua</a>, <a href=\"https://profiles.wordpress.org/ecairol\">Esteban</a>, <a href=\"https://profiles.wordpress.org/estelaris\">Estela Rueda</a>, <a href=\"https://profiles.wordpress.org/mamaduka\">George Mamadashvili</a>, <a href=\"https://profiles.wordpress.org/gziolo\">Greg Ziółkowski</a>, <a href=\"https://profiles.wordpress.org/abcd95\">Himanshu Pathak</a>, <a href=\"https://profiles.wordpress.org/hbhalodia\">Hit Bhalodia</a>, <a href=\"https://profiles.wordpress.org/huzaifaalmesbah\">Huzaifa Al Mesbah</a>, <a href=\"https://profiles.wordpress.org/iflairwebtechnologies\">iflairwebtechnologies</a>, <a href=\"https://profiles.wordpress.org/jamesbregenzer\">James</a>, <a href=\"https://profiles.wordpress.org/jsnajdr\">Jarda Snajdr</a>, <a href=\"https://profiles.wordpress.org/audrasjb\">Jb Audras</a>, <a href=\"https://profiles.wordpress.org/joedolson\">Joe Dolson</a>, <a href=\"https://profiles.wordpress.org/joen\">Joen Asmussen</a>, <a href=\"https://profiles.wordpress.org/jonsurrell\">Jon Surrell</a>, <a href=\"https://profiles.wordpress.org/desrosj\">Jonathan Desrosiers</a>, <a href=\"https://profiles.wordpress.org/karthikeya01\">Karthikeya Bethu</a>, <a href=\"https://profiles.wordpress.org/khokansardar\">Khokan Sardar</a>, <a href=\"https://profiles.wordpress.org/rlucian\">Lucian R.</a>, <a href=\"https://profiles.wordpress.org/luismulinari\">luismulinari</a>, <a href=\"https://profiles.wordpress.org/dervishov\">Mahammad Darvishov</a>, <a href=\"https://profiles.wordpress.org/manhar\">Manhar Barot</a>, <a href=\"https://profiles.wordpress.org/mciampini\">Marco Ciampini</a>, <a href=\"https://profiles.wordpress.org/tyxla\">Marin Atanasov</a>, <a href=\"https://profiles.wordpress.org/muryam\">Maryam Sultana</a>, <a href=\"https://profiles.wordpress.org/masum52\">Masum</a>, <a href=\"https://profiles.wordpress.org/mcsf\">Miguel Fonseca</a>, <a href=\"https://profiles.wordpress.org/369work\">Miroku</a>, <a href=\"https://profiles.wordpress.org/mohamedahamed\">Mohammed Noumaan Ahamed</a>, <a href=\"https://profiles.wordpress.org/mukesh27\">Mukesh Panchal</a>, <a href=\"https://profiles.wordpress.org/mustafabharmal\">Mustafa Bharmal</a>, <a href=\"https://profiles.wordpress.org/ntsekouras\">Nik Tsekouras</a>, <a href=\"https://profiles.wordpress.org/noruzzaman\">Noruzzaman</a>, <a href=\"https://profiles.wordpress.org/ozgursar\">Ozgur Sar</a>, <a href=\"https://profiles.wordpress.org/peterwilsoncc\">Peter Wilson</a>, <a href=\"https://profiles.wordpress.org/presskopp\">Presskopp</a>, <a href=\"https://profiles.wordpress.org/ekla\">Rahul Kumar</a>, <a href=\"https://profiles.wordpress.org/ramonopoly\">ramonopoly</a>, <a href=\"https://profiles.wordpress.org/youknowriad\">Riad Benguella</a>, <a href=\"https://profiles.wordpress.org/rishabhwp\">Rishabh Gupta</a>, <a href=\"https://profiles.wordpress.org/roshniahuja14\">Roshni Ahuja</a>, <a href=\"https://profiles.wordpress.org/sainathpoojary\">Sainath Poojary</a>, <a href=\"https://profiles.wordpress.org/sakshamsharma5\">Saksham Sharma</a>, <a href=\"https://profiles.wordpress.org/andrewssanya\">SAndrew</a>, <a href=\"https://profiles.wordpress.org/coffee2code\">Scott Reilly</a>, <a href=\"https://profiles.wordpress.org/sergeybiryukov\">Sergey Biryukov</a>, <a href=\"https://profiles.wordpress.org/siliconforks\">siliconforks</a>, <a href=\"https://profiles.wordpress.org/sabernhardt\">Stephen Bernhardt</a>, <a href=\"https://profiles.wordpress.org/swanandm\">Swanand M</a>, <a href=\"https://profiles.wordpress.org/inc2734\">Takashi Kitajima</a>, <a href=\"https://profiles.wordpress.org/edent\">Terence Eden</a>, <a href=\"https://profiles.wordpress.org/threadi\">threadi</a>, <a href=\"https://profiles.wordpress.org/tusharaddweb\">Tushar Patel</a>, <a href=\"https://profiles.wordpress.org/umesh.nevase\">Umesh Nevase</a>, <a href=\"https://profiles.wordpress.org/webmandesign\">WebMan Design | Oliver Juhas</a>, <a href=\"https://profiles.wordpress.org/westonruter\">Weston Ruter</a>, <a href=\"https://profiles.wordpress.org/yogeshbhutkar\">Yogesh Bhutkar</a>, <a href=\"https://profiles.wordpress.org/yusufmudagal\">Yusuf Mudagal</a> </p>\n\n\n\n<h2 class=\"wp-block-heading\">How to contribute</h2>\n\n\n\n<p class=\"wp-block-paragraph\">To get involved in WordPress core development, head over to Trac, <a href=\"https://core.trac.wordpress.org/report/6\">choose a ticket</a>, and join the conversation in the <a href=\"https://wordpress.slack.com/archives/C02RQBWTW\">#core</a> channel. Need help? Check out the <a href=\"https://make.wordpress.org/core/handbook/\">Core Contributor Handbook</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Props to </em><a class=\"mention\" href=\"https://profiles.wordpress.org/jorbin/\"><span class=\"mentions-prefix\">@</span>jorbin</a><em> for proofreading.</em></p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 09 Jul 2026 17:33:42 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Estela Rueda\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:32;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:64:\"Open Channels FM: The Paradox of Empowerment in a Disruptive Era\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556703\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:71:\"https://openchannels.fm/the-paradox-of-empowerment-in-a-disruptive-era/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:158:\"Tech feels wild and unpredictable, yet super empowering. Success now hinges on broad awareness and curiosity, not just deep specialization. Embrace the chaos.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 09 Jul 2026 15:24:38 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:33;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"Jonathan Desrosiers: 13 Years Contributing to WordPress\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:39:\"https://jonathandesrosiers.com/?p=12208\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:74:\"https://jonathandesrosiers.com/2026/07/13-years-contributing-to-wordpress/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:13569:\"<p class=\"wp-block-paragraph\">Thirteen years ago today, I received <a href=\"https://core.trac.wordpress.org/changeset/24588\">my very first props for contributing to WordPress Core</a>. If my WordPress contribution journey were a person, it would now be a teenager. It&#8217;s pretty wild to think about, but I&#8217;ve now been contributing to the WordPress project in some way for a third of my life!</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-what-is-a-prop\">What is a &#8220;prop&#8221;?</h2>\n\n\n\n<p class=\"wp-block-paragraph\">In the WordPress open source project, community participants receive credit for contributing to a given change or deliverable by receiving “props.”</p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Props should be given to all those who contributed to the final commit, whether through patches, refreshed patches, code suggested otherwise, design, writing, user testing, or other significant investments of time and effort. Usernames are parsed for the credits list and WordPress.org profiles.</p>\n\n\n\n<p class=\"is-style-text-subtitle is-style-text-subtitle--1 wp-block-paragraph\"><a href=\"https://make.wordpress.org/core/handbook/best-practices/commit-messages/#props\">WordPress Core Handbook</a></p>\n</blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">The names of all the contributors who helped make a specific release possible are collected in the weeks leading up and added to the Credits API, which powers the Credits page in the WordPress dashboard.</p>\n\n\n\n<p class=\"wp-block-paragraph\">To date, I have been listed on the Credits page for 24 consecutive releases starting with 4.7, and 29 of the 35 releases overall since my first credited contribution in <a href=\"https://wordpress.org/news/2013/08/oscar/\">WordPress 3.6 “Oscar”,</a> alongside 224 other contributors.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Every year is a bit different than the last, but I can confidently say that this past year has been significantly different. What it means to develop software or contribute to open source is changing rapidly with advanced AI innovations seemingly every day combined with these tools being accessible to more people than ever before. But throughout all this, one truth holds strong: open source software is more important than ever.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-looking-back\">Looking Back</h2>\n\n\n\n<p class=\"wp-block-paragraph\">It seemed only fitting for me to instruct AI to analyze my contribution activity over the last 365 days to try and find anything interesting!</p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-prompt\">Prompt</h3>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Today is the 13th Anniversary of my first credited contribution to the WordPress project. I try to write a blog post each year to mark the occasion.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I’m looking for ideas for this years edition. Please go and read all of my past posts (accessible here at this category feed https://jonathandesrosiers.com/category/contributing-anniversaries/feed) and give me 10-12 ideas for what to focus on this year. You can also look through the other content on my site for other ideas.</p>\n\n\n\n<p class=\"wp-block-paragraph\">After you do that, I want you to look at the git history for the <code>wordpress-develop</code> and <code>gutenberg</code> repositories between July 8, 2025 and yesterday (July 7, 2026). I want you to parse the logs to summarize my activity and find some particular ways to analyze the data that are interesting.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Be creative! These posts are the most fun when I am able to find some unique insight into a year&#8217;s worth of contributions.</p>\n</blockquote>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-results\">Results</h3>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"h-your-year-13-in-numbers-jul-8-2025-jul-7-2026\">Your year 13 in numbers (Jul 8 2025 → Jul 7 2026)</h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Metric</th><th>Value</th></tr></thead><tbody><tr><td>Core commits authored &amp; committed</td><td><strong>119</strong> (~7% of all 1,707 core commits this cycle)</td></tr><tr><td>Additional commits crediting you (props received)</td><td><strong>97</strong> → ~<strong>216</strong> credited touch points in core alone</td></tr><tr><td>Lines changed</td><td><strong>+41,746 / −21,940</strong> across 656 file-changes</td></tr><tr><td>Unique Trac tickets</td><td><strong>69</strong></td></tr><tr><td>Gutenberg PRs authored</td><td><strong>24</strong> (+108 co-authored/credited)</td></tr><tr><td>Reverts you committed</td><td>6</td></tr></tbody></table></figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The headline:</strong> <strong>80 of your 119 core commits (67%) are &#8220;Build/Test Tools.&#8221;</strong> Add Tests + General and it&#8217;s ~80%. You spent year 13 as the <strong>plumber of WordPress</strong> — CI, build pipeline, dependency stewardship, release infrastructure.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-the-most-interesting-angles-the-data-surfaced\">The most interesting angles the data surfaced</h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li class=\"\"><strong>The nocturnal committer.</strong> ~50 of your commits land between <strong>midnight and 4am</strong>. Tuesday (37) and Thursday (31) are your peak days; Saturday is nearly dead (3).</li>\n\n\n\n<li class=\"\"><strong>The month that didn&#8217;t exist.</strong> <strong>January 2026: zero commits.</strong> March 2026: <strong>40</strong>. Your cadence is a heartbeat synced to the 6.9 and 7.0 release cycles, not the calendar.</li>\n\n\n\n<li class=\"\"><strong>The June 30th ritual.</strong> You bumped Gutenberg&#8217;s pinned hash <strong>seven times in a single day</strong> (v22.8.0 → v23.4.0) — a whole quarter of catching-up compressed into one sitting.</li>\n\n\n\n<li class=\"\"><strong>Supply-chain quiet work.</strong> Pinning full-length action SHAs, replacing abandoned third-party actions, migrating release logic to a GitHub App, ca-bundle updates — you spent the year hardening the software supply chain nobody thanks you for.</li>\n\n\n\n<li class=\"\"><strong>Keeping the ancient libraries breathing.</strong> lodash, underscore, backbone, getID3, Twemoji — you&#8217;re the caretaker of WordPress&#8217;s legacy vendored code.</li>\n\n\n\n<li class=\"\"><strong>Future-proofing the matrix.</strong> MySQL 9.5/9.6/9.7, MariaDB 12.1, PHP 8.5 (HEIF/HEIC) — you test tomorrow&#8217;s platforms today.</li>\n\n\n\n<li class=\"\"><strong>A first, quietly historic commit:</strong> <em>&#8220;Include example for disclosing AI usage&#8221;</em> — you helped write core&#8217;s early AI-disclosure norms.</li>\n</ol>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"h-10-12-ideas-for-the-year-13-post\">10–12 ideas for the year-13 post</h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li class=\"\"><strong>&#8220;The Plumber&#8217;s Year: 67% of My Commits Were Infrastructure.&#8221;</strong> Own the unglamorous. A love letter to build/test/CI work — the contributions that never show up in a release announcement but without which nothing ships. This is your strongest, most authentic angle.</li>\n\n\n\n<li class=\"\"><strong>&#8220;Confessions of a Nocturnal Committer.&#8221;</strong> Fun, human, data-driven: your midnight-to-4am commit cluster, Tuesday/Thursday peaks, the dead January. Chart your year as a heartbeat and reflect on what it says about maintainer rhythms (and sustainability/burnout).</li>\n\n\n\n<li class=\"\"><strong>&#8220;216 Times.&#8221;</strong> Companion to your 2024 props post, flipped: this year you <em>received</em> credit ~216 times in core (119 committed + 97 propped). Explore the two halves of a committer&#8217;s fingerprint — the work you land yourself vs. the work you shepherd for others.</li>\n\n\n\n<li class=\"\"><strong>&#8220;The Boring Commits That Keep 40% of the Web Safe.&#8221;</strong> The supply-chain security angle: pinned SHAs, abandoned-action replacement, the GitHub App migration, ca-bundle. Frame maintenance-as-security — timely and underappreciated.</li>\n\n\n\n<li class=\"\"><strong>&#8220;I Test the Future So You Don&#8217;t Break in It.&#8221;</strong> MySQL 9.7, MariaDB 12.1, PHP 8.5 — a piece on being the person who runs tomorrow&#8217;s platforms against today&#8217;s code, and why the test matrix is a form of care.</li>\n\n\n\n<li class=\"\"><strong>&#8220;The Commit I&#8217;m Proudest Of Was One Line About AI.&#8221;</strong> Use <em>&#8220;Include example for disclosing AI usage&#8221;</em> as a springboard into how WordPress (and you) navigated AI&#8217;s arrival in the contribution workflow in 2025–26. Very of-the-moment.</li>\n\n\n\n<li class=\"\"><strong>&#8220;Anatomy of a Revert.&#8221;</strong> Six times this year you reverted your own or others&#8217; work. A candid, senior-contributor essay on why reverting is a feature not a failure — iteration, humility, and trunk stability.</li>\n\n\n\n<li class=\"\"><strong>&#8220;A Year in Dependencies.&#8221;</strong> The stewardship story — lodash/underscore/backbone/getID3/Twemoji. What it means to be the caretaker of code written a decade ago that you can&#8217;t just delete. Legacy as responsibility.</li>\n\n\n\n<li class=\"\"><strong>&#8220;Who I Built With.&#8221;</strong> Refresh your collaborator lens for year 13: westonruter (24), jorbin (22), johnbillion (15), peterwilsoncc (14), wildworks (13)… Name the people behind the props lines and tell a story or two about the work you shared.</li>\n\n\n\n<li class=\"\"><strong>&#8220;The Shape of a Release Cycle, Drawn in Commits.&#8221;</strong> Overlay your monthly commit counts on the 6.9 and 7.0 timelines — the March spike, the December bundled-themes push, the quiet stretches. Show readers what a maintainer&#8217;s year <em>looks like</em> mapped to what shipped.</li>\n\n\n\n<li class=\"\"><strong>&#8220;Same Job, New Tools: Automating Myself Out of the Loop.&#8221;</strong> Your Gutenberg PRs are almost all release automation — GitHub App auth, GHCR publishing, reproducible builds, Dependabot. A reflective piece on spending your labor building the machine that does the labor, and what that means for the next generation of contributors.</li>\n</ol>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"></blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" />\n\n\n\n<p class=\"wp-block-paragraph\">I haven&#8217;t validated any of these numbers, but they do seem relatively accurate at first glance. I had ChatGPT create an embroidered patch that reflects the summary above.</p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized wp-lightbox-container\"><img alt=\"\" class=\"wp-image-12221 not-transparent\" height=\"1024\" src=\"https://jonathandesrosiers.com/wp-content/uploads/2026/07/plumber-of-wordpress-1024x1024.jpg\" width=\"1024\" /><button class=\"lightbox-trigger\" type=\"button\">\n			<svg fill=\"none\" height=\"12\" viewBox=\"0 0 12 12\" width=\"12\" xmlns=\"http://www.w3.org/2000/svg\">\n				<path d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" fill=\"#fff\">\n			</svg>\n		</button></figure>\n\n\n\n<p class=\"wp-block-paragraph\">And some of those writing suggestions are pretty good ideas! I&#8217;m out of time for today, so I&#8217;ll file these in the backlog for another day. But here&#8217;s to another year of helping the world find their voice to share their stories using WordPress. <img alt=\"?\" class=\"wp-smiley\" src=\"https://s.w.org/images/core/emoji/17.0.2/72x72/1f37b.png\" style=\"height: 1em;\" /></p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-past-milestones\">Past Milestones</h2>\n\n\n\n<p class=\"wp-block-paragraph\">&#8220;Props&#8221; Anniversaries: <a href=\"https://jonathandesrosiers.com/2023/07/10-years-of-contributing-to-wordpress/\">Ten</a>, <a href=\"https://jonathandesrosiers.com/2024/07/11-years-contributing-to-wordpress/\">Eleven</a>, <a href=\"https://jonathandesrosiers.com/2025/07/12-years-contributing-to-wordpress/\">Twelve</a> (<a href=\"https://jonathandesrosiers.com/category/contributing-anniversaries/\">archive</a>).</p>\n\n\n\n<p class=\"wp-block-paragraph\">Commit-iversaries: <a href=\"https://jonathandesrosiers.com/2020/11/two-years-my-wordpress-commit-iversary/\">Two</a>, <a href=\"https://jonathandesrosiers.com/2023/11/five-years-my-wordpress-commit-iversary/\">Five</a>, <a href=\"https://jonathandesrosiers.com/2024/11/six-years-a-committer-my-wordpress-commit-iversary/\">Six</a>, <a href=\"https://jonathandesrosiers.com/2025/11/seven-years-a-committer-my-wordpress-commit-iversary/\">Seven</a> (<a href=\"https://jonathandesrosiers.com/category/commit-iversaries/\">archive</a>).</p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" />\n\n\n\n<p class=\"has-text-align-right has-small-font-size wp-block-paragraph\"><em>Featured image credit: <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">CC0</a> licensed <a href=\"https://wordpress.org/photos/photo/72361fea8c/\">photo</a> by <a href=\"https://wordpress.org/photos/author/westguard/\">Mark Westguard</a> from the <a href=\"https://wordpress.org/photos/\">WordPress Photo Directory</a>.</em></p>\n\n\n\n<p class=\"wp-block-paragraph\"></p>\n<p>The post <a href=\"https://jonathandesrosiers.com/2026/07/13-years-contributing-to-wordpress/\">13 Years Contributing to WordPress</a> appeared first on <a href=\"https://jonathandesrosiers.com\">Jonathan Desrosiers</a>.</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 09 Jul 2026 03:39:36 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:19:\"Jonathan Desrosiers\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:34;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:25:\"Matt: Code for the People\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:23:\"https://ma.tt/?p=153500\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://ma.tt/2026/07/people-code/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:4081:\"<figure class=\"wp-block-image size-full\"><a href=\"https://codeforthepeople.com/\"><img alt=\"\" class=\"wp-image-153503\" height=\"326\" src=\"https://i0.wp.com/ma.tt/files/2026/07/cftp-matt.jpeg?resize=604%2C326&#038;quality=89&#038;ssl=1\" width=\"604\" /></a></figure>\n\n\n\n<p class=\"wp-block-paragraph\">Lights! Camera! Action!</p>\n\n\n\n<p class=\"wp-block-paragraph\">Todd Spangler at Variety writes: <a href=\"https://variety.com/2026/digital/news/automattic-code-for-the-people-1236802508/\">Automattic’s ‘Code for the People’ Documentary Is a Rallying Cry for Users to Fight for the Open Internet</a>, from the NYC premiere last week.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;m looking forward to the <a href=\"https://luma.com/r8wbww10\">San Francisco premiere of the documentary</a>, and then tomorrow everyone <a href=\"https://codeforthepeople.com/\">can stream it for free on codeforthepeople.com</a>! Appearances by <a href=\"https://nomad.blog/\">Anne McCarthy</a>, <a href=\"https://beau.blog/\">Beau Lebens</a>, <a href=\"https://eric.blog/\">Eric Binnion</a>, <a href=\"https://iandanielstewart.com/\">Ian Stewart</a>, <a href=\"https://marjorie.blog\">Marjorie Asturias</a>, <a href=\"https://mary.blog/\">Mary Hubbard</a>, <a href=\"https://matiasventura.com/\">Matías Ventura</a>, Matthew Miller, <a href=\"https://paolo.blog/\">Paolo Belcastro</a>, and <a href=\"https://paulmaiorana.com/\">Paul Maiorana</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>We need to tell the story of Open Source in as many ways and places as possible. It&#8217;s never been more critical. </strong></p>\n\n\n\n<p class=\"wp-block-paragraph\">Film is new to us, and it&#8217;s funny how quickly things change: There&#8217;s a segment with a few &#8220;OpenAI not open&#8221; sound bites, but to their credit, they <a href=\"https://openai.com/open-models/\">have been releasing open-weight models (Safeguard is particularly interesting)</a>. That said, the <a href=\"https://artificialanalysis.ai/leaderboards/models?weights=open\">top open-weight models are all from China</a>, save for <a href=\"https://www.nvidia.com/en-us/ai-data-science/foundation-models/nemotron/\">Nvidia&#8217;s Nemotron</a>, in ~12th place. </p>\n\n\n\n<p class=\"wp-block-paragraph\">When I went to the first WordCamps <a href=\"https://ma.tt/2008/09/first-day-in-beijing/\">in Beijing</a> and <a href=\"https://ma.tt/2008/09/shanghai-wordcamp/\">Shanghai</a> in 2009, it was a very different time. They were the biggest in the world at the time! I don&#8217;t think you could <a href=\"https://ma.tt/2008/09/first-day-in-beijing/#jp-carousel-7712\">take photos in Tiananmen Square as freely as I did then</a>; now to visit I think you need an appointment, ID checks, and security checks. </p>\n\n\n\n<p class=\"wp-block-paragraph\">Even during WordCamp, it felt like the freedom of Open Source was in high demand, but it also created a lot of fear. I found out later that one of the student volunteers who helped their professor organize everything had been taken in for hours of questioning following the event.</p>\n\n\n\n<p class=\"wp-block-paragraph\">On that trip, I saw how fine-grained the Great Firewall could be when individual posts (IIRC, about bad milk from a factory harming babies) wouldn&#8217;t load, but the rest of the site would.  WordPress.com had been totally blocked, <a href=\"https://web.archive.org/web/20090601162213/http://www.google.com/hostednews/afp/article/ALeqM5igVn4hcj6ZNWlawSvzLvgEMkZmkQ\">taking about a quarter of our traffic at the time</a>, but behind the Firewall, Open Source continued to thrive and grow, and now the frontier open models are being driven by China in a way I never would have predicted!</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Once you&#8217;ve had a taste of freedom, it&#8217;s hard to go back.</strong></p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Update: You can now watch the entire thing online:</em></p>\n\n\n\n<figure class=\"wp-block-embed alignwide is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n\n</div></figure>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 08 Jul 2026 23:16:07 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:4:\"Matt\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:35;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:123:\"WPTavern: #224 – David Snead on Building Trust and Collaboration in the Hosting Industry With the Secure Hosting Alliance\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:48:\"https://wptavern.com/?post_type=podcast&p=206201\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:137:\"https://wptavern.com/podcast/224-david-snead-on-building-trust-and-collaboration-in-the-hosting-industry-with-the-secure-hosting-alliance\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:37674:\"<details>Transcript<div>\n<p class=\"wp-block-paragraph\">[00:00:19] <strong>Nathan Wrigley:</strong> Welcome to the Jukebox Podcast from WP Tavern. My name is Nathan Wrigley.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Jukebox is a podcast which is dedicated to all things WordPress. The people, the events, the plugins, the blocks, the themes, and in this case, building trust and collaboration in the hosting industry with the Secure Hosting Alliance.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to wptavern.com/feed/podcast, and you can copy that URL into most podcast players.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you have a topic that you&#8217;d like us to feature on the podcast, I&#8217;m keen to hear from you, and hopefully get you, or your idea, featured on the show. Head to wptavern.com/contact/jukebox, and use the form there.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So on the podcast today, we have David Snead. David has been involved in the hosting industry since 1999, starting out as legal counsel for one of the earliest shared hosting companies, and going on to work with over 50 others. He helped found the i2Coalition, serve as in-house counsel for cPanel and WebPros, and now leads the Secure Hosting Alliance.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re listening to this podcast, I&#8217;m sure that many of you will have worked closely with hosting companies. Perhaps you run an agency, or business, that depends on the reliability, ethics, and security of hosting providers. David is here to talk about cross-industry collaboration in the hosting world, specifically around improving security, professionalism, and communication between hosts.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The conversation focused on why, and how, the Internet Infrastructure Forum, or IIF, is building a framework for real-time intelligence sharing and abuse reporting, aiming to help the entire ecosystem detect and prevent attacks faster than adversaries can adapt.</p>\n\n\n\n<p class=\"wp-block-paragraph\">David talks about the challenges hosting companies face, especially smaller ones, in keeping up with security, and how this evolving project hopes to ease this by sharing actionable, non-proprietary abuse information across registrars, hosting providers, DNS services, and more.</p>\n\n\n\n<p class=\"wp-block-paragraph\">He discusses the growth of both the Secure Hosting Alliance and the IIF, the business case for collaboration, and the nuances of legal and technical information sharing across borders.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re in hosting, run a web agency, or just want to know how the backbone of the web is working to stay more secure and connected, this episode is for you.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re interested in finding out more, you can find all of the links in the show notes by heading to wptavern.com/podcast, where you&#8217;ll find all the other episodes as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And so, without further delay, I bring you David Snead.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I am joined on the podcast by David Snead. Hello David.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:20] <strong>David Snead:</strong> Hello.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:21] <strong>Nathan Wrigley:</strong> Very nice to have you with us. David&#8217;s got a really interesting background, and a really interesting, I&#8217;m going to use the word project. I don&#8217;t know if that&#8217;s the right word. It feels like it&#8217;s got more solidity and it&#8217;s got a lot more history than that. It&#8217;s something which is, I think going, but we&#8217;ll find out a little bit more about it. It&#8217;s all about the hosting industry and trying to get hosts to, I guess communicate with each other in ways going forwards.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:44] <strong>David Snead:</strong> That is a part of it. There are really two goals and one is to level up the ethics and professionalism in the hosting industry. And the second is to facilitate more comradery and interaction among hosts. Something that folks felt occurred in the early 2000s, and with all the consolidation that occurred went away. And so that&#8217;s something that we&#8217;re also trying to facilitate.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:04:16] <strong>Nathan Wrigley:</strong> Okay. So given that we&#8217;re going to be talking about hosting, I guess it&#8217;s a good idea to paint your credentials and find out a little bit more about you. So a short opportunity to just tell us a little about you and your background in WordPress and hosting specifically, I suppose.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:04:29] <strong>David Snead:</strong> Sure. So I have been working in the hosting industry since 1999. As I often say, I was working in the hosting industry when hosting was cool. It is not so cool anymore. In fact most people don&#8217;t really pay attention to it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">You know, and I started as a lawyer for a hosting company, and I was in-house counsel for a company that actually owned a hosting company and was one of the earliest hosting companies that specialised in shared hosting. And so I was their general counsel. And for some reason it stuck, and I&#8217;ve just kind of turned it into a career.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So after that I had a private practise as a lawyer and I worked with probably 50 different hosting companies, mostly writing policies that nobody ever reads, which makes me super fun at parties.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And then from there, my friend Christian Dawson and I formed the i2Coalition as a response to some legislation in the US that would&#8217;ve been kind of the death nail for internet providers. So we started the i2Coalition. I then went in-house for cPanel and worked at cPanel and WebPros for 10 years, and then started the Secure Hosting Alliance.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:05:52] <strong>Nathan Wrigley:</strong> Okay. So you&#8217;ve got all all the history. That&#8217;s pretty good. You know, if we&#8217;re going to talk about hosting.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:05:57] <strong>David Snead:</strong> All the hosting history in one person. That&#8217;s kind of a very scary idea, no?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:02] <strong>Nathan Wrigley:</strong> But that&#8217;s excellent. So do you still offer counsel? Is that still, so you haven&#8217;t sort of sidestepped and do half of the week on a sort of more technical basis? It&#8217;s still the legal side that you&#8217;re involved in.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:13] <strong>David Snead:</strong> I do. Right now I&#8217;m doing mostly M&amp;A work for, it&#8217;s weird. So I don&#8217;t know if anybody has ever said this to you before, but web hosting is kind of like the Hotel California. It&#8217;s like, once you start in the web hosting industry, you never leave. And so I have all these clients from 15 years ago who are now running like little baby hosts, and they&#8217;re talking to bigger hosts and they want to get acquired. So I&#8217;m doing some of that now. I am not writing any of the policies that nobody ever reads because that was just, I did that for too long.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:51] <strong>Nathan Wrigley:</strong> There were too many moments parties.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:53] <strong>David Snead:</strong> Yes, exactly. Yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:55] <strong>Nathan Wrigley:</strong> Okay, so I&#8217;m going to read into the record the title and the blurb that went with the presentation that you are doing or done.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:07:02] <strong>David Snead:</strong> I did it yesterday.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:07:03] <strong>Nathan Wrigley:</strong> Okay, we&#8217;ll get into that in a moment. So the title is coordinating the fight, cross industry collaboration, and the blurb goes as follows. WordPress hosting threats cross company lines. When one provider falls victim, the entire ecosystem suffers. This session explores how the Internet Infrastructure Forum, or IFF, enables hosting providers, registrars and registries to coordinate abuse response through real time intelligence sharing. Learn how operational collaboration helps responsible operators detect and stop attacks faster than adversaries can adapt. And why working together produces results no single provider could achieve alone.</p>\n\n\n\n<p class=\"wp-block-paragraph\">When I read that, immediately was, yeah, that&#8217;s a really sensible idea. Why are we separately, as hosting companies, I say we, I mean the hosting companies. Why are they all trying to do the same work over and over again, separately? When presumably this aspect of the work, the security bit is something they all have in common.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:08:05] <strong>David Snead:</strong> Right? So that&#8217;s the fundamental question, right? So the IIF is a voluntary organisation that is made up of everyone in the infrastructure stack. So from registrars, registries, DNS providers, hosting providers, cloud providers, everyone in the stack. So it is facilitated by the Internet and Jurisdiction Foundation. They&#8217;re based in Paris, and they&#8217;re the actually the secretariat for it.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And what it&#8217;s designed to do is create a common way for everyone who&#8217;s in the infrastructure stack to share information about abuse and abuse issues. And it&#8217;s one of the fundamental problems that you referred to is everybody is operating in a silo, right? And that&#8217;s mostly because that&#8217;s the way the internet is architected, right?</p>\n\n\n\n<p class=\"wp-block-paragraph\">So the internet is architected, so it&#8217;s distributed, right? Registrars and registries basically do their own thing with domain names. They might have a small hosting component or maybe a cloud component, but by and large, all they do is domain names.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Hosting providers probably resell domain names, but they&#8217;re not part of that industry. And so how do they all coordinate? And that&#8217;s what the IIF is trying to facilitate, is more information sharing among the participants.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:09:39] <strong>Nathan Wrigley:</strong> Well I imagine some of the hosting companies are probably fairly good. You know, they&#8217;ve got a giant customer base. Let&#8217;s imagine hosting company X over there, they&#8217;ve got millions of customers. They&#8217;ve got a huge budget that they can put over to, let&#8217;s say, security things. Well that&#8217;s all well and good, brilliant. But then there are other companies who are much scrappier. You know, they maybe have only a few thousand customers. And so their budget for the exact same work is going to be reduced.</p>\n\n\n\n<p class=\"wp-block-paragraph\">How will this work? Is it going to be like a subscription service basically? Will you have a membership, which is in some way equal to the number of clients that you&#8217;ve got? Will there be some expectation that, okay, we&#8217;ll look at your revenue, your membership will be equivalent to a percentage of your revenue? How will that all work?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:10:20] <strong>David Snead:</strong> We don&#8217;t know. This is a very early stage project. Right now we are in a prototype phase where we have just figured out what information folks should submit to the secretariat.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So the way it works is, you submit the information that you collect for a particular abuse issue to the secretariat, who then enriches it with all the other information that&#8217;s been submitted and sends it to the right person.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So a great example is, let&#8217;s say a registrar reported a phishing domain. They turn off the phishing domain and they have maybe a timestamp, an IP address where it was submitted from. They submit that to the secretariat, who then finds the hosting company who is providing the services for the hosting and says, this came in about this particular site. Can you take action on that? So that&#8217;s the way it works.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Right now it&#8217;s very early stage. It&#8217;s in the first phase of a test, and we&#8217;re going to look at whether the way we&#8217;ve architected it, or the way the group has architected it, actually makes sense.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:11:39] <strong>Nathan Wrigley:</strong> Is this going to be then a sort of slow on ramp whereby you bring a few companies in at the beginning, hopefully. And then one or two more and iron out the wrinkles, and then some more and some more? Because I imagine, if you just threw the switch, everybody&#8217;s in, a lot could go wrong at that point. And I&#8217;m guessing there&#8217;s going to be more of a slow on ramp.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:12:00] <strong>David Snead:</strong> So you&#8217;ve pointed out my particular frustration with the IIF, and the reason that the secretariat is moving slowly, right? So fortunately, or unfortunately, based on my cultural background, I&#8217;m just sitting here going, this needs to move faster. We need to have everybody involved, we need to have all the hosts involved, we need to have all the registrars and registries. And other folks who are a little bit more skilled in this type of work say, no, we need to figure out what we&#8217;re doing and that requires a small number of people.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The phase that we&#8217;re in right now is looking for more folks who are interested in sitting at the table and being part of the discussion. Particularly in the hosting industry and in the web design and marketing industry. Those are folks who don&#8217;t generally participate in these kind of industry led collaboration exercises. And that&#8217;s the reason that I&#8217;m at WordCamp, is to talk to web designers, marketing agencies about why they should participate in something like this.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:13:13] <strong>Nathan Wrigley:</strong> So this really isn&#8217;t bound in any way to WordPress, is it? It just so happens that WordPress has a significant chunk of the internet, so this is a good place to start. But if you happen to be a, I don&#8217;t know, Drupal user, or you&#8217;re just into writing PHP code or whatever it may be, this is still applicable. There&#8217;s no real WordPress layer to this. This is just a good place for you to come because, well, there&#8217;s probably, what, 30 hosts, 100 yards away from us out there.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:13:37] <strong>David Snead:</strong> I know. And I haven&#8217;t seen all of them yet.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:13:39] <strong>Nathan Wrigley:</strong> Yeah, there&#8217;s work to do. But agnostic to any platform, basically.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:13:42] <strong>David Snead:</strong> It is completely platform agnostic, yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:13:43] <strong>Nathan Wrigley:</strong> Okay. Okay, that&#8217;s interesting. But WordPress is a, is certainly a good place to start.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Now, I&#8217;m imagining, if I was a hosting company and I was the chief executive, I definitely have some questions for you in terms of, okay, we&#8217;re going to share our valuable intel with you, what are you going to do with that? How can we trust you? How do we know that the sharing is going to be done effectively and what have you?</p>\n\n\n\n<p class=\"wp-block-paragraph\">So I guess really what I&#8217;m getting to is, what is the assurances or checks and balances that you, in the end, will hope to offer the host? That you can assure them that, look, if you hand us this body of work, you don&#8217;t need to think about it again. You can trust us to do it honourably, effectively, collaboratively. You get where going.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:14:26] <strong>David Snead:</strong> Yeah, yeah. And I suspect that you wanted to be a lawyer at some time, because that&#8217;s one of the issues that we&#8217;re facing. Information that can be shared freely, as an example, in the United States, might not be capable of being shared so freely in the European Union, or in Brazil, or in India or someplace like that.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So one of the things that&#8217;s being done, not by me, but by another group, another working group that&#8217;s part of this, is analysing the legal issues around information sharing.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The information that&#8217;s being shared, to answer the proprietary and confidentiality question, is not proprietary or confidential information. So it&#8217;s things like timestamps, domain names, IP addresses for the initial abuse submission. Things like that that really don&#8217;t indicate some sort of company confidential information. And it&#8217;s further abstracted into xarf, which is a language that&#8217;s used for abuse reporting, that we all can share. And so I think that the only thing that would be of concern is whether that information is personal information that&#8217;s subject to jurisdictional restrictions around the world.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:15:48] <strong>Nathan Wrigley:</strong> Would the idea be that this organisation would do the remedial work? So is there any notion that, let&#8217;s say for example, some sort of security problem was discovered by hosting company A over there, and they share that intel with you. Maybe the question is kind of asking, will you then appoint people to figure out what the patch is for that? Or is your idea just to, oh, red flag, we&#8217;ve got this problem, now you all know about it. Is it just information sharing as opposed to fixes?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:16:17] <strong>David Snead:</strong> Yeah, it&#8217;s the latter. So the thing that we&#8217;re solving for right now, so there&#8217;s just one issue that, one abuse issue, that we&#8217;re testing out and it&#8217;s issues related to fake shops. And so the fake shop issue is the test abuse issue for the project, and where folks are sharing information. It&#8217;s a particular problem right now with credentials harvesting. And so that&#8217;s what we&#8217;re trying to look at.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:16:43] <strong>Nathan Wrigley:</strong> And how has the conversations that you&#8217;ve had thus far, how have they gone? Has this been warmly received or are you facing a little bit of pushback?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:16:50] <strong>David Snead:</strong> So, look, I&#8217;ll be very direct with you. If something isn&#8217;t just an immediate threat to them, it&#8217;s very difficult to conceptualise why you should participate. And I am pretty used to answering that question simply based on the political work that I do with the i2Coalition. But once you talk about, so let&#8217;s use fake shops as an example. Fake shops, and you&#8217;re providing services to fake shops, actually has an impact on your bottom line.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So if you are providing, let&#8217;s say, payment processing to an entity that is running a fake shop, it very easily can make your credit card processing charges higher. It ends up eating bandwidth. It will tax your abuse resources.</p>\n\n\n\n<p class=\"wp-block-paragraph\">One of the things that you referred to initially is, you know, larger hosts have a lot of money. I wouldn&#8217;t say they have a lot of money, but they have more bandwidth to handle a vast fire hose of abuse issues. Most smaller hosting companies might only get five or six abuse issues in a month. But if you have a fake shop, that&#8217;s going to generate a huge amount of abuse, and it&#8217;s taking away resources that you can use to actually grow your business. So that argument actually is relatively persuasive in getting folks to pay attention.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I find that the business argument around abuse is a much more compelling discussion than kind of moral persuasion. I don&#8217;t think moral persuasion works in the context of a community that is trying very hard just to keep their heads above water.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:18:42] <strong>Nathan Wrigley:</strong> It feels to me from what you&#8217;ve just said, and I could be reading too much between the lines, but it feels to me as if a good target audience would be smaller hosts to begin with, simply because they&#8217;re probably going to be more receptive because they have less bandwidth themselves. And so would welcome anything that can make the burden of sharing this information easier. So 10 of the small hosts combined is, well, it&#8217;s much bigger than each of them individually would be, whereas I suppose you&#8217;ll have to get a critical mass of them on board until maybe some of the bigger hosts start to look at you with favourable eyes, let&#8217;s say that.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:19:15] <strong>David Snead:</strong> Well, so we have some pretty large hosting companies who are participating. So as an example, both GoDaddy and Newfold are participating. But we also have smaller hosts. But I agree with you, the information that&#8217;s being provided, particularly since it is actionable, realistic information that can be adapted for bespoke systems, is invaluable, right?</p>\n\n\n\n<p class=\"wp-block-paragraph\">So if you only get five or six abuse complaints and you get an abuse complaint, and you can go to the secretariat and say, we got a complaint about this domain, and the secretariat says, here&#8217;s what the registrar did. Here&#8217;s what Cloudflare did. Here&#8217;s the information they provided us. And you can use that to make a decision on how to address that problem. It saved you hours and hours and hours of research time.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:09] <strong>Nathan Wrigley:</strong> Technically speaking, what would the conduit of information both toward you and away from you look like? So if I&#8217;m hosting company X, how are you imagining that I will supply you with that information? But also, if I&#8217;m just looking for information from you on a daily, weekly basis, whatever it may be, how do I receive that? Is this like a, I don&#8217;t know, a website or an API or?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:33] <strong>David Snead:</strong> It&#8217;s an API. So it&#8217;s a file. It&#8217;s just a general file download.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:37] <strong>Nathan Wrigley:</strong> Right, okay. So it&#8217;s readily available 24/7?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:40] <strong>David Snead:</strong> Right. That&#8217;s the goal. Right now it&#8217;s not, but the goal is to kind of figure out a way to make something like that possible.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:47] <strong>Nathan Wrigley:</strong> Yeah, okay. I also suppose that the hosting companies, whilst this is good for their business if they can minimise costs and hand a lot of this work over to you, there&#8217;s a part of them which would also probably like to put some sort of badge on their website to say, this is what we&#8217;re doing. We&#8217;re part of this alliance, for want of a better word. Is that something that you are looking to develop as well, you know, some sort of credentialing system to demonstrate that you&#8217;re in this?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:21:12] <strong>David Snead:</strong> So that&#8217;s not something that the IIF is working on. It&#8217;s something that the Secure Hosting Alliance does. The Secure Hosting Alliance has a trust seal that we give to hosts who fulfil our Trust Seal Certification provisions. But that&#8217;s not something that the IIF does.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Talking about like why, other than business reasons, folks should participate in this, one of the things that is going on that I would suggest that most hosts know about, is there&#8217;s a little bit of a moral panic going on in the world about what contents you have. And regulation is actually a very real thing for the hosting industry, who has not ever been regulated. This is the time where you can say, hey, this is what we&#8217;re doing, right? We&#8217;re dealing with issues. This way a trust seal is the same thing, right? It&#8217;s something that you can say, we are actually taking steps to make the internet a better place.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:22:18] <strong>Nathan Wrigley:</strong> I think if you are a general agency owner or, I don&#8217;t know, just a freelancer, hosting is one of those things that you, once you&#8217;ve done it once, you&#8217;re in it for the long haul until something goes wrong. But you&#8217;re also browsing around for any tiny indication of why is this host slightly different? You know, what is it that they&#8217;re doing that, I don&#8217;t know, is faster? What is it that they&#8217;re doing that&#8217;s more secure? So it feels to me if you had a credentialing system and I began to hear about it and see it pop up again and again, it would be one of the metrics which I would weigh up when looking at hosting.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:22:51] <strong>David Snead:</strong> I would think so. One of the things that a trust seal does is it indicates that there&#8217;s been some vetting of the host. That someone has determined the things that are important to the hosting industry and are important to the web design industry. The agency industry are also important to the host.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Great example of that is one of the provisions of the Secure Hosting Alliances&#8217; Trust Seal Certification is that a contract is presented to the customer before they sign up, which is super customer friendly.</p>\n\n\n\n<p class=\"wp-block-paragraph\">One of the things as a lawyer that you hear about all the time when people are dissatisfied with their services is, yeah, well, I never saw that contract. Or it was just a hyperlink in an email that I got. That&#8217;s one of the differentiators for a Trust Seal certified host is that the contract is actually presented to them, to the customer beforehand.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:23:57] <strong>Nathan Wrigley:</strong> So in terms of the WordPress crowd, is this a thing that you are pitching only to hosts? Like when you step out of here, are you trying to have conversations only with hosts? Or is there some bit of the WordPress community, the freelance, the agency owners? Are you trying to communicate with them just to scope out what they need?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:24:15] <strong>David Snead:</strong> So for both the Secure Hosting Alliance and for the IIF, it is that. I really enjoy talking to agencies and developers about whether this is important to them, or why it might be important to them.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:24:31] <strong>Nathan Wrigley:</strong> In terms of how long this project&#8217;s been going, I&#8217;ve only heard of it because of your participation here, but I don&#8217;t know if you&#8217;ve been banging this gong for a decade or, I mean you&#8217;ve been in the industry for long enough to have been banging it for decades. Is this a new initiative or is this something which has a long and storied history?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:24:49] <strong>David Snead:</strong> So the Secure Hosting Alliance has only been active for a year, a little bit over a year. I&#8217;ve been talking about abuse for a long time, but the Secure Hosting Alliance has only been around for a year.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:01] <strong>Nathan Wrigley:</strong> And have you, in that year, got any intuitions that you&#8217;ll be here for another year? Is it basically going in the right direction?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:09] <strong>David Snead:</strong> It is going in the right direction. So we started out with two or three charter members. We now have 25 hosting members. We have three security vendors who are members as well. We have, I think, 17 Trust Seal Certified members, and we&#8217;re launching in 2027 a trust seal for security vendors who provide services to hosting companies.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:40] <strong>Nathan Wrigley:</strong> I know that several owners of hosting companies listen to this podcast. They may very well be the people that you&#8217;ve spoken to already, but if they are not, and they are people who would like to investigate this further, I suppose the thing that&#8217;s going to be in their head is, okay, Nathan and David, you&#8217;ve explained what I&#8217;ll get out of it, what do I need to put into it? So is this an annual financial commitment? How does it all work from that point of view?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:02] <strong>David Snead:</strong> Yeah, so you become a member of the i2Coalition. And so the Secure Hosting Alliance is a working group of the i2Coalition. So you would be a general member and you would participate in the Secure Hosting Alliances&#8217; working groups. You also have the ability to participate in the i2Coalition as a whole, which is a much larger trade association that represents almost everyone in the internet infrastructure vertical. Mostly doing policy work, primarily in the US and the EU. Although there&#8217;s, we&#8217;re doing some work in India right now as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:40] <strong>Nathan Wrigley:</strong> And does membership allow you to steer the future of the project? I know that lots of chefs in the kitchen results in terrible food, but that, I fear, is something that could happen. You&#8217;ve got 87 members, 260 members. And then the 260 members all start to bicker and, you know, we want this, no. You see how it goes.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:59] <strong>David Snead:</strong> I do.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:59] <strong>Nathan Wrigley:</strong> What&#8217;s the position there? You know, is there sort of gated levels of membership? How are you organising all of that?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:27:04] <strong>David Snead:</strong> There are not. The membership is based on self-reported revenue. The membership is not horrifically expensive from my perspective. And I think that that, most of our members would say that it is, it&#8217;s actually relatively affordable, particularly for the small to medium sized hosts. And registrars or design agencies, anyone who&#8217;s participating.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The question about, who&#8217;s running the show, comes up quite a bit. We haven&#8217;t really faced that issue, particularly in the Secure Hosting Alliance. Folks seem to get along. But the organisation runs on the idea of rough consensus. And so decisions end up not being controlled by one member or not. Some of the i2Coalition has some very large companies who everybody knows about, who get along with startups, and folks against whom they compete directly. And policies still get made. The organisation still moves forward.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:28:11] <strong>Nathan Wrigley:</strong> Yeah, I guess you&#8217;re in a space where, obviously all of these hosting companies commercially are vying for everybody else&#8217;s business. But in this particular situation, that is not the case. Nobody&#8217;s vying for their websites to be less secure. They all want the same level of security. So at least in that sense, you would hope that consensus could be maintained even if, commercially, the two companies that are in the room, the 10 companies that are in the room might be commercially at loggerheads with each other. At least on this they could agree. That would be the hope, I suppose, anyway.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:28:47] <strong>David Snead:</strong> It seems to be, not only the hope, but the actual way that things work. You ask about how compromise is reached. What comes to mind is I have a much different concept of privacy than, particularly when I was at WebPros, than other folks in the i2Coalition had. And another company just called me up and we worked through our disagreements about how privacy should be handled within the i2Coalition and were able to move forward.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The industry I&#8217;ve found to be hugely collaborative, particularly the hosting industry. Everybody knows what their competitor is doing. But when it comes to addressing an issue like, how are we going to deal with abuse as a community? Folks come together. CEOs of hosting companies while they compete tend to be relatively good friends.</p>\n\n\n\n<p class=\"wp-block-paragraph\">As I said at the very beginning, it really is like the Hotel California, right? You come in as a CEO of a hosting company, you grow it and you sell it to another company. All of a sudden you&#8217;re at the bottom again with a server in your grandma&#8217;s basement, you know, trying to start again.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:30:08] <strong>Nathan Wrigley:</strong> It&#8217;s a really curious effort. I suppose really at the bottom of this entire podcast is your endeavour to be heard and to reach out and get some conversations going. So with that in mind, where do people find the information about this? So maybe there&#8217;s a website that we could mention. But also, is there a specific place where you hang out? Is there a place where you would like to be contacted most?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:30:33] <strong>David Snead:</strong> Sure. So our website is hostingsecurity.net. I&#8217;m not too afraid of getting too much spam. So folks can email me at snead@i2coalition.com And the two is the numeral two. So it&#8217;s snead@i2coalition.com. And I&#8217;m happy to answer questions.</p>\n\n\n\n<p class=\"wp-block-paragraph\">In terms of hanging out, I am at most industry conferences in the hosting industry. In the WordPress industry, I&#8217;ll be at WordCamp US. We also participate very heavily in ICANN. So there is an i2Coalition member at every single ICANN meeting.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:31:12] <strong>Nathan Wrigley:</strong> So if you go to wptavern.com and you search for the episode with David Snead, S-N-E-A-D, you&#8217;ll be able to find those details. I&#8217;ll put everything into the show notes. So anything that I missed? Was there a particular focus that we didn&#8217;t touch?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:31:26] <strong>David Snead:</strong> No, this is actually one of the most thorough podcasts I&#8217;ve been on recently.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:31:31] <strong>Nathan Wrigley:</strong> That&#8217;s love to hear it. Well, David Snead, thank you very much for joining me today.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:31:35] <strong>David Snead:</strong> Glad to be here. Thanks for having me.</p>\n</div></details>\n\n\n\n<p class=\"wp-block-paragraph\">On the podcast today we have David Snead.</p>\n\n\n\n<p class=\"wp-block-paragraph\">David has been involved in the hosting industry since 1999, starting out as legal counsel for one of the earliest shared hosting companies and going on to work with over 50 others. He helped found the i2Coalition, serve as in-house counsel for cPanel and WebPros, and now leads the Secure Hosting Alliance.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you’re listening to this podcast, I’m sure that many of you will have worked closely with hosting companies. Perhaps you run an agency or business that depends on the reliability, ethics, and security of hosting providers. David is here to talk about cross-industry collaboration in the hosting world, specifically around improving security, professionalism, and communication between hosts.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The conversation focused on why and how the Internet Infrastructure Forum (IIF) is building a framework for real-time intelligence sharing and abuse reporting, aiming to help the entire ecosystem detect and prevent attacks faster than adversaries can adapt.</p>\n\n\n\n<p class=\"wp-block-paragraph\">David talks about the challenges hosting companies face, especially smaller ones, in keeping up with security, and how this evolving project hopes to ease this by sharing actionable, non-proprietary abuse information across registrars, hosting providers, DNS services, and more. He discusses the growth of both the Secure Hosting Alliance and the IIF, the business case for collaboration, and the nuances of legal and technical information sharing across borders.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you’re in hosting, run a web agency, or just want to know how the backbone of the web is working to stay more secure and connected, this episode is for you.</p>\n\n\n\n<h2 class=\"wp-block-heading\">Useful links</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://i2coalition.com\">i2coalition website</a></p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://hostingsecurity.net\">Secure Hosting Alliance website</a></p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 08 Jul 2026 14:00:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:14:\"Nathan Wrigley\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:36;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:118:\"HeroPress: “Listen… the birds are already singing” – “Послухай… пташки заспівали”\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:56:\"https://heropress.com/?post_type=heropress-essays&p=8704\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:146:\"https://heropress.com/essays/listen-the-birds-are-already-singing/#utm_source=rss&utm_medium=rss&utm_campaign=listen-the-birds-are-already-singing\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:37329:\"<img alt=\"Pull Quote: WordCamp Europe has become one of the few places where [Ukranians] can reassemble in person. WordCamp Europe став одним із небагатьох місць, де [українці] можуть знову зібратися разом наживо.\" class=\"attachment-large size-large wp-post-image\" height=\"512\" src=\"https://heropress.com/wp-content/uploads/3026/07/volodymyr_banner.webp\" width=\"1024\" /><p class=\"wp-block-paragraph\"><a href=\"https://heropress.com/feed/#ukranian\">Це есе також доступно українською</a>.</p>\n\n\n\n<figure class=\"wp-block-audio\"><audio controls=\"controls\" src=\"https://heropress.com/wp-content/uploads/3026/07/volodomyr_english_recording.mp3\"></audio><figcaption class=\"wp-element-caption\">Listen to Volodymyr read his own story aloud.</figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">&#8220;Listen&#8230; the birds are already singing,&#8221; said Danylo — a Ukrainian I&#8217;d met at a previous WordCamp — as we were wrapping up the last hour of the WCEU afterparty in Krakow. &#8220;It&#8217;s time for us to go.&#8221; He started singing &#8220;Hei! Hei! Hei, sokoly! Omynaite hory, lisy, doly.&#8221; I started singing with him. The Polish guys next to us continued singing in Polish &#8220;Dzwoń, dzwoń, dzwoń dzwoneczku, Mój stepowy skowroneczku.&#8221; Some people behind us joined the choir. That was &#8220;Hey Sokoly&#8221; — a Ukrainian-Polish folk song — carrying us out of Bastion III, a 19th-century Austrian fortress on the edge of Krakow&#8217;s Old Town, as the night turned to morning.</p>\n\n\n\n<p class=\"wp-block-paragraph\">But to explain how I ended up there, I need to go back to where it all began.</p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https://heropress.com/wp-content/uploads/3026/07/krakow_castle2.webp\"><img alt=\"Krakow Castle in morning light\" class=\"wp-image-8713\" height=\"1606\" src=\"https://heropress.com/wp-content/uploads/3026/07/krakow_castle2.webp\" width=\"1402\" /></a><figcaption class=\"wp-element-caption\">The view of the Krakow castle, taken on the morning after the after-party, around the time when birds were singing. Photo by Volodymyr Melnychenko.</figcaption></figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-mykolaiv\">Mykolaiv</h2>\n\n\n\n<p class=\"wp-block-paragraph\">It all started in Mykolaiv, the city of shipbuilders and brides, where I spent my childhood. I graduated from two universities I had been attending simultaneously and started looking for a job during a gap year. I planned to find work to earn some money for further education while preparing for the entrance exams to one of the Finnish universities. Mykolaiv didn&#8217;t provide good opportunities for graduates unless you had very good connections, but I managed to find a job at an &#8220;IT&#8221; company. In 2011, the term &#8220;IT&#8221; didn&#8217;t mean much to me, but they required English, which was my major, so I thought — why not. The work wasn&#8217;t particularly difficult: I had to pretend to be &#8220;Bob&#8221; from the United States, helping customers who had purchased physical products by tracking their orders and walking them through setup instructions. I was fired after a month and a half. Maybe I underperformed, or maybe somebody just didn&#8217;t like me — either way, it&#8217;s water under the bridge.<br /><br />The first job I&#8217;d gotten entirely on my own, the first paycheck that proved I could be independent, and the first time being fired — all of it hit me at once. The last part was devastating, made worse by comments like &#8220;it was too good to be true,&#8221; &#8220;we told you they&#8217;d trick you,&#8221; and &#8220;look at so-and-so, doing such-and-such and earning properly.&#8221; It was hard to sit with feeling like a failure. But somewhere in that difficulty, I got tougher — and more determined to prove everyone wrong.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-templatemonster\">TemplateMonster</h2>\n\n\n\n<p class=\"wp-block-paragraph\">The first job was a failure, but it gave me one clear answer: I needed to stay in IT. The next job was TemplateMonster.com — well known in certain circles. It was the complete opposite of what I&#8217;d experienced before. In 2012 they were selling templates for the most popular CMS platforms of the time: WordPress, Joomla, Drupal, and various e-commerce solutions. The onboarding alone took two months, which tells you something about how seriously they took their people — staff rarely left, and when they did, it was for personal reasons, not because they were pushed out.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><br />My job was to help customers with their templates: installation, editing, customization. Difficult, but genuinely interesting — I liked it. This was the first time I encountered WordPress. I worked six nights a week, and Sundays were the strangest — your day off, but your body had adjusted to night shifts and refused to cooperate. None of that bothered me much. Being able to build sites and make things look exactly right was addictive. I overworked, learned constantly, pestered developers with questions, all just to quench my thirst for knowledge. It ended quickly: I got accepted into three master&#8217;s programs in Finland, chose one, and left for Central Finland.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-helsinki\">Helsinki</h2>\n\n\n\n<figure class=\"wp-block-image alignright size-large is-resized\"><a href=\"https://heropress.com/wp-content/uploads/3026/07/image3.webp\"><img alt=\"Closeup of a glass of orange juice with croissants next to it, and a projection screen in the background.\" class=\"wp-image-8715\" height=\"1024\" src=\"https://heropress.com/wp-content/uploads/3026/07/image3-1024x1024.webp\" style=\"width: 400px;\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">Morning “Weekly” at booncon PIXELS, my first workplace in Helsinki. Photo by Volodymyr Melnychenko.</figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">Studying in Finland was genuinely different from anything I&#8217;d known in Ukraine — in the best possible way. Once the mandatory courses were done, I started looking for work. It was harder than I expected: a year of passive searching, then six months of applying every day. Eventually, I landed at a Helsinki-based agency building WordPress websites — which is still what I do today. A friendly team, around ten people — I&#8217;m still close with many of them. We built sites of varying complexity during the day and spent evenings playing board games, swapping stories, and throwing the occasional party.</p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s also where I attended my first WordPress event: WordCamp Helsinki 2017, a two-day conference. It didn&#8217;t blow me away, but it opened something. When you work in a small agency, you live inside your own bubble — and then suddenly a whole other world appears. You see the other side of WordPress: the community, the people pushing it forward, the people wrestling with the same problems you are and finding creative ways through.<br /><br />That first local WordCamp was enough to make us want to go further. In 2019 the team went to Berlin for WCEU — my first trip abroad outside of the Finland-Ukraine route I knew well. We spent a few days exploring the city and attending the event. WordCamp Europe is a different scale entirely: thousands of attendees, hundreds of volunteers making it happen. Standing in that crowd, I knew I wanted to be part of it — not just as a visitor. And then corona happened.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-porto\">Porto</h2>\n\n\n\n<figure class=\"wp-block-image alignright size-large is-resized\"><a href=\"https://heropress.com/wp-content/uploads/3026/07/image1.webp\"><img alt=\"Volodymyr leaning on a handrail with Krakow in the background.\" class=\"wp-image-8718\" height=\"1024\" src=\"https://heropress.com/wp-content/uploads/3026/07/image1-768x1024.webp\" style=\"width: 400px;\" width=\"768\" /></a><figcaption class=\"wp-element-caption\">Me, standing on the roof the Super Bock Arena, where the WCEU 2022 took place. Photo by Oleksandr Misyats.</figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">WCEU 2020 and 2021 were online, and I felt they were missing the whole point — thousands of people in one place, feeding off each other&#8217;s energy. So when Porto was announced for 2022, I started packing. This time, I joined as a volunteer, to see WordCamp from the inside. It was the right call. It was also a difficult time for Ukrainians — the full-scale invasion was by then well into its second year, and everyone was finding their own way to cope. For me, this event became a source of strength. I connected with the Ukrainian community, had real conversations with speakers, and came away feeling like I&#8217;d experienced what WCEU is actually for.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><br />That trip also clarified something I&#8217;d been circling around for a while. I&#8217;ve always loved traveling, but there was a barrier that had nothing to do with visas or money — though those were factors too. It was a justification problem. Coming from a culture where time should be spent purposefully, traveling for its own sake felt hard to defend. A work conference, though? Completely justifiable. Nobody asks how much fun you had. I&#8217;ve been to Germany, Portugal, Italy, Switzerland, and Poland this way. Spain is next.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Attending WordCamps is one thing. Building a similar event is another.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-wp-suomi\">WP Suomi</h2>\n\n\n\n<p class=\"wp-block-paragraph\">In 2025 I became the lead organizer of <a href=\"https://wpsuomi.fi/\">WP Suomi</a> — the first independent Finnish WordPress event, held in Helsinki. The months before October 10th were intensive in ways I hadn&#8217;t anticipated: budgets, logistics, gifts, merch, catering, venue coordination, a hundred small details that needed to be right simultaneously. I remember waking up at midnight worrying that I hadn&#8217;t ordered something in time and it wouldn&#8217;t arrive before the event. Most of the work that goes into an event like this is invisible to the people attending. They see the schedule, the food, the afterparty. They don&#8217;t see the half a year of pieces being polished before the puzzle comes together.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https://heropress.com/wp-content/uploads/3026/07/image5.webp\"><img alt=\"Banner for WP Suomi\" class=\"wp-image-8721\" height=\"576\" src=\"https://heropress.com/wp-content/uploads/3026/07/image5-1024x576.webp\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">WP Suomi hall screen graphics. Graphics by Sergei Shchegrinets.</figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">On the day of the event, there was nothing left to worry about. Whatever needed doing had been done — if something had been missed in the preparation, it would show up now and there would be little we could do about it. So why worry? The time for that was the preparation, not the day itself. The team — experienced, reliable, no hand-holding required — knew exactly what they were there for.<br /><br />Around 300 people attended WP Suomi. Forty filled out our feedback form afterward, giving an overall score of 4.47 out of 5. But the number mattered less than what people wrote: networking, atmosphere, meeting old friends and new ones, a community that welcomes everyone openly. Reading that, I recognized the same feeling I&#8217;d had at WordCamp Helsinki 2017 — something new, interesting, and full of possibility.<br /><br />Organizing WP Suomi gave me a clearer understanding of what goes into making these events happen. Having been a volunteer at WCEU and then a lead organizer at WP Suomi, I arrived in Krakow with a slightly different perspective — a better sense of what the people around me were going through. This year I&#8217;m back on the WP Suomi organizing team as speakers coordinator — a different role, another angle.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https://heropress.com/wp-content/uploads/3026/07/image2.webp\"><img alt=\"Milania Cap near a presentation podium.\" class=\"wp-image-8723\" height=\"683\" src=\"https://heropress.com/wp-content/uploads/3026/07/image2-1024x683.webp\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">Milana Cap is ready to show some magic with HTML API. She is one of two people who convinced Vladimir to become the lead organizer of WP Suomi ‘25. Photo by Asanka Hettiarachchi.</figcaption></figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-krakow\">Krakow</h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordCamps have changed for me over the years — less about the sessions on stage, more about what happens between them. As an organizer, you miss most of the talks anyway, pulled in ten directions at once. But real life happens in the corridors, and at the parties in the evenings. </p>\n\n\n\n<p class=\"wp-block-paragraph\">This matters especially for the Ukrainian community. The war has scattered us across Europe — different countries, different companies, different lives. WordCamp Europe has become one of the few places where we reassemble in person: to share what the year brought, to meet people we only knew online, to see the community still growing despite everything. Many couldn&#8217;t make it to Krakow, some would not be able to visit these events anymore. For those of us who could, the room carried extra weight. </p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s what Danylo and I were singing about at dawn outside Bastion III, even if neither of us said it out loud. I hope to do that someday in the afterparties in Helsinki and Kyiv — whenever that becomes possible again.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https://heropress.com/wp-content/uploads/3026/07/image4.webp\"><img alt=\"Ukrainian team at WordCamp Torino 2024.\" class=\"wp-image-8725\" height=\"684\" src=\"https://heropress.com/wp-content/uploads/3026/07/image4-1024x684.webp\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">Ukrainian team at WordCamp Torino 2024. More and more Ukrainians visit this event every year despite the war. Photo by Maksym Kaharlytskyi. </figcaption></figure>\n\n\n\n<div class=\"wp-block-group has-background is-vertical is-nowrap is-layout-flex wp-container-core-group-is-layout-ff19e26b wp-block-group-is-layout-flex\" id=\"desktop\">\n<h2 class=\"kt-adv-heading8704_097876-99 wp-block-kadence-advancedheading\" id=\"work-environment\">Volodymyr&#8217;s Work Environment</h2>\n\n\n\n<p class=\"wp-block-paragraph\">We asked Volodymyr for a view into his development life and this is what he sent!</p>\n\n\n	<div class=\"hotspots-image-container\">\n		<img alt=\"Volodymyr’s Desk\" class=\"hotspots-image skip-lazy\" height=\"1890\" src=\"https://heropress.com/wp-content/uploads/2026/07/img_5363.webp\" width=\"2560\" />\n	</div>\n\n\n\n\n<p class=\"has--font-size wp-block-paragraph\">HeroPress would like to thank <a href=\"https://wpdrawattention.com/\">Draw Attention</a> for their donation of the plugin to make this interactive image!</p>\n</div>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"ukranian\">“Послухай… пташки заспівали”</h1>\n\n\n\n<figure class=\"wp-block-audio\"><audio controls=\"controls\" src=\"https://heropress.com/wp-content/uploads/3026/07/volodomyr_ukrainian_recording.mp3\"></audio><figcaption class=\"wp-element-caption\">Слухайте власну історію Володимира вголос.</figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">«Послухай… пташки заспівали», — сказав Данило, українець, з яким я познайомився на попередньому WordCamp — ми якраз протеревенили останню годину afterparty WCEU у Кракові. «Значить нам теж час іти». І тут він від душі почав співати «Гей, гей, гей, соколи, оминайте гори, ліси, доли». Я підхопив пісню разом із ним. Поляки, що ішли поруч продовжили польською: «Dzwoń, dzwoń, dzwoń dzwoneczku, mój stepowy skowroneczku». Хтось позаду теж приєднався до хору. Це була «Гей, соколи» — українсько-польська народна пісня — під акомпанемент якої нас виносив натовп із Бастіону III, австрійської фортеці XIX століття на околиці краківського Старого міста, саме тоді, коли вже ніч переходила у ранок.<br /><br />Щоб пояснити, як я там опинився, доведеться повернутися до самого початку цієї історії.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https://heropress.com/wp-content/uploads/2026/07/krakow_castle2.webp\"><img alt=\"\" class=\"wp-image-8748\" height=\"1024\" src=\"https://heropress.com/wp-content/uploads/2026/07/krakow_castle2-894x1024.webp\" width=\"894\" /></a><figcaption class=\"wp-element-caption\">Вид на Краківський замок, фото зроблене зранку після вечірки, приблизно в той час коли “вже заспівали пташки”. Фото зроблене Володимиром Мельниченко. </figcaption></figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-миколаїв\">Миколаїв</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ця історія бере свій початок у Миколаєві – місті суднобудівельників і наречених, де я виріс. Здобув освіту у двох університетах, де навчався одночасно і почав шукати роботу під час року перерви перед продовженням навчання. Я планував знайти собі роботу, щоб заробити грошенят для продовження навчання, готуючись до вступу в один із фінських університетів. У Миколаєві було важко знайти якісь серйозні перспективи для випускника, хіба що в тебе є зв&#8217;язки, але я примудрився знайти роботу в &#8220;IT&#8221; компанії. У 2011 термін &#8220;АйТі” нічого мені не говорив, але там потрібна була англійська, яка була моїм основним предметом в університеті, тому я подумав, а чом би й ні? Робота не була важкою: треба було казати, що я “Боб” із США і допомагати клієнтам, які купували фізичні продукти, відслідковувати їх замовлення і давати інструкції, як використовувати оте, що вони поназамовляли. Мене звільнили через півтора місяці. Можливо, я щось не так робив, можливо, просто не вдався обличчям — у будь-якому випадку, що було, то загуло.  </p>\n\n\n\n<p class=\"wp-block-paragraph\"><br />На цю роботу я влаштувався самостійно, без будь-якої підтримки, перша заробітна плата була символом моєї незалежності, і перше звільнення — це був бурхливий вир емоцій. Але остання частина просто вибила землю з-під моїх ніг, гірше тільки зробили коментарі на кшталт: “це було занадто добре, щоб бути правдою”, “та ми тобі казали, що там надурять”, і “подивись на нього — він робить те та й се, ще й добре заробляє”. Дуже важко було бути вдома і відчувати себе невдахою. Але це відчуття зробило набагато більше ніж будь-яка ефемерна підтримка — воно мене загартувало і пробудило палке бажання довести, що всі помилялися щодо мене.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-templatemonster-0\">TemplateMonster</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Хоч перша робота виявилась провалом, вона дала мені чітке розуміння, що треба продовжувати шукати роботу в IT. Наступну роботу я знайшов у TemplateMonster.com — добре відому у певних колах. Вона була повною протилежністю моєму минулому досвіду. У 2012 році вони продавали шаблони для більшості популярних CMS-ок того часу: WordPress, Joomla, Drupal, і для різних рішень електронної комерції. Лише ознайомлення з роботою і навчання зайняло два місяці, що промовисто свідчить про те, наскільки серйозно компанія сприймала своїх людей — майже ніколи не звільняли, а якщо люди й ішли з роботи, то з власних причин.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><br />Моїм завданням було допомагати клієнтам із шаблонами, які вони придбали: встановлення, налаштування, редагування. Було доволі складно, але дуже цікаво — мені подобалося. Тоді я вперше познайомився із WordPress. Я працював шість ночей на тиждень, а неділі були найважчими, бо тіло звикало до активності вночі і відмовлялося спати. Хоча такий графік мене не дуже турбував. Можливість створювати будь-які сайти і кастомізувати їх саме під себе — оце було до дідька захопливо. Я багато перепрацьовував, вивчав щось нове, заколупував розробників питаннями, щоб хоч трохи вгамувати жагу до знань. Але усе закінчилося несподівано швидко: я отримав три листи про зарахування на магістратуру у Фінляндії, вибрав один університет і поїхав до Центральної Фінляндії.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-гельсінкі\">Гельсінкі</h2>\n\n\n\n<p class=\"wp-block-paragraph\">Система навчання у Фінляндії побудована зовсім по-іншому — і, на мою думку, на краще. Коли я закінчив основні курси моєї спеціальності, я почав шукати роботу. Завдання було не з легких: рік я шукав пасивно, де-не-де подаючи заявки на роботу, і ще пів року я зайнявся цим активно, відгукуючись на декілька вакансій щодня. Зрештою, доля занесла мене у Гельсінське агентство, що розробляло сайти на WordPress — цим я займаюся і сьогодні. У нас була дуже дружня команда, приблизно з десяти людей, з більшістю з них я досі дружу. Ми будували сайти дуже різного рівня складності, удень, вечорами грали в настолки, ділились історіями зі свого життя і влаштовували грандіозні вечірки.</p>\n\n\n\n<figure class=\"wp-block-image alignright size-large is-resized\"><a href=\"https://heropress.com/wp-content/uploads/2026/07/image3.webp\"><img alt=\"\" class=\"wp-image-8751\" height=\"1024\" src=\"https://heropress.com/wp-content/uploads/2026/07/image3-1024x1024.webp\" style=\"width: 400px;\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">Вранішній “Weekly” у booncon PIXELS, моєму першому агентстві у Гельсінкі. Фото зроблене Володимиром Мельниченко. </figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">З цією командою я вперше відвідав подію WordPress: WordCamp Helsinki 2017 — дводенну конференцію. Я не був вражений наповал, але вона відкрила мої очі на дещо. Коли ти працюєш у маленькому агентстві, і живеш у своїй бульбашці, а тут неочікувано відкривається цілий всесвіт. Ти бачиш іншу сторону WordPress — спільноту, людей, які рухають увесь проект вперед, людей, які стикаються з тими самими проблемами, які знаходять творчі способи ці проблеми вирішити. </p>\n\n\n\n<p class=\"wp-block-paragraph\"><br />Того першого місцевого WordCamp’у було достатньо, щоб нам захотілося рухатися далі. У 2019 році наша команда поїхала до Берліна на WordCamp Europe — це була моя перша закордонна поїздка за межі звичного для мене маршруту між Фінляндією та Україною. Ми провели кілька днів, досліджуючи місто й відвідуючи конференцію. Масштаб відчувався зовсім по-іншому: тисячі учасників і сотні волонтерів, які усе організовують. Стоячи серед цього натовпу, я зрозумів, що хочу бути частиною цього, і не просто як відвідувач.</p>\n\n\n\n<p class=\"wp-block-paragraph\">А потім почалася пандемія коронавірусу.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-порто\">Порто</h2>\n\n\n\n<figure class=\"wp-block-image alignright size-large is-resized\"><a href=\"https://heropress.com/wp-content/uploads/2026/07/image1.webp\"><img alt=\"\" class=\"wp-image-8754\" height=\"1024\" src=\"https://heropress.com/wp-content/uploads/2026/07/image1-768x1024.webp\" style=\"width: 400px;\" width=\"768\" /></a><figcaption class=\"wp-element-caption\">Я, стою на даху Super Bock Arena, де проводився WCEU 2022. Фото зроблене Олександром Місяц</figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">WordCamp Europe 2020 і 2021 років проходили онлайн, і мені здавалося, що вони втратили найголовніше — тисячі людей, зібраних в одному місці, які заряджають одне одного своєю енергією. Тож коли оголосили, що WCEU 2022 відбудеться в Порту, я почав збирати валізу. Цього разу я приєднався до команди волонтерів, щоб побачити WordCamp зсередини. І це було правильне рішення. Для українців це був непростий час — повномасштабне вторгнення вже тривало, і кожен шукав свій спосіб впоратися з новою реальністю. Для мене цей захід став джерелом сили. Я ближче познайомився з українською спільнотою, жваво дискутував зі спікерами й повернувся з відчуттям, що нарешті зрозумів, нашо той WordCamp.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Та поїздка також допомогла мені усвідомити дещо, над чим я давно розмірковував. Я завжди любив подорожувати, але існував бар&#8217;єр, який не мав стосунку ні до віз, ні до грошей — хоча й вони теж відігравали свою роль. Проблема була в тому, як виправдати саму подорож. Я виріс у культурі, де час потрібно витрачати з користю, тому подорожувати просто заради подорожі здавалося чимось, що важко пояснити. А ось робоча конференція — зовсім інша справа. Це цілком виправдана причина. Ніхто не питає, скільки задоволення ти на ній отримав. Саме так я побував у Німеччині, Португалії, Італії, Швейцарії та Польщі. Наступна — Іспанія.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Відвідувати WordCamp — це одне. Створювати подібний захід — зовсім інше.</p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-wp-suomi-0\">WP Suomi</h2>\n\n\n\n<p class=\"wp-block-paragraph\">У 2025 році я став головним організатором <a href=\"https://wpsuomi.fi/\">WP Suomi</a> — першого незалежного фінського заходу, присвяченого WordPress, що відбувся в Гельсінкі. Місяці, які передували 10 жовтня, виявилися набагато напруженішими, ніж я очікував. Бюджет, логістика, подарунки, мерч, кейтеринг, координація локації — і сотні дрібниць, які мали зійтися в потрібний момент. Пам&#8217;ятаю, як прокидався посеред ночі з думкою, що не встиг замовити щось вчасно і воно не приїде до початку події. Більшість роботи, яка стоїть за такими заходами, залишається непомітною для учасників. Вони бачать програму, їжу, афтепаті. Але не бачать тих пів року, протягом яких окремі деталі поступово складаються в єдину картину.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https://heropress.com/wp-content/uploads/2026/07/image5.webp\"><img alt=\"\" class=\"wp-image-8758\" height=\"576\" src=\"https://heropress.com/wp-content/uploads/2026/07/image5-1024x576.webp\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">Графіка WP Suomi на великому екрані у холі місця проведення. Графіка створена Сергієм Шенгрінцем</figcaption></figure>\n\n\n\n<p class=\"wp-block-paragraph\">WP Suomi відвідали близько 300 людей. Після заходу сорок учасників заповнили форму зворотного зв&#8217;язку, оцінивши його в середньому на 4,47 із 5. Але для мене важливішою була не сама оцінка, а те, що люди писали: нетворкінг, атмосфера, зустрічі зі старими друзями й нові знайомства, спільнота, яка відкрито приймає кожного. Читаючи ці відгуки, я згадав себе і те саме відчуття, яке пережив на WordCamp Helsinki 2017, — це щось нове, захопливе й сповнене можливостей.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><br />Організація WP Suomi допомогла мені значно краще зрозуміти, що стоїть за проведенням таких заходів. Після досвіду волонтера на WCEU, а згодом і головного організатора WP Suomi, я приїхав до Кракова вже з іншим поглядом — набагато краще розуміючи, через що проходять люди, які працюють поруч. Цього року я знову в команді організаторів WP Suomi, але вже в ролі координатора спікерів. Інша відповідальність, інший погляд.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https://heropress.com/wp-content/uploads/2026/07/image2.webp\"><img alt=\"\" class=\"wp-image-8760\" height=\"683\" src=\"https://heropress.com/wp-content/uploads/2026/07/image2-1024x683.webp\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">Milana Cap готова показати магію з HTML API. Вона одна із двох людей, винних у тому, що я став головним організатором WP Suomi ‘25. Фото зроблене Asanka Hettiarachchi.</figcaption></figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-краків\">Краків</h2>\n\n\n\n<p class=\"wp-block-paragraph\">За ці роки WordCamp для мене змінився. Тепер він менше про доповіді на сцені й більше про те, що відбувається між ними. Як організатор, ти все одно пропускаєш більшість виступів, адже тебе одночасно тягнуть у десять різних боків. Але справжнє життя вирує в коридорах і на вечірках після завершення основних сесій.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Особливо важливо це для української спільноти. Війна розкидала нас по всій Європі — різні країни, різні компанії, різні життя. WordCamp Europe став одним із небагатьох місць, де ми можемо знову зустрітися наживо: поділитися тим, що приніс цей рік, побачитися з людьми, яких досі знали лише онлайн, і переконатися, що наша спільнота продовжує зростати попри все. Багато хто не зміг приїхати до Кракова, на жаль дехто вже ніколи не зможе побувати на цих заходах. Для тих із нас, кому це вдалося, ці зустрічі мають особливе значення.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Саме про це ми з Данилом співали на світанку біля Bastion III, хоча ніхто з нас не сказав цього вголос. Сподіваюся, колись мені ще доведеться робити це на афтепаті в Гельсінкі та Києві — щойно це знову стане можливим.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https://heropress.com/wp-content/uploads/2026/07/image4.webp\"><img alt=\"\" class=\"wp-image-8761\" height=\"684\" src=\"https://heropress.com/wp-content/uploads/2026/07/image4-1024x684.webp\" width=\"1024\" /></a><figcaption class=\"wp-element-caption\">Українська команда на WordCamp Europe Torino 2024. Все більше і більше українців приїжджає на цей захід незважаючи на війну. Фото зроблене Максимом Кагарлицьким. </figcaption></figure>\n<p>The post <a href=\"https://heropress.com/essays/listen-the-birds-are-already-singing/\">“Listen&#8230; the birds are already singing” &#8211; “Послухай… пташки заспівали”</a> appeared first on <a href=\"https://heropress.com\">HeroPress</a>.</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 08 Jul 2026 05:00:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:21:\"Volodymyr Melnychenko\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:37;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:39:\"BuddyPress: BuddyPress 14.5, 12.7, 11.6\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:32:\"https://buddypress.org/?p=339549\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:60:\"https://buddypress.org/2026/07/buddypress-14-5-0-and-12-7-0/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:2951:\"<p class=\"wp-block-paragraph\">BuddyPress <a href=\"https://downloads.wordpress.org/plugin/buddypress.14.5.0.zip\">14.5.0</a>, <a href=\"https://downloads.wordpress.org/plugin/buddypress.12.7.0.zip\">12.7.0</a>, and <a href=\"https://downloads.wordpress.org/plugin/buddypress.11.6.0.zip\">11.6.0 </a>are now available.</p>\n\n\n\n<p class=\"wp-block-paragraph\">These are security and maintenance releases that include two security fixes, along with a number of compatibility improvements, bug fixes, and code modernization updates. We strongly recommend updating your sites as soon as possible.</p>\n\n\n\n<h2 class=\"wp-block-heading\">Highlights</h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Two security issues:\n<ul class=\"wp-block-list\">\n<li>Prevent user ID spoofing in the Messages REST API endpoint via improved validation.</li>\n\n\n\n<li>Restrict Component management to Users with the appropriate Capabilities.</li>\n</ul>\n</li>\n\n\n\n<li>Improves compatibility with WordPress 6.9, including support for block style loading optimizations and replacement of deprecated WordPress APIs where appropriate.</li>\n\n\n\n<li>Includes numerous bug fixes across BuddyPress, including BP Nouveau, Groups, Friends, Activity, Administration, and several PHP 8.x compatibility improvements.</li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\">Download</h2>\n\n\n\n<p class=\"wp-block-paragraph\">You can update automatically from your WordPress Dashboard, or download BuddyPress 14.5.0 directly:</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://wordpress.org/plugins/buddypress/\">https://wordpress.org/plugins/buddypress/</a></li>\n\n\n\n<li><a href=\"https://buddypress.org/download/\">https://buddypress.org/download/</a></li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\">For the complete list of changes included in this release, see the changelog:</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://codex.buddypress.org/releases/version-14-5-0/\">https://codex.buddypress.org/releases/version-14-5-0/</a></li>\n</ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"block-8935e1e5-ef63-42ee-8c08-67fad827159a\">Many thanks to our 14.5.0 contributors </h2>\n\n\n\n<p class=\"wp-block-paragraph\">Thanks to everyone who contributed patches, testing, reviews, bug reports, and responsible security disclosures that helped make this release possible.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Contributors include: emaralive, vapvarun, westonruter, joelkarunungan, nikunj8866, shawfactor, r-a-y, t.schwarz, dcavins, noruzzaman, rollybueno, potcus, pratiklondhe, yatesa01, bhargavbhandari90, amitraj2203, GaryJ., espellcaste, needle, and johnjamesjacoby.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Security issues were responsibly disclosed via the <a href=\"https://hackerone.com/wordpress\">WordPress Bounty Program over at HackerOne</a> and through the <a href=\"https://make.wordpress.org/plugins/\">WordPress Plugins Team.</a> If you were not properly attributed for your contribution here, leave a comment and we&#8217;ll get you added.</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 07 Jul 2026 17:57:32 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:17:\"John James Jacoby\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:38;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:37:\"Open Channels FM: Signal – Issue 16\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556589\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:40:\"https://openchannels.fm/signal-issue-16/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:172:\"Insights into the DevRel role\'s importance, explore endless API possibilities, and consider the balance of digital freedom, cost, and usability in today’s tech landscape.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 07 Jul 2026 13:04:10 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:39;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:13:\"Matt: USA 250\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:23:\"https://ma.tt/?p=153462\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:30:\"https://ma.tt/2026/07/usa-250/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:2410:\"<p class=\"wp-block-paragraph\">This auspicious 250th Independence Day, I find myself thinking of what <a href=\"https://om.co/2013/08/13/iamerican/\">Om wrote in iAMerican when he became a US citizen in 2013</a>.</p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">On a globe, America is a landmass, a country. In an immigrant’s heart it is a belief that future is almost always better. It may not be perfect and it is certainly not equal, but it still is one of a kind — the only place where an absolute stranger with a funny name and a funny accent with no friends or contacts can show up, work hard and actually get to do what he was destined to do. [&#8230;]</p>\n\n\n\n<p class=\"wp-block-paragraph\">In most places in the world, outsiders like me don’t have that chance. That simple truth is what makes America so special. A chance – to be somebody even if you are nobody. America is a state of mind and I have opted-in!</p>\n</blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">I feel lucky to have been born here, and if I hadn&#8217;t been, I think I would have gotten here as fast as I could. I&#8217;m grateful to the public schools that educated me, the <a href=\"https://ma.tt/about/#teachers\">teachers</a> who pushed me, the internet that freed my mind, and the culture of risk and innovation in technology that <a href=\"https://ma.tt/2006/04/a-little-funding/\">invested a million dollars</a> in a 21-year-old dropout kid trying to <a href=\"https://automattic.com/\">build a company</a> around (but not replacing) <a href=\"https://wordpress.org/\">an Open Source project</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s not unimaginable that these things could have happened someplace else, but it would have been a long shot.</p>\n\n\n\n<p class=\"wp-block-paragraph\">On the lighter side, <a href=\"https://www.youtube.com/watch?v=JYqfVE-fykk\">SNL&#8217;s Washington&#8217;s Dream skit is one of their best ever</a>, <a href=\"https://www.youtube.com/watch?v=Q3RjZY-rSsc\">Google has a pretty funny commercial reimagining the Declaration being written</a>, and <a href=\"https://www.youtube.com/watch?v=ezs9h7Td8Zg\">another famous Matthew (McConaughey) gives a great 2-minute speech</a>. &#8220;We need skeptics. Yes, we do. We do not need cynics. One cares enough to question, which we should, and the other one&#8217;s already quit.&#8221;</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sun, 05 Jul 2026 06:59:52 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:4:\"Matt\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:40;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:61:\"Open Channels FM: Open Source as Foundation, Not Final Answer\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556361\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:67:\"https://openchannels.fm/open-source-as-foundation-not-final-answer/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:175:\"In ecommerce, it’s not just about the tech but how it helps merchants grow. Open source can offer control and adaptability, especially with platforms like Woo and WordPress.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 02 Jul 2026 09:59:53 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:41;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:120:\"WPTavern: #223 – Ivana Ćirković on How WordPress Credits Bridges Education and Industry in the WordPress Ecosystem\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:48:\"https://wptavern.com/?post_type=podcast&p=206102\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:130:\"https://wptavern.com/podcast/223-ivana-cirkovic-on-how-wordpress-credits-bridges-education-and-industry-in-the-wordpress-ecosystem\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:38278:\"<details>Transcript<div>\n<p class=\"wp-block-paragraph\">[00:00:19] <strong>Nathan Wrigley:</strong> Welcome to the Jukebox Podcast from WP Tavern. My name is Nathan Wrigley.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Jukebox is a podcast which is dedicated to all things WordPress, the people, the events, the plugins, the blocks, the themes, and in this case how WordPress Credits bridges education and industry in the WordPress ecosystem.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;d like to subscribe to the podcast, you can do that by searching for WP Tavern in your podcast player of choice, or by going to wptavern.com/feed/podcast, and you can copy that URL into most podcast players.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you have a topic that you&#8217;d like us to feature on the podcast, I&#8217;m keen to hear from you and hopefully get you, or your idea, featured on the show. Head to wptavern.com/contact/jukebox and use the form there.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So on the podcast today we have Ivana Ćirković. Ivana is a digital marketer with 18 years of experience working both in and out of the tech industry, and currently leads marketing at WPBakery. She&#8217;s an active participant in WordPress events, having attended, and spoken at, numerous local and international word camps over the years.</p>\n\n\n\n<p class=\"wp-block-paragraph\">In this episode, our focus is on the WordPress Credits initiative. We learn how this program, launched by the WordPress Foundation, connects students with real world opportunities to contribute to the WordPress ecosystem, earn certifications, and increase their competitiveness in the job market.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Ivana discusses her own experience as a WP Credits mentor, working with students as they learn about digital marketing, remote work, and other open source contributions. We explore, how universities can modernise their curriculums, and real world value for students by participating in the initiative, and how businesses can get involved, not just to support the community, but to help shape and discover future talent.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The program&#8217;s evolving structure also gets attention, and we learn how students are guided through hands-on activities such as translation or documentation, and how their progress is tracked publicly via profiles on wordpress.org. Ivana shares the opportunities and challenges for both educators and businesses with thoughts on accountability, mentorship, and the need to bring new faces into the WordPress community.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;re interested in the future of WordPress, education, or bridging the gap between academia and industry, this episode is for you.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;d like to find out more, you can find all of the links in the show notes by heading to wptavern.com/podcast, where you&#8217;ll find all the other episodes as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And so without further delay, I bring you Ivana Ćirković.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I am joined on the podcast by Ivana Ćirković. Did I get that right?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:14] <strong>Ivana Ćirković:</strong> Yes. Excellent.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:16] <strong>Nathan Wrigley:</strong> Thank you. This is my first interview at WordCamp Europe 2026. I&#8217;m guessing because we&#8217;re on the first day of the event and it&#8217;s quite early in the morning, it&#8217;s 10 in the morning, I&#8217;m guessing you cannot have done your presentation yet?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:30] <strong>Ivana Ćirković:</strong> Not yet. Tomorrow.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:32] <strong>Nathan Wrigley:</strong> Do you get nervous with these kind of things?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:34] <strong>Ivana Ćirković:</strong> I get nervous all the time. I&#8217;ve been doing this for 12 years, it never gets easier. It is what it is.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:39] <strong>Nathan Wrigley:</strong> Well, the presentation that you are doing is going to be the focus of what we&#8217;re talking about today. So do you just want to tell us a little bit about the topic that you&#8217;re talking about, but also just give us a bit of a general bio about who you are and what you do. So just tell us about you and about your presentation basically.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:03:56] <strong>Ivana Ćirković:</strong> Okay. First thing first, I would like to introduce my presentation, or the talk, that is build up around WordPress Credits initiative, which is something that WordPress has rolled out late last year in December. And I applied to be a mentor to support students into their entering into WordPress. Got accepted, did my courses, passed them and started working with students on their, first entering the WordPress society, how everything works, contributing.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And out of all of this, I came up with the idea of sharing the story about WordPress Credits. What it is, why it is important, not just for the WordPress community, but also for universities all around the world for businesses to support, because there is an angle and huge opportunity for them too. And hopefully inspire people to join and become part of it more.</p>\n\n\n\n<p class=\"wp-block-paragraph\">As far as I&#8217;m concerned, my name is  Ivana Ćirković and I am a digital marketer for 18 years. I&#8217;ve been working inside tech organisations, tech industry, but also outside of it. So I&#8217;m the multiverse. And lately, for past couple of years, I&#8217;ve been working in WPBakery, in marketing their product, and talking to people, sharing knowledge of what we do, how we do it, and so on. In the meantime I am attending many, many WordCamps, local and international ones, giving lectures, giving talks about digital marketing and all things related.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:05:39] <strong>Nathan Wrigley:</strong> So are you here at this event, not just to give your presentation, are you also here on behalf of WPBakery to represent them and the products that they have as well?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:05:47] <strong>Ivana Ćirković:</strong> Yes, we are sponsors. I am speaker, I was table lead for marketing on Contributors Day. So we are wide into the ecosystem.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:05:56] <strong>Nathan Wrigley:</strong> I have to say, having only been in this event space for about an hour, I&#8217;m actually deeply impressed by this particular event. It really is a gigantic venue. It&#8217;s so pleasurable as well to see the WordPress community in such large numbers here. And so we&#8217;re looking forward to a really good event.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Okay, let&#8217;s kick off with the topic at hand then. So it occurs to me that many people listening, whilst they&#8217;re using WordPress and they&#8217;re kind of, I don&#8217;t know, they&#8217;re building websites for people, and they&#8217;ve got products and plugins and they&#8217;re just general users. It may be that the community piece, and the educational piece, is nothing that they&#8217;ve heard of before. So would you just tell us a little bit about what WP Credits is as far as you&#8217;re concerned, just to give us that broad background of what it is?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:06:40] <strong>Ivana Ćirković:</strong> Okay. So WP Credits program is initially made to bring new young people into the WordPress, to broaden the ecosystem with the new fresh blood, new contributors. And to do so, WordPress Foundation initiated this program to connect with universities all across the world. To connect students to some programs, to learn about WordPress through contribution. For that, they will get graded and get certification, which in the end will help them be more marketable, and have more modern knowledge of what is needed in today&#8217;s job market, and to be more competitive and more appealing to potential employers.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So by doing so, WordPress Credits aims to broaden the ecosystem, to strengthen the WordPress community, and WordPress itself. But also to put new generations in more marketable place, and to help them get more profitable jobs.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:07:45] <strong>Nathan Wrigley:</strong> Thank you. That was a really nice summary. In terms of your personal commitment to it and what have you, how did you fall into it as a thing that you were doing? And is this something that you get sponsored for from WPBakery, or is it personal and simply a sort of philanthropic thing that you are doing on the side?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:08:01] <strong>Ivana Ćirković:</strong> Yeah, so basically, I&#8217;ve been doing education my whole professional life. So it&#8217;s something that comes natural to me. In my local country, in Serbia, I do informal education for high schoolers and primary school&#8217;s children about digital marketing, digital literacy. This is like very natural to me. I&#8217;m being sponsored by WPBakery to do so.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And the program works like, initiative needs people, needs more mentors to get involved. More than it needs like product and businesses to support with their products. So if there are businesses who are maybe interested in support through their product, know that you need to put your people first to actually get involved and contribute, and then you can offer products as the side piece, so to say.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:08:52] <strong>Nathan Wrigley:</strong> So yeah, it seems that you&#8217;ve got a lifelong interest in education as well. Okay, that gives me some sort of hook there.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Okay, if I was to say WP Credits to the people outside, the people who already knew about it, I think would probably peg it as entirely educational in nature, just an education initiative. But curiously, your presentation, the notes that went with that and the blurb that went on the WordCamp Europe website, you kind of make the point that it&#8217;s much bigger than that, and you get into businesses and the students themselves and universities.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So the students in universities bit, well, that&#8217;s the education piece. But the business bit, what&#8217;s going on there? Because I definitely hadn&#8217;t drawn that intuition. I thought education from top to bottom. But business, okay, where does that fit in?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:09:37] <strong>Ivana Ćirković:</strong> I will get the hot insights from the talk. So basically, there is more than what meets the eye, so to speak. Businesses have unique opportunity to shape people they want to employ by getting involved as mentors. They also get the chance to see firsthand how those young minds work in real environments, in real contribution. And they get the chance to pick and choose who they want to employ by seeing them work on some real things. Whether it&#8217;s documentation, whether it&#8217;s translation or programming, developing something, AI.</p>\n\n\n\n<p class=\"wp-block-paragraph\">We need more people who know what they do, although they are young. By having students in this program, they are working on not fictional things, but actual things that really contribute to community and businesses as a whole. By supporting this initiative, businesses then in relations to that can get more insights into who they want to employ. So on top of that, they are building the better market for themselves as well.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:10:42] <strong>Nathan Wrigley:</strong> I guess the student university piece is fairly obvious. You know, WP Credits and the people working on that project communicate with universities, they&#8217;re probably easy to find. You know, if you go to a phone directory for example, they&#8217;ll all be there. And it&#8217;s an easy thing to do. You phone up the university and see if there&#8217;s interest. And I know that some universities have taken up the WP Credits program. And it seems to be, as far as I can work out, it seems to be working very successfully.</p>\n\n\n\n<p class=\"wp-block-paragraph\">How are you going to make the connection with businesses? Because that seems like a much more scattered, I don&#8217;t know if you&#8217;re going to be working with big businesses, you know, huge companies or if it&#8217;s going to be kind of more the businesses on the street, the smaller businesses, that kind of thing. So, I&#8217;ll just sort of hand it over at that point.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:11:23] <strong>Ivana Ćirković:</strong> So basically, web agencies, businesses around WordPress, we know they have an issue with new employees onboarding last, let&#8217;s say three to six months. That cost time and money and other people who are teaching them what needs to be done and how.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Then we have WordPress Credit students who are already doing that junior type of work within contribution. They&#8217;re already onboarded through using Slack, knowing how to do remote work, what needs to be done. So businesses supporting WordPress Credits initiative can choose those students and spend less time and money and energy in onboarding them because they already went through that by doing WordPress Credits program.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:12:10] <strong>Nathan Wrigley:</strong> Yeah, I guess if you are a small web agency, it&#8217;s highly likely that you won&#8217;t necessarily have an induction program finely tuned, so that the young people that are coming through have this sort of specialised system where they can get some accreditation. It&#8217;s probably more, okay, I&#8217;m going to assign you to John this week and then next week you&#8217;re going to go over to Susan and follow what they&#8217;re doing.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So is there a sort of structured program that, let&#8217;s say a web agency based in London could drop into and receive documentation about? Where are we at with that whole process for the busineses?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:12:44] <strong>Ivana Ćirković:</strong> Yeah, so since this initiative is still fairly new and we already have just one generation of students that are passed the program, this is something in development. So at the moment, we still don&#8217;t have like a specific structure that is based just for agencies and businesses in general, but it is something that we are considering and working towards too. So definitely.</p>\n\n\n\n<p class=\"wp-block-paragraph\">On the other hand, the upper management organisational team might not be aware to the fullest what am I about to talk. So it might come as a surprise to them, but also it is something in the works as well. So give us some time and we will come up with something.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:13:26] <strong>Nathan Wrigley:</strong> Yeah, it feels like that would be something really credible. Because if you&#8217;re a small business owner, the last thing you want to be doing is kind of wasting time. And onboarding somebody might be something that you&#8217;d have to divert weeks into, you know, syphoning employees off, writing documentation, SOPs, those kind of things. And if you could just pick something up off the shelf that was tried and tested over many years, that would actually be really handy. So good luck. I hope that that initiative comes off.</p>\n\n\n\n<p class=\"wp-block-paragraph\">In terms of students, if you were a student, let&#8217;s say you are at a university, or you are looking for work, what would you say would be some of the top line items that you would mention as to why WP Credits is worth looking at? Because, you know, if I&#8217;m at a university, there&#8217;s probably a thousand different things that I could be doing. WP Credits would be in competition with all of those. Why do you think it&#8217;s something that young people should be taking care of to look at?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:14:17] <strong>Ivana Ćirković:</strong> Yeah, I would think differently, in that sense. Universities curriculums are outdated comparing to the industry that we are living and working in. So WordPress Credits gives something that is in trend. That is happening now that people are using and working now. So students who choose to go to this program are gaining the most efficient and not outdated curriculum, and things that are being worked on in this moment.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And this is bigger than WordPress. It is initially for WordPress, but the knowledge students get, nobody can take that away. They learn to be outspoken. They learn to use all the necessary remote work tools that is applicable in all the industry.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So we are really encouraging them to be very marketable employees and people who have portfolios, whether they choose that category that brings them portfolio. That is very transparent throughout whatever they do. Because on wordpress.org, every contribution is noted. So they&#8217;re building their own business brand by doing WordPress Credits. And in that way they are more marketable and can get more business opportunities.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:15:42] <strong>Nathan Wrigley:</strong> I didn&#8217;t realise that the wordpress.org profile, is it the profile that you mean?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:15:47] <strong>Ivana Ćirković:</strong> Yes.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:15:47] <strong>Nathan Wrigley:</strong> Each time you participate in one of these credit programs, that will be a badge, for want of a better word, that you can display and it will be freely available for the public. And presumably that will be difficult to acquire. That&#8217;s the wrong word. What I mean is, it won&#8217;t be simple to acquire. You will genuinely have had to.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:16:07] <strong>Ivana Ćirković:</strong> Yes, you need to do the work. Let&#8217;s say students are interested in translation. So they go to Polyglots team and they get assigned to a mentor who is on weekly basis working with them on onboarding, helping them how to navigate through wordpress.org website, translation, what needs to be done. And basically, for that student, they need to translate to have approved translation, 150 strings approved.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So that doesn&#8217;t mean, okay, I will translate 150 words. No, no. You might need to translate 500 words out of which 150 is approved. And this is the bare minimum you need to do in order to get that badge that you contributed. Because that contribution, each contribution needs to be something very specific and tailored to help other people. That is very open and helpful.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:17:00] <strong>Nathan Wrigley:</strong> So you mentioned translations there, which obviously is just one of multiple things that you could do, and we could list them all out, but we won&#8217;t. How is that curriculum, I&#8217;m doing air quotes, how is that curriculum decided upon? In other words, how do you decide, okay, I&#8217;m going to do a bit of translation, I&#8217;m going to do a bit of work on Core, I&#8217;m going to work for the Plugin Review Team? How is that decided? And, how is it decided by the institution, I guess that that&#8217;s going to equal something which our university will stamp as part of your degree, let&#8217;s say?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:17:33] <strong>Ivana Ćirković:</strong> Yeah. So basically, that is all arranged between the foundation and universities. You won&#8217;t get IT students doing marketing if that&#8217;s not their preferable choice. So students opt in. They&#8217;re given the whole like curriculum, categories of things they can contribute to. And the one they choose, this is the one they stick to throughout all the programs.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So you cannot switch in between like translation and documentation, or plugins, or WP-CLI whatever. The whole program stick to one chosen category. And that is all aligned with the, let&#8217;s say, topic of university. So IT is preferable for IT related contributions. Communications are also more favourable towards translation community, marketing. So it&#8217;s aligned that way.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:18:23] <strong>Nathan Wrigley:</strong> So flipping that round, so we&#8217;ve been talking about it from the point of view of the students. Now let&#8217;s just flip it around to the point of view of the university. I guess the same thing applies. They would have to communicate with the Foundation and say, okay, these are the kind of things that we wish our students to do. These particular strands, we will, you know, if they do 500 translation strings, that will count as something. I guess there&#8217;s got to be some interface between the Foundation and each university to establish what a credit equals.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:18:50] <strong>Ivana Ćirković:</strong> Yeah, common ground as to how WordPress Credits adds to the official curriculum of the university. And the thing that university get out of it, they are in position to offer modern, in trend, teachings, and that makes them more appealing to next generation of students. Because the more their existing students who are in the WordPress Credits program are succeeding, the more desirable the university gets to newer generations because they don&#8217;t teach outdated curriculums. They&#8217;re aligning to what is now efficient and needed in the job market.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:19:30] <strong>Nathan Wrigley:</strong> I suppose also as well, when I was at university, there was a choice of about, I don&#8217;t know, four things to do each year. Something like that. You could do this or this or this. And you had to pick one of them and that was your pathway. This feels much more wide open because knowing the WordPress ecosystem, I know that there&#8217;s dozens, maybe multiple dozens of different things that you could be involved in.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So that&#8217;s quite appealing as well, isn&#8217;t it? You know, you can just take a little nibble of this one thing, and another nibble of this. And so there&#8217;s potentially multiple dozens of different pathways that you could pick. And whilst you say that, once you&#8217;ve decided you&#8217;ve got to stick to that, well, that&#8217;s fair enough, but the fact that you&#8217;ve got so many different ways that you could choose. That to me as a university student would&#8217;ve been really appealing. The fact that there&#8217;s so many different things that you could do.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:15] <strong>Ivana Ćirković:</strong> Yeah. And once they got in, the overall input that we get from students that, first they don&#8217;t know that something like this exists. And once they go deep and start work, it&#8217;s like, wow. The whole mind just shifts, and they are amazed by all the possibilities that they can do within WordPress that isn&#8217;t talked about.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:36] <strong>Nathan Wrigley:</strong> Yeah. And I presume they get to do it in the way that the WordPress community works, which is remotely distributed and when you wish to do it. So long as I, you make the end of the university period of whatever a semester is or something, so long as you make the deadline, you can do it at night or in the early morning or.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:20:57] <strong>Ivana Ćirković:</strong> Exactly. So they are training to be like workers as we all are today, that are not restrained with some deadlines or by official university rules. They&#8217;re accountable for the final output. How will they come to that output? It&#8217;s entirely up to them because, yes, they are young but they&#8217;re not so young that they cannot be held accountable for their actions. So they need to do the work. We got weekly mentorships and assessments. So it&#8217;s a fun ride.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:21:31] <strong>Nathan Wrigley:</strong> So just touching on that, the sort of ongoing support that every student needs, because with the best rule in the world, there&#8217;s a proportion of students who will leave everything to the last minute. I&#8217;m looking at myself in the mirror when I say that. So that ongoing support, it&#8217;s a weekly sort of huddle. And is that like a one-to-one thing or is it a one to many thing?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:21:50] <strong>Ivana Ćirković:</strong> Yeah, so depending on the number of students, if a mentor has a one or two students, it can be one-to-one. If there are more like five or six, it&#8217;s better to have a group meeting on a weekly basis, and then Slack chats in between if anything is more needed than that.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So basically we go through what they did last week, are there any setbacks or they need additional help, or do they need information from other parts of the team? Are they interested in something else? So we are really trying to get them involved in a way that matters to them.</p>\n\n\n\n<p class=\"wp-block-paragraph\">One of the things that each student needs to do, no matter section they chose, is to create a blog and to have weekly blog posts. So we discuss about that. What interests them. Whether they want to be something personal like, or professional like. So it&#8217;s very interesting to see how they think and how they express themself and how they build their online persona.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:22:55] <strong>Nathan Wrigley:</strong> Do those huddles take place on a, let&#8217;s say university by university basis? So for example, when you join and you mentor students, are they from the entire WP Campus project, or are you doing it from the university of this town and the university of that town?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:23:13] <strong>Ivana Ćirković:</strong> No, it&#8217;s mixed and matched.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:23:14] <strong>Nathan Wrigley:</strong> So, okay, well that&#8217;s a real strength as well it feels, because presumably then you&#8217;re on a call with people potentially from all over the world. Certainly people that you may not have encountered before. And those sort of serendipitous chance encounters can sometimes be some of the more meaningful ones. You know, work comes out of those things, and meetups come out of those things, and unexpected things come out of those things. So that must be really nice as well, watching those kind of things happen.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:23:42] <strong>Ivana Ćirković:</strong> Yeah, it&#8217;s like nothing I experienced before. And just to have the privilege to talk and work with those people, you never know what can come up out of them, and out of our connections. And I get inspired every time we have chats and they make me want to be a better educator.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:24:03] <strong>Nathan Wrigley:</strong> Oh, that&#8217;s interesting.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:24:04] <strong>Ivana Ćirković:</strong> So, yeah, that&#8217;s my take out of all this.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:24:06] <strong>Nathan Wrigley:</strong> Yeah. Okay, so there&#8217;s actually some psychological benefit for you as well. You get a real nice feeling of it. Okay, that&#8217;s really good.</p>\n\n\n\n<p class=\"wp-block-paragraph\">So with the best will in the world, a university, every year there&#8217;s a cohort of children, young adults, whatever it may be, whichever institution it is, and a proportion of them will work diligently and hard and they will succeed. And some others maybe not so much.</p>\n\n\n\n<p class=\"wp-block-paragraph\">How does that work? How do you ensure that everybody gets through it? And I don&#8217;t know if there&#8217;s enough data to answer this question. Again, I&#8217;m doing air quotes, how is the pass rate? Do most people that embark on this get through the necessary things? Or is there a fair bit of, I don&#8217;t know, discipline, for want of a better word, that needs to be applied and cajoling people to get through it?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:24:46] <strong>Ivana Ćirković:</strong> Yeah, so I touched base on the accountability. So we have not strict rules, but recommendations. Weekly mentor chats, async communication through Slack. They all have weekly tasks that needed to be done. So if a student don&#8217;t answer the message or come to weekly mentor call three times, they are no longer WordPress Credit students. And that is the accountability.</p>\n\n\n\n<p class=\"wp-block-paragraph\">You need to show yourself that you are willing to do the work. So if you don&#8217;t care, we won&#8217;t force you to do that if you don&#8217;t want to. We will set reminders, we will call back, we will reach out. But if you are no show, no tell anything for three times, then evidently you are not for that. You don&#8217;t wish to be there, and we won&#8217;t force you to be there.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:40] <strong>Nathan Wrigley:</strong> And then in some way, are you required then to report that back to the institution and sort of say, okay, we&#8217;ve reached the end of the road here, and then it&#8217;s for them to figure out how that impacts. And presumably the students can.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:53] <strong>Ivana Ćirković:</strong> Their grades, yeah.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:25:53] <strong>Nathan Wrigley:</strong> Yeah, their grades what have you, okay. Touching back on the sort of business side, because we&#8217;ve dwelled a lot with students and universities and we&#8217;re going to stay with students, because that&#8217;s really the underpinning of the whole thing. How has the business side of things, is it taking off? You were describing that it&#8217;s kind of like a new thing. Have you got any sort of success stories or anecdotal evidence that people do in fact want this?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:15] <strong>Ivana Ćirković:</strong> Yeah, so it&#8217;s still fairly new, so we don&#8217;t have those anecdotes yet. One of the reasons why I&#8217;m here at the WordCamp Europe is to find out and to get new perspective from businesses to like reach out to them to see what they think about the program. Would they want to be evolved. And how to give tips, maybe how we can improve. So stay tuned for more.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:38] <strong>Nathan Wrigley:</strong> Yeah. And it is interesting, when you walk around an event like this, I don&#8217;t have the exact numbers, but the demographic is definitely skewing older. There&#8217;s not so many 18 year olds. And if this community wishes to carry on, at some point the age demographic will get to retirement age.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:26:57] <strong>Ivana Ćirković:</strong> Yeah. Just last night we were talking. I&#8217;ve been in the community for 11 years. And for 11 years all the same faces are here. And we really need new faces. But to get new faces, WordPress Credits is one part of the solution. But then again, we need to meet young people where they are. And they are not on the conferences, they are not on websites, they don&#8217;t use websites, they don&#8217;t care about websites. They are on very specific social media channels. And if we want to get fresh, new, young blood, we need to go there and to present what we do in a way that matters to those kids.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:27:35] <strong>Nathan Wrigley:</strong> In terms of success, if you were to, I don&#8217;t know, let&#8217;s imagine that we could cast our minds forwards five years, let&#8217;s go for that. What would you like to have happened with WP Credits? Would you like, for example, to see a bunch of 20 somethings wandering around in an event like this? Does it matter that they&#8217;re involved in the community and doing WordPress events and contributing to Core and those kind of things? Or is success just more broadly, people are using WordPress? You know, it&#8217;s still a project. What&#8217;s your take on, what does success look like in five years?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:28:08] <strong>Ivana Ćirković:</strong> For me, I would like to see more young people involved. Yes, we will always have users because in its core, WordPress is a very useful tool. And I&#8217;m happy to stumble upon that tool many, many years ago to use it both personally and professionally. But I really want to see young people involved in a way that we were involved 10, 15 years ago, and to see what can happen with WordPress.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I strongly believe it&#8217;ll be transformed, not with AI or all other flashy trends. WordPress has always been about people. And we need new people, we need young people to get it where it needs to be.</p>\n\n\n\n<p class=\"wp-block-paragraph\">We are getting older and don&#8217;t have strengths or stamina to do so for how many long years. By having new kids, fresh perspectives, I&#8217;m really excited to see what they can come up with next.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:29:08] <strong>Nathan Wrigley:</strong> Yeah, it&#8217;s kind of handing over the baton in a way, isn&#8217;t it? Seeing what the future holds. Yeah, I definitely have concerns that the age demographic is skewing. And no matter what has happened in the past, I don&#8217;t see it being backfilled with younger people moment.</p>\n\n\n\n<p class=\"wp-block-paragraph\">But I think that&#8217;s largely because we just assumed that that age demographic would fill itself, because we were excited about it, so the younger generation will be excited about it. Well it turns out the world moved on. And TikTok came along, and YouTube became a massive thing and mobile phones and all the different platforms became a thing. And so the attention was put elsewhere by many young people.</p>\n\n\n\n<p class=\"wp-block-paragraph\">And so I suppose we needed to come up with a system where we are, in a sense, just putting it in front of their face and saying, look, it&#8217;s here. You know, you&#8217;re a university student, you are somebody looking for work in a small business. Here&#8217;s a credible way of getting involved in something which potentially could change your life. That seems like the most credible way of doing it at the moment. And I guess we&#8217;ll just have to see what the next five years brings.</p>\n\n\n\n<p class=\"wp-block-paragraph\">In which case, is there anything that you felt you wanted to touch on that you wanted to get out of this chat before we finished?</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:30:15] <strong>Ivana Ćirković:</strong> No, I think you did it masterfully. And we touched base on everything that needed to be said.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:30:20] <strong>Nathan Wrigley:</strong> Perfect. In that case, I will say Ivana, thank you for chatting to me today. Fingers crossed that your presentation goes well tomorrow, and that you pack the place out, and that by this time next week, you are extremely busy with the WP Credits program. Thanks for chatting to me.</p>\n\n\n\n<p class=\"wp-block-paragraph\">[00:30:34] <strong>Ivana Ćirković:</strong> Thank you. Thank you for inviting me.</p>\n</div></details>\n\n\n\n<p class=\"wp-block-paragraph\">So on the podcast today we have Ivana Ćirković.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Ivana is a digital marketer with 18 years of experience working both in and out of the tech industry, and currently leads marketing at WPBakery. She’s an active participant in WordPress events, having attended and spoken at numerous local and international WordCamps over the years.</p>\n\n\n\n<p class=\"wp-block-paragraph\">In this episode, our focus is on the WordPress Credits initiative. We learn how this program, launched by the WordPress Foundation, connects students with real-world opportunities to contribute to the WordPress ecosystem, earn certifications, and increase their competitiveness on the job market.</p>\n\n\n\n<p class=\"wp-block-paragraph\">Ivana discusses her own experience as a WP Credits mentor, working with students as they learn about digital marketing, remote work, and open source contributions. We explore how universities can modernise their curriculums and add real-world value for students by participating in the initiative, and how businesses can get involved, not just to support the community, but to help shape and discover future talent.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The program’s evolving structure also gets attention, and we learn how students are guided through hands-on activities such as translation or documentation, and how their progress is tracked publicly via profiles on WordPress.org. Ivana shares the opportunities and challenges for both educators and businesses, with thoughts on accountability, mentorship, and the need to bring new faces into the WordPress community.</p>\n\n\n\n<p class=\"wp-block-paragraph\">If you’re interested in the future of WordPress, education, or bridging the gap between academia and industry, this episode is for you.</p>\n\n\n\n<h2 class=\"wp-block-heading\">Useful links</h2>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://learn.wordpress.org/course/wordpress-credits/\">WordPress Credits</a></p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://wpbakery.com\">WPBakery</a></p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https://europe.wordcamp.org/2026/session/what-it-really-means-to-be-a-part-of-the-wp-credits-program/\">What it (really) means to be a part of the WP Credits program?</a></p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 01 Jul 2026 14:00:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:14:\"Nathan Wrigley\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:42;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:37:\"Open Channels FM: Signal – Issue 15\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556251\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:40:\"https://openchannels.fm/signal-issue-15/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:140:\"Insights on community support, decision-making, starting new projects, and the importance of agency reputation in hosting. Engage and share!\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 01 Jul 2026 13:11:31 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:43;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:64:\"Aaron D. Campbell: Open Source Support Can’t Depend on Charity\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://aarondcampbell.com/?p=2933\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:78:\"https://aarondcampbell.com/2026/06/open-source-support-cant-depend-on-charity/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:470:\"<p>Companies depend on open source software. Supporting the projects that support your business shouldn\'t be treated as charity; it should be part of sustaining the infrastructure, ecosystem, and user trust your products rely on.</p>\n<p>The post <a href=\"https://aarondcampbell.com/2026/06/open-source-support-cant-depend-on-charity/\">Open Source Support Can&#8217;t Depend on Charity</a> appeared first on <a href=\"https://aarondcampbell.com\">Aaron D. Campbell</a>.</p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 30 Jun 2026 13:19:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:17:\"Aaron D. Campbell\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:44;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:63:\"Open Channels FM: Thoughts on the Human Side of AI Acceleration\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2555792\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:70:\"https://openchannels.fm/thoughts-on-the-human-side-of-ai-acceleration/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:155:\"AI is evolving super fast, boosting productivity but also causing burnout and a loss of human touch. We need to balance tech with authentic human insights.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 30 Jun 2026 11:06:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:45;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:81:\"Open Channels FM: Aligning WooCommerce Marketing Strategies for Community Success\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2556016\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:88:\"https://openchannels.fm/aligning-woocommerce-marketing-strategies-for-community-success/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:185:\"In this episode we’re chatting about a topic that matters to everyone in the WooCommerce world and beyond: how OSS communities can come together to market themselves more effectively.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 30 Jun 2026 09:08:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:46;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:50:\"WordPress.org blog: The First AI Leaders Graduates\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"https://wordpress.org/news/?p=20951\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:56:\"https://wordpress.org/news/2026/06/ai-leaders-graduates/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:4846:\"<p class=\"wp-block-paragraph\">On June 23, around 40 students from the University of Illinois Chicago (UIC), Louisiana Tech University, and the University of Louisiana at Lafayette were celebrated in Chicago as the first cohort to receive the AI Leaders Micro-Credential through <a href=\"https://ai-leaders.org/\">AI Leaders</a>, the nation&#8217;s first workforce-focused AI literacy course tied to a recognized credential. Each of them earned it by building real projects, applying generative AI to genuine work, and contributing to the open source software that powers more than 40% of the web. Students who completed the course also earned $1,000, made possible by a donation from Automattic and UIC. This celebration was the moment the program had been building toward since it was <a href=\"https://wordpress.org/news/2026/02/ai-leaders-credential/\">first announced in February</a>.</p>\n\n\n\n<div class=\"wp-block-group has-background is-layout-constrained wp-container-core-group-is-layout-2431c55b wp-block-group-is-layout-constrained\">\n<p class=\"has-text-align-center has-white-color has-text-color has-link-color has-normal-font-size wp-elements-2 wp-block-paragraph\"><strong>Explore the project portfolios built by this year’s AI Leaders</strong></p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https://aileaderswp.blog/\"><img alt=\"\" class=\"wp-image-20975\" src=\"https://i0.wp.com/wordpress.org/news/files/2026/06/aileaderswpblog-scaled.png?ssl=1\" /></a></figure>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-3e41869c wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-text-align-center wp-element-button\" href=\"https://aileaderswp.blog/\"><strong>AI Leaders · Class of 2026</strong></a></div>\n</div>\n</div>\n\n\n\n<p class=\"wp-block-paragraph\">When the pilot launched, the goal was to test whether open source learning could connect directly to job pathways rather than stopping at a certificate. What makes this program distinct is that it is built on open source from the ground up: students learn on WordPress, contribute to it, and use generative AI the way the WordPress ecosystem uses it every day, leaving with a credential that employers can verify and a community that continues long after the course ends.</p>\n\n\n\n<p class=\"wp-block-paragraph\">The pilot reflects a shared belief that AI and open source skills should be within reach regardless of where someone lives or what they can afford.</p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">WordPress was built to expand access to publishing and participation on the open web.</p>\n</blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">The program is a collaboration with distinct roles for each partner. It is funded through the <a href=\"https://osf.it.uic.edu/\">UIC Tech Solutions Open Source Fund</a>, with support from the <a href=\"https://www.uic.edu/\">University of Illinois Chicago</a> and <a href=\"https://automattic.com/?p=867048\">Automattic</a>, while the WordPress project and the <a href=\"https://wordpressfoundation.org/\">WordPress Foundation</a> contribute to the development of the curriculum itself.</p>\n\n\n\n<h2 class=\"wp-block-heading\">What Comes Next</h2>\n\n\n\n<p class=\"wp-block-paragraph\">The first cohort was just the beginning. The gathering in Chicago brought this group together with employers and agencies, and further job placements are already in motion. </p>\n\n\n\n<div class=\"wp-block-group has-off-white-2-background-color has-background is-layout-constrained wp-container-core-group-is-layout-2431c55b wp-block-group-is-layout-constrained\">\n<p class=\"has-text-align-center wp-block-paragraph\">The next round of AI Leaders is on the horizon. Subscribe for updates to be the first to hear when the next cohort opens and how to take part.</p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-3e41869c wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https://ai-leaders.org/#apply\"><strong>Subscribe for AI Leaders Updates</strong></a></div>\n</div>\n</div>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-dark-strokes-grey-color has-alpha-channel-opacity has-dark-strokes-grey-background-color has-background\" />\n\n\n\n<p class=\"wp-block-paragraph\"><em>WordPress offers a wide range of educational opportunities for people at every stage, from first steps to advanced contribution. Explore workshops, lesson plans, and community-created resources designed to help you build practical skills while connecting with others who are learning and contributing at <a href=\"https://wordpress.org/education/\">WordPress.org/education/</a>.</em></p>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Mon, 29 Jun 2026 20:29:26 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Mary Hubbard\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:47;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:85:\"Open Channels FM: Six Months In: What Open Channels FM Has Been Talking About in 2026\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2555969\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:91:\"https://openchannels.fm/six-months-in-what-open-channels-fm-has-been-talking-about-in-2026/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:197:\"In the first half of 2026, conversations on AI\'s impact, WordPress 7.0 launch, and the importance of the open web emerged. Key themes included rethinking work, community, and embracing uncertainty.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Mon, 29 Jun 2026 07:31:58 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:48;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:14:\"Matt: Om Links\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:23:\"https://ma.tt/?p=153359\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"https://ma.tt/2026/06/om-links/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:6357:\"<p class=\"wp-block-paragraph\">There has been a lot of excitement about the OmFest idea. If you&#8217;d like to attend or contribute, <a href=\"https://docs.google.com/forms/d/e/1FAIpQLScyY9c5MowPFW6BmIitqaaF3T-ykM_d8eD2pq2XqwSt7N50zg/viewform?usp=header\" rel=\"noopener\" target=\"_blank\">please fill out this form as soon as possible</a> so we can gauge the type of venue we need.</p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Update: <a href=\"https://thankyouom.com/\">ThankYouOm.com from Michael Galpert pulls together all the tweets, Instagram posts, and blog posts into a beautiful site</a>.</strong></p>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s truly a testament to how Om lived life to see the outpouring of remembrances <a href=\"https://om.co/2026/06/24/1966-2026/\">in comments on the post</a> and <a href=\"https://www.techmeme.com/260625/p50#a260625p50\">around the web on Techmeme</a>.</p>\n\n\n\n<p class=\"wp-block-paragraph\">I do wish he had been more public earlier in his health journey. You never know what you&#8217;ll learn. I&#8217;ll take that as a lesson for myself if I&#8217;m ever in a similar situation.</p>\n\n\n\n<p class=\"wp-block-paragraph\">There have been some great long-form writings about Om:</p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https://daringfireball.net/2026/06/om\">John Gruber ties together Apple, the Yankees, and luggage</a>. &#8220;<em>He not busy being born is busy dying</em>, wrote Dylan. Om Malik wasn’t busy dying even when he was dying.&#8221;</li>\n\n\n\n<li><a href=\"https://brian.blog/om/\">Brian Sirgutz, Curiosity and the Art of Being Seen. On Professor Om &amp; the Malik School for Gifted Omies, Derek Jeter and Truth in Legacy</a>.</li>\n\n\n\n<li><a href=\"https://www.hodinkee.com/articles/in-loving-memory-of-om-malik-friend-writer-venture-capitalist-and-ever-the-believer\">Ben Clymer on Hodinkee</a>. &#8220;Om changed my life. He did it in many ways, often slowly and with subtlety, always with kindness and eminent belief in me.&#8221;</li>\n\n\n\n<li><a href=\"https://staceyoniot.com/thank-you-om-malik/\">Stacey Higginbotham</a> from the original GigaOM.</li>\n\n\n\n<li><a href=\"https://mathewingram.com/work/2026/06/25/om-malik-1966-2026/\">Mathew Ingram</a>.</li>\n\n\n\n<li><a href=\"https://www.nytimes.com/2026/06/26/technology/om-malik-dead.html\">The New York Times did an obituary</a>.</li>\n\n\n\n<li><a href=\"https://runtimewire.com/article/om-malik-taught-silicon-valley-to-read-itself\">Ryan Merket on RuntimeWire</a>.</li>\n\n\n\n<li>Om introduced <a href=\"https://krutal.blog/2026/06/26/om/\">Krutal Desai as his son</a>. &#8220;He had a rare gift of seeing 20 steps ahead while explaining things with remarkable simplicity. He gave wisdom freely, never seeking credit, only wanting to help others succeed.&#8221;</li>\n\n\n\n<li><a href=\"https://susanhobbs.blog/2026/06/27/the-gravity-of-om/\">Susan Hobbs</a>. &#8220;He was a teddy bear to those fortunate enough to know him. [&#8230;] Om created gravity. He was someone you wanted to be around.&#8221;</li>\n\n\n\n<li><a href=\"https://founderthings.substack.com/p/interview-om-malik\">Helena Price shares her thoughts and an old interview of Om</a>. &#8220;If you believe and you can’t seem to do anything other than think about something, you’ve just got to keep doing it. I think the universe has to follow. What’s the point of living if you don’t chase what’s important to you?&#8221;</li>\n\n\n\n<li><a href=\"https://pradeep.md/2026/06/25/om.html\">Pradeep Elankumaran</a>.</li>\n\n\n\n<li><a href=\"https://blog.naveen.com/2026/06/om-2/\">Naveen Selvadurai</a>.</li>\n\n\n\n<li><a href=\"https://explorers.com/my-friend-om/\">Christopher Michel</a>.</li>\n\n\n\n<li><a href=\"https://x.com/jgheller/status/2070267958891524448\">Jonathan Gheller</a>.</li>\n\n\n\n<li><a href=\"https://x.com/mamoonha/status/2070255545643364515\">Mamoon Hamid</a>.</li>\n\n\n\n<li><a href=\"https://boingboing.net/2026/06/25/om-malik-1966-2026.html\">Rob Beschizza on Boing Boing</a>.</li>\n\n\n\n<li><a href=\"https://www.airsugar.com/p/om-malik-1966-to-2026\">Brian Sugar</a>.</li>\n\n\n\n<li><a href=\"https://hugo.blog/2026/06/25/r-i-p-om-malik-%f0%9f%96%a4/\">Hugo Barra</a> on how Om got him to write.</li>\n\n\n\n<li><a href=\"https://everwas.com/2026/06/om/\">Ian Kennedy</a>, also with some great quotes.</li>\n\n\n\n<li><a href=\"https://toni.org/2026/06/25/om-malik/\">Toni Schneider</a>. &#8220;Om was a wonderful person, artistic soul, and original thinker. He was always curious, generous, and warm-hearted.&#8221;</li>\n\n\n\n<li><a href=\"https://seanbonner.com/2026/06/29/death-and-what-we-leave-behind/\">Sean Bonner</a>. &#8220;[H]is feedback and criticism could be sharp – but it was always with the hope that things could be better.&#8221;</li>\n\n\n\n<li><a href=\"https://battellemedia.com/archives/2026/06/remembering-om-malik\">John Battelle</a>. &#8220;Om quickly decided his integrity was more important than the ad dollars he was making with Federated&#8221;</li>\n\n\n\n<li><a href=\"https://winnielim.org/journal/om/\">Winnie Lim</a>. &#8220;Om was one of the very few people in this world I can have an intense conversation about form and content with.&#8221;</li>\n\n\n\n<li><a href=\"https://glass.photo/highlights/remembering-om\">Glass.photo</a>. &#8220;It’s not lost on us that <a href=\"https://glass.photo/om\">Om’s photography</a>, often taken in frozen lands in or around the arctic circle, was the polar opposite of his personality.&#8221;</li>\n\n\n\n<li><a href=\"https://spyglass.org/om/\">M.G. Siegler</a>. &#8220;The true natural born blogger.&#8221;</li>\n\n\n\n<li><a href=\"https://outsidewithacamera.substack.com/p/om-malik-the-path-of-the-one\">Rod Clark, The Path of the One</a>.</li>\n\n\n\n<li><a href=\"https://www.facebook.com/dina.kaplan/posts/pfbid02tiAYzbwam4qZGrtSYquvMUujBFjMzkf8EJFmiUhJHXFt9TYEHmWRrskXagwuxXcsl\">Dina Kaplan</a>, &#8220;Om &#8211; I say as tears come to my eyes &#8211; wanted nothing but to be kind. To be supportive. And to be a friend.&#8221;</li>\n</ul>\n\n\n\n<p class=\"wp-block-paragraph\">I know I&#8217;m missing a ton, I&#8217;ll update the above. I also added a <a href=\"https://ma.tt/2026/06/om-forever/\">few more vignettes and pictures to the last post</a>.</p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img alt=\"\" class=\"wp-image-153374\" height=\"453\" src=\"https://i0.wp.com/ma.tt/files/2026/06/IMG_0420-1024x768.jpg?resize=604%2C453&#038;quality=89&#038;ssl=1\" width=\"604\" /></figure>\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sat, 27 Jun 2026 16:34:31 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:4:\"Matt\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:49;a:6:{s:4:\"data\";s:21:\"\n	\n	\n	\n	\n	\n	\n	\n	\n	\n	\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:73:\"Open Channels FM: Why “It’s Dead” Says More About You Than the Tool\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:34:\"https://openchannels.fm/?p=2555736\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:53:\"https://openchannels.fm/pop-the-email-is-dead-bubble/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:143:\"Email isn’t dead. Sure, email marketing might not work for everyone, but it’s still crucial for many businesses and personal communication.\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Fri, 26 Jun 2026 09:08:00 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Bob Dunn\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}}}}}}}}}}}}s:4:\"type\";i:128;s:7:\"headers\";a:9:{s:6:\"server\";s:5:\"nginx\";s:4:\"date\";s:29:\"Sat, 25 Jul 2026 20:55:57 GMT\";s:12:\"content-type\";s:8:\"text/xml\";s:13:\"last-modified\";s:29:\"Sat, 25 Jul 2026 20:45:37 GMT\";s:4:\"vary\";s:15:\"Accept-Encoding\";s:15:\"x-frame-options\";s:10:\"SAMEORIGIN\";s:16:\"content-encoding\";s:2:\"br\";s:7:\"alt-svc\";s:5:\"clear\";s:4:\"x-nc\";s:9:\"HIT dca 2\";}s:5:\"build\";i:1776789697;s:21:\"cache_expiration_time\";i:1785056157;s:23:\"__cache_expiration_time\";i:1785056157;}','off');
