	
	
	
	
	
	
";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:58:"Post Status: The Block Editor: Kid Tested, Client-Approved";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:31:"https://poststatus.com/?p=94096";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://poststatus.com/the-block-editor-kid-tested-client-approved/";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:4327:"<p class="has-theme-palette-7-background-color has-background has-medium-font-size">It’s BobWP’s WooSnippet for the week of February 28, 2022! Get the lowdown on what’s new in the world of WooCommerce.</p>



<h2 id="woocommerce-6-3-rc2-and-woocommerce-blocks-7-1-0-released">WooCommerce 6.3 RC2 and WooCommerce Blocks 7.1.0 Released</h2>



<p class="has-drop-cap">This last week has been busy over at WooCommerce. The <a href="https://developer.woocommerce.com/2022/02/28/woocommerce-6-3-rc-2/">second release candidate for 6.3</a> dropped as we near the March 8th final release. In RC2, WooCommerce Admin has been updated from 3.2.0 to 3.2.1 — the <a href="https://github.com/woocommerce/woocommerce-admin/blob/main/changelog.txt">changelog is available here</a>. Two <a href="https://developer.woocommerce.com/2022/02/22/woocommerce-6-2-1-security-fix/">security fixes</a> addressed the permission check for reviews in v1 & v2 REST API and Path Traversal in Importers. </p>



<p>In addition, <a href="https://developer.woocommerce.com/2022/03/01/woocommerce-blocks-7-1-0-release-notes/">WooCommerce Blocks 7.1.0</a> came out with Global Styles support for more blocks and improved editor capabilities. </p>



<h2 id="guidelines-for-adding-actions-and-filters">Guidelines for Adding Actions and Filters</h2>



<p>New <a href="https://developer.woocommerce.com/2022/03/01/adding-and-modifying-actions-and-filters/">guidelines for adding and modifying actions and filters</a> are available on GitHub in the WooCommerce project Wiki. The guidelines bring clarity to the kinds of changes that are acceptable &#8220;and to reduce unnecessary back-and-forth during the code review process.&#8221;</p>



<h2 id="block-editor-passes-the-twelve-year-old-test">Block Editor Passes the Twelve-Year-Old Test</h2>



<p>We had a chance to <a href="https://dothewoo.io/writer-developer-woocommerce-builder/">chat with developer and writer Eric Karkovack</a> about Woo and a lot more. Eric shared some insights around the challenges facing WooCommerce site-builders by being a bit too &#8220;piecemeal.&#8221; Eric also talks about his experience with Gutenberg and clients' reactions to it, as well as his 12-year-old daughter as he helped her set up her own site:  </p>



<blockquote class="wp-block-quote"><p>&#8220;In fact, I set my daughter up on a blog with wordpress.com the other day, and she wants to do a blog about pets and Harry Potter. So I set her up with this, right? </p><p>And I'm going to start explaining all the good stuff with the blog editor. And here's what you do. You hit the plus button and she just looks at me and says, &#8220;Dad, you can go now. I'm fine.&#8221; I come back an hour later and she's already got it figured out.&#8221;</p></blockquote>



<h2 id="h-stress-management-developers-and-remote-work">Stress Management, Developers, and Remote Work</h2>



<p>Finally, we all know developers are no strangers to stress. Four of the speakers from WordFest share <a href="https://dothewoo.io/tips-how-to-handle-stress-as-a-woocommerce-developer/">some tips for Woo builders on how to handle the stress of remote work</a>. These are great ideas all developers will appreciate.</p>



<div class="wp-container-622abeba0c9c2 wp-block-group"><div class="wp-block-group__inner-container">
<div class="wp-block-spacer"></div>



<div class="wp-block-media-text alignwide is-stacked-on-mobile has-background"><a href="https://dothewoo.io/post-status-members/"><img width="400" height="400" src="https://cdn.poststatus.com/wp-content/uploads/2022/02/hg1C04vb_400x400.jpg" alt="Do the Woo" class="wp-image-93517 size-full" /></a><div class="wp-block-media-text__content">
<p class="has-text-align-left" id="h-get-ready-for-remote-work"><strong><strong>Do the Wo</strong>o!</strong> <a href="https://dothewoo.io/subscribe" target="_blank" rel="noreferrer noopener">Get the Podcast</a>. <a href="https://dothewoo.io/subscribe" target="_blank" rel="noreferrer noopener">Subscribe to the Newsletter</a>.</p>



<p>Learn from others. Grow your business. Connect with a community of like-minded developers and builders who freelance, run agencies, and build really cool products and sites in the <strong>WooCommerce</strong> ecosystem.</p>
</div></div>



<div class="wp-block-spacer"></div>
</div></div>";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, 03 Mar 2022 19:15: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: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:42;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";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: WordPress Ditches “Pee” and “Tinkle” Jokes in Favor of More Inclusive Language and Clearer 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:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:30:"https://wptavern.com/?p=130767";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:112:"https://wptavern.com/wordpress-ditches-pee-and-tinkle-jokes-in-favor-of-more-inclusive-language-and-clearer-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:5668:"<p class="has-drop-cap">It feels like the end of an era. Last week, core contributors <a href="https://core.trac.wordpress.org/changeset/52789">merged a patch</a> that removed PHP variables named <code>$pee</code> and <code>$tinkle</code> from the WordPress codebase.</p>



<p>Yes, the software that powers 43% of the web has pee-pee jokes in its code.</p>



<p><em>I know how it sounds. I felt silly writing that sentence.</em></p>



<p>My job as a writer for WP Tavern affords me the luxury of taking creative license with words every now and again. However, it is a rare treat to write about pee-pee jokes. The chance to do so will not likely come around again. While I could pull out a few doozies from childhood, I promise to remain as professional as possible, given the subject matter.</p>



<p>The vast majority of users are likely unaware of this joke unless they enjoy trawling through the 6,000+ lines of code in <code>/wp-includes/formatting.php</code>. There is a good chance that any developer who has looked up the <a href="https://developer.wordpress.org/reference/functions/wpautop/"><code>wpautop()</code> function</a> has stumbled upon it.</p>



<p>Reading through the code can garner a chuckle from a few, but it is a momentary amusement. The problem has always been confusing variable names. In programming, clarity should be favored above all else.</p>



<p><em>What is a <code>$pee</code>, exactly?</em> It is text. Therefore, <code>$text</code> makes sense as a variable name, which is one of recent code changes. Other modifications include:</p>



<ul><li><code>$pee_parts</code> to <code>$text_parts</code></li><li><code>$last_pee</code> to <code>$last_part</code></li><li><code>$pees</code> to <code>$paragraphs</code></li><li><code>$tinkle</code> to <code>$paragraph</code></li></ul>



<p>That complex <code>wpautop()</code> function and its 150+ lines of code start making a bit more sense when things are named for clarity.</p>



<p>For the historical record: <code>$pee</code> was first seen in the WordPress codebase <a href="https://core.trac.wordpress.org/changeset/13">in 2003</a>. <code>$tinkle</code> did not make an appearance until <a href="https://core.trac.wordpress.org/changeset/9255">five years later</a>.</p>



<p>Developer Rico Moorman asked for the problematic code to be changed in a <a href="https://core.trac.wordpress.org/ticket/25615">ticket in 2013</a>. There was some movement to replace the variable names at first. However, after several lead developers stepped in, the idea was shot down. The arguments against the change leaned on keeping the spirit of WordPress, its humor, and its history alive.</p>



<p>However, 2022 is not 2013. The world has changed since the ticket was first opened. While it still has miles to go to be the all-inclusive community it can be, the WordPress space is seemingly more open to checking itself on language issues today.</p>



<p>In 2020, when many in the worldwide developer community <a href="https://wptavern.com/github-to-use-main-instead-of-master-as-the-default-branch-on-all-new-repositories-starting-next-month">switched their default Git repos</a> from &#8220;master&#8221; to &#8220;main,&#8221; <a href="https://wptavern.com/proposal-to-rename-the-master-branch-from-wordpress-owned-git-repositories">WordPress followed suit</a>. And, it managed to keep a bit of the charm of its SVN roots by using &#8220;trunk&#8221; instead.</p>



<p>In 2018, contributors <a href="https://wptavern.com/without-context-some-lyrics-inside-the-hello-dolly-plugin-are-degrading-to-women">changed text in the Hello Dolly plugin</a> that was degrading to women, especially out of context. The plugin ships with WordPress and randomly displays a single line from Louis Armstrong&#8217;s &#8220;Hello, Dolly!&#8221; in the admin header. </p>



<p>The two offending lines were:</p>



<ul><li>&#8220;Find her an empty lap, fellas&#8221;</li><li>&#8220;Find her a vacant knee, fellas&#8221;</li></ul>



<p>Along with some other trivial text changes, the former was removed altogether, and the latter was replaced with &#8220;Have a little faith in me, fellas.&#8221;</p>



<p>The world changes over time. Language evolves, and what may have been acceptable in years past will not always be so in the future.</p>



<p>Some lead developers may have been OK with the code in 2013. However, the community should never be afraid to reevaluate past stances once in a while. Maybe it was time to ditch the fine art of middle-school jokes in favor of clear and readable code.</p>



<p>Miriam Schwab renewed the discussion via the Post Status Slack chat in December 2021. The general sense from those in the conversation seemed to agree that it was not necessarily offensive but immature. Most of all, it did not have a place in modern WordPress. A team member of Schwab&#8217;s had found the code and also <a href="https://core.trac.wordpress.org/ticket/25615#comment:22">renewed the Trac ticket discussion</a>.</p>



<p>During this go-round, there was no pushback. It was simply time to say farewell to a part of the platform&#8217;s history.</p>



<p>In this instance, WordPress has not lost any of its personality. Plus ,the variable changes will allow more developers to grasp what is happening in the code.</p>



<p>This does mean that WordPress has a vacancy for at least one new joke or Easter egg. I am still a little salty about losing <a href="https://wptavern.com/wordpress-personality-shines-through-again">access to the Matrix</a>. But, it never hurts to mix it up once in a while. WordPress&#8217;s in-jokes should continue maturing along with the software.</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, 03 Mar 2022 01:15: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:14:"Justin Tadlock";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:13:"
	
	
	
	
	
	
";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:59:"Post Status: This Week at WordPress.org (February 28, 2022)";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:31:"https://poststatus.com/?p=94069";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://poststatus.com/this-week-at-wordpress-org-february-28-2022/";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:5332:"<p>Each week we are highlighting the news from WordPress.org that you don't want to miss.  If you or your company create products or services that use WordPress, we've got the news you need to know. Be sure to share this resource with your product and project managers.</p>



<h2 id="h-news"><a href="http://wordpress.org/news">News</a></h2>



<ul><li><a href="https://wordpress.org/news/2022/02/people-of-wordpress-tonya-mork/">People of WordPress: Tonya Mork</a></li></ul>



<div class="wp-block-spacer"></div>



<hr class="wp-block-separator logo is-style-default" />



<div class="wp-block-spacer"></div>



<div class="wp-block-columns">
<div class="wp-block-column">
<h2 id="h-core"><a href="https://make.wordpress.org/core">Core</a> </h2>



<ul><li><a href="https://make.wordpress.org/core/2022/03/03/core-editor-improvement-choose-your-style/">Core Editor Improvement: Choose your Style</a></li><li><a href="https://make.wordpress.org/core/2022/03/02/whats-new-in-gutenberg-12-7-2-march/">What’s new in Gutenberg 12.7? (2 March)</a></li><li><a href="https://make.wordpress.org/core/2022/02/28/a-week-in-core-february-28-2022/">A Week in Core – February 28, 2022</a></li><li><a href="https://make.wordpress.org/core/2022/02/25/proposal-to-start-a-news-blog-on-developer-wordpress-org/">Proposal to Start a News blog on developer.WordPress.org</a></li></ul>



<h2 id="h-design"><a href="https://make.wordpress.org/design">Design</a></h2>



<ul><li><a href="https://make.wordpress.org/design/2022/02/15/show-and-tell-february-2022/"></a><a href="https://make.wordpress.org/design/2022/02/28/design-share-feb-14-25/">Design Share: Feb 14–25</a></li></ul>



<h2 id="h-docs"><a href="https://make.wordpress.org/docs">Docs</a>:</h2>



<ul><li><a href="https://make.wordpress.org/updates/2022/02/28/documentation-team-update-february-28-2022/">Documentation Team Update – February 28, 2022</a></li></ul>



<h2 id="h-photos">Photos</h2>



<ul><li><a href="https://make.wordpress.org/photos/2022/02/23/photo-directory-team-rep-nominations-for-2022/">Photo Directory Team Rep Nominations for 2022</a></li></ul>



<h2 id="h-plugins"><a href="https://make.wordpress.org/plugins">Plugins</a></h2>



<ul><li><a href="https://make.wordpress.org/updates/2022/02/22/plugin-review-team-21-february-2022/"></a><a href="https://make.wordpress.org/updates/2022/02/28/plugin-review-team-update-28-feb-2022/">Plugin Review Team Update: 28 Feb 2022</a></li></ul>
</div>



<div class="wp-block-column">
<h2 id="h-test"><a href="https://make.wordpress.org/test">Test</a></h2>



<ul><li><a href="https://make.wordpress.org/test/2022/02/23/fse-program-testing-call-12-hyping-headers/">FSE Program Testing Call #12: Hyping Headers</a></li></ul>



<h2 id="h-themes"><a href="https://make.wordpress.org/themes">Themes</a></h2>



<ul><li><a href="https://make.wordpress.org/updates/2022/02/22/themes-team-update-february-22-2022/"></a><a href="https://make.wordpress.org/updates/2022/03/02/themes-team-update-march-02-2022/">Themes team update March 02, 2022</a></li></ul>



<h2 id="h-training"><a href="https://make.wordpress.org/training">Training</a></h2>



<ul><li><a href="https://make.wordpress.org/updates/2022/02/28/whats-new-on-learnwp-in-february-2022/">What’s new on LearnWP in February 2022</a></li><li><a href="https://make.wordpress.org/training/2022/01/31/faculty-program-structure-proposal/">Faculty Program: Structure Proposal</a></li></ul>



<h4 id="h-workshops">Workshops</h4>



<ul><li><a href="https://learn.wordpress.org/workshop/building-sidebars-with-the-site-editor/">Building Sidebars With the Site Editor</a></li><li><a href="https://learn.wordpress.org/workshop/intro-to-the-site-editor-and-template-editor/">Intro to the Site Editor and Template Editor</a></li></ul>



<h4 id="h-social-learning-spaces">Social Learning Spaces:</h4>



<ul><li><a href="https://learn.wordpress.org/social-learning/">Calendar</a></li></ul>
</div>
</div>



<div class="wp-block-spacer"></div>



<div class="wp-block-media-text alignwide is-stacked-on-mobile has-background"><a href="https://poststatus.com/"><img src="https://cdn.poststatus.com/wp-content/uploads/2021/09/vertical-post-status-logo-250.png" alt="Post Status" class="wp-image-85823 size-full" /></a><div class="wp-block-media-text__content">
<p class="has-text-align-left has-normal-font-size" id="h-get-ready-for-remote-work">You — and <a href="https://poststatus.com/business-membership/">your whole team</a> can <a href="https://poststatus.com/post-status-membership-club/">Join Post Status</a> too!</p>



<p class="has-text-align-left has-small-font-size"><strong>Build your network. Learn with others. Find your next job — or your next hire.</strong> Read the <strong>Post Status</strong> <a href="https://poststatus.com/newsletter/">newsletter</a>. <img src="https://s.w.org/images/core/emoji/13.1.0/72x72/2709.png" alt="✉" class="wp-smiley" /> Listen to <a href="https://poststatus.com/podcasts/">podcasts</a>. <img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f399.png" alt="🎙" class="wp-smiley" /> Follow <a href="https://twitter.com/post_status/">@Post_Status</a>. <img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f426.png" alt="🐦" class="wp-smiley" /></p>
</div></div>



<div class="wp-block-spacer"></div>";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, 02 Mar 2022 17:57:47 +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:"Courtney Robertson";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:13:"
	
	
	
	
	
	
";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:75:"WPTavern: #16 – Jonathan Bossenger on Cleaning Up WordPress Notifications";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=130378";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:89:"https://wptavern.com/podcast/16-jonathan-bossenger-on-cleaning-up-wordpress-notifications";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:55116:"<p>On the podcast today we have <a href="https://twitter.com/jon_bossenger">Jonathan Bossenger</a>.</p>



<p>He’s here to talk about WordPress notifications and how they are managed.</p>



<p>If you’ve been using WordPress for any length of time, then you&#8217;ll have seen notifications appear in the admin area of your site. These messages can be useful, they might tell you that something needs to be updated, or that something was successfully saved.</p>



<p>There’s also a chance that you’ve seen notifications for other purposes as well. Perhaps a plugin would like you to notice their upgrade offer, or that they have a sale on.</p>



<p>All these notifications fall into the same place, and when multiple of them arise at the same time, the admin area can become cluttered and confusing, especially for novice users.</p>



<p>It’s possible that you don’t mind these notifications, but it seems that many people do, and feel that they’re being overused. They would prefer not to see so many notifications, and if notifications are to appear, that there are limitations on what they can show, and how large they can be.</p>



<p>In the podcast Jonathan talks about his concerns regarding WordPress notifications, and the fact that there’s no system in place to limit what they can display and for what purpose.</p>



<p>He’s currently working on WP Notify, which is a project aiming to put a notifications area in to your WordPress website. All notifications would appear in this area, and there would be constraints about what could, and could not, be displayed there.</p>



<p>It’s not about removing notifications completely, more about putting them in a defined place, like you might find on your mobile phone.</p>



<p>We talk about how notifications are currently created and how there are few limits on what they can do. How overuse of notifications can be a cause for concern, and how Jonathan’s solution aims to add a unified system to WordPress which would put the user in control of the notifications.</p>



<h2 id="useful-links">Useful links.</h2>



<p><a href="https://jonathanbossenger.com/about/">Jonathan&#8217;s website</a></p>



<p><a href="https://github.com/WordPress/wp-notify">WP Notify on GitHub</a></p>



Transcript<div>
<p>[00:00:00] <strong>Nathan Wrigley:</strong> Welcome to the Jukebox podcast from WP Tavern. My name is Nathan Wrigley. 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 way that we manage announcements in the WordPress admin. 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 WP Tavern dot com forward slash feed forward slash podcast. And you can copy that URL into most podcast players.</p>



<p>I&#8217;d really like to hear from anyone out there who would like to come on the podcast and talk about whatever it is that you do with WordPress. It might be that you&#8217;re a developer, a WordCamp organizer contributor, a designer. Honestly, if it&#8217;s about WordPress, I&#8217;m keen to hear from you, and hopefully get you on the show. Head over to WP Tavern dot com forward slash contact forward slash jukebox. And you use the contact form there.</p>



<p>So on the podcast today, we have Jonathan Bossenger. He&#8217;s here to talk about WordPress notifications and how they are managed. If you&#8217;ve been using WordPress for any length of time, then you&#8217;ll have seen notifications appear in the admin area of your site. These messages can be useful. They might tell you something needs to be updated. Or that something was successfully saved. There&#8217;s also a chance that you&#8217;ve seen notifications for other purposes as well. Perhaps a plugin would like you to notice their upgrade offer, or that they have a sale on. All these notifications fall into the same place, and when multiple of them arise at the same time, the admin area can become cluttered and confusing, especially for novice users.</p>



<p>It&#8217;s possible that you don&#8217;t mind these notifications, but it seems that many people do, and feel that they&#8217;re being overused. They would prefer not to see so many notifications. And if notifications are to appear, that there are limitations on what they can show, and how large they can be.</p>



<p>In the podcast, Jonathan talks about his concerns regarding WordPress notifications and the fact that there&#8217;s no system in place to limit what they can display, and for what purpose. He&#8217;s currently working on WP Notify, which is a project aiming to put a notifications area into your WordPress website. All notifications would appear in this area and there would be constraints about what you could and could not display there. It&#8217;s not about removing notifications completely, more about putting them in a defined place. Like you might find on your mobile phone. We talk about how notifications are currently created and how there are a few limits on what they can do. How over use of notifications can be a cause for concern, and how Jonathan&#8217;s solution aims to add a unified system to WordPress, which would put the user in control of the notifications.</p>



<p>If you&#8217;re interested in finding out more, you can find all the links in the show notes over at WP Tavern dot com forward slash podcast, and look for episode number 16. And so without further delay, I bring you Jonathan Bossenger.</p>



<p>I am joined on the podcast today by Jonathan Bassinger. Hello Jonathan?</p>



<p>[00:04:01] <strong>Jonathan Bossenger:</strong> Hello, Nathan, how are you?</p>



<p>[00:04:02] <strong>Nathan Wrigley:</strong> I&#8217;m very well. Jonathan is joining us today to talk about WordPress notifications. Now I could introduce this subject and say all sorts of things off the bat. My thoughts on things, but it would probably muddy the water.</p>



<p>So Jonathan, it&#8217;s over to you. Tell us about WordPress notifications and the issues that you see, and then we&#8217;ll get into the weeds and discuss the finer points.</p>



<p>[00:04:26] <strong>Jonathan Bossenger:</strong> Sure. No problem. So, before I start, I&#8217;d like to mention that my problems with WordPress notifications come from both the point of view of a contributor to WordPress, and also a person who makes money off WordPress.</p>



<p>So some of the first products that I created for WordPress were plugins and part of those plugins required me to give some kind of feedback to the user if they had saved settings, or if there was some change that they had to make or whatever the case may be. And then from there I moved on to building plugins for clients or doing custom work.</p>



<p>And the point that I noticed that there was a problem as it were with notifications was when I used to log into client&#8217;s websites, as a new administrator and I was flooded with, and I&#8217;m sure we&#8217;ve all seen the screenshots of this on social media, but flooded with notifications from this plugin that has just been updated to, this plugin has an upgrade, a paid upgrade to this plugin is just on this over here. This theme has got this, that, and the next thing. And I&#8217;m reading half a page, sometimes a full page, of notifications before I can even start working with the dashboard. The, in big inverted air-quotes, problem with notifications is the fact that there is no official centralized way to register and present notifications to the user other than using admin notices.</p>



<p>So if you&#8217;re a developer of a plugin or developer of a theme, there is the admin notices hook that you can hook into, but you can pretty much hook any HTML into that hook. So the documentation gives you some guidelines as to status classes that you can use for your div to display it in red or green as a success or an error, but you have full leeway to build anything you want there.</p>



<p>So you could build a full page notification. You could build a tiny notification. They are guidelines in the plugin and theme handbooks that gives you guidelines of what you should do and what you should stick to. But there&#8217;s nothing to force you down that path. And with notifications. These admin notices traditionally should be being used to give the user feedback.</p>



<p>So I&#8217;ve created a post, I hit save, and I need to see a message that says, yay, my post has been saved. This admin notices functionality is now being, and I don&#8217;t want to use the word abused, so I&#8217;m not going to, but overused by folks who are trying to give the user some other form of notification, some other piece of messaging, some other piece of information.</p>



<p>[00:07:01] <strong>Nathan Wrigley:</strong> So the problem is a historical one in that WordPress core has the capacity to pop-up things, which presumably the intention was that anybody who wished to use these would have something legitimate to say. As you say, post has been saved, something has been deleted and so on, and there are no constraints around really what you can put in there.</p>



<p>It could be enormous. It could be very wordy. It could contain images, animated gifts, and so on. And there&#8217;s no real constraints about the way that it can be implemented. And I think for the most experienced users of WordPress, that is to say somebody that&#8217;s dabbling in there everyday, you kind of become a little bit numb to it and you just log into WordPress and immediately dismiss them all, click whatever option is available to make them go away.</p>



<p>But there they were and clients, people less experienced, I think the problem might reside in the fact that they might cause some sort of alarm, you know, it might be, oh, well, why is that appearing? There&#8217;s probably some kind of upgrade that I should have had. Why haven&#8217;t I got the upgrade and so on and so forth.</p>



<p>So it&#8217;s a historical problem. Do you know, roughly speaking, how far do we need to rewind the clock before the, in inverted commas, over use of these began. When was the first time you saw this being used for ulterior motives?</p>



<p>[00:08:23] <strong>Jonathan Bossenger:</strong> So it&#8217;s difficult for me to say that 100%, because I&#8217;ve only been very active in the WordPress space since around 2015.</p>



<p>I use WordPress as a blogging platform from about 2009, but that&#8217;s, as far as it went, I had a blog. I had maybe a security plugin installed, maybe a forms plugin, but I was just using it for blogging purposes. So it was only in 2015, 2016 that I started building for WordPress that I started seeing, personally seeing these issues.</p>



<p>I would say that since it&#8217;s definitely gotten worse. There was a stage in about 2017, 2018 that I started seeing it more and more and more. The thing that you mentioned earlier about, you know, as an experienced user of WordPress, we see these notifications. We know how to dismiss them. We know how to click. The concern that I always have is never mind somebody who&#8217;s a client, nevermind somebody who is a business owner. Let&#8217;s just look at somebody who wants to blog with WordPress or build themselves as simple website with WordPress. What is the user story gonna look like? They&#8217;re going to either through their hosting company, they&#8217;re going to install WordPress through some kind of one-click install.</p>



<p>Maybe they&#8217;re using a managed hosting environment, which does it all for you. Maybe they&#8217;re technically savvy enough to download the zip file and upload it to a server. They&#8217;re going to install it. They&#8217;re going to start using it. They&#8217;re going to need to have, maybe a contact form. They&#8217;re going to need to maybe have some kind of plug-in functionality.</p>



<p>They&#8217;re going to start looking for plugins to install things. Then as you say, suddenly, they&#8217;re going to see these messages and these messages are going to be jumping out at them. And these messages are different sizes and different shapes, and it just creates this very jagged, jarring experience for the new user.</p>



<p>Now we can&#8217;t blame WordPress because WordPress Core itself is using admin notices correctly. We can&#8217;t really blame plugin developers and theme developers because, they&#8217;re trying to get this information to the user, with a system that&#8217;s not designed for it. So the problem is not one single entity&#8217;s problem.</p>



<p>The problem is all of our problems. That&#8217;s the kind of the way I look at it. We all need to work together with WordPress Core, with plugin developers, with team developers and find a better way to register these, non, I don&#8217;t like to call them notifications because to me a notification is&#8230; your post has been saved successfully, or you have created a new post.</p>



<p>So let&#8217;s call them announcements just for the sake of this podcast. We need to find a way to register these announcements that are outside of the scope of the day-to-day use of WordPress and present them to the user in a way that is clean and nice, and doesn&#8217;t, doesn&#8217;t disturb them using WordPress on a day to day, but is accessible and they can, and they can see the information that they see in a, in a way that is formalised.</p>



<p>[00:11:23] <strong>Nathan Wrigley:</strong> Do you think then the notifications that we have at the moment, which can consume any HTML, let&#8217;s imagine that nothing additional were to be added into WordPress, and we&#8217;ll get on to your project a little bit later, but if we were simply to have it that just text could go in there and that text could be limited, say to a certain string length, I don&#8217;t know, 30 characters or something.</p>



<p>Would that potentially solve the problem in your eyes? Or are there situations where anyone may need more than that, because obviously if we just limited it to text, we could still put all sorts of interesting and perhaps unwanted messages in there.</p>



<p>[00:11:58] <strong>Jonathan Bossenger:</strong> So I speak to you now as a developer. And let me tell you that if you put some kind of limitation down, some clever developer will come along and figure out how to work around this. As it is, you know, the admin, the admin notice the system as it is, is kind of restrictive, but the only way that you could physically restrict it, is if you, every time a new plugin submission comes in, you had somebody physically inspecting every single instance of the notification system and making sure that this person was following the guidelines. And I&#8217;m sure we all remember a number of years ago that the theme team was kind of coming under fire because they were taking a long time to review themes.</p>



<p>And that was because everything was still being done manually. The plugging team is a small number of people due to the security that&#8217;s involved in getting plugin submitted and what plugins have to deal with. So expecting a team of people to physically inspect every single admin notice that comes through. I mean, sure, you could probably automate it in some way, but we all know that developers are crafty. We all know that developers, I mean, that&#8217;s part of what being developed is, finding ways to solve difficult problems. So you put a constraint down in front of a developer on an open source project, you know, code that is publicly available.</p>



<p>And say, right, we&#8217;re now stopping you from doing X. They&#8217;re going to find a way. So to me it&#8217;s a little bit less of the stick and more of the carrot. We need to provide a way that gives developers the ability specifically, and I speak now as somebody who failed dismally to try and start a plugin business.</p>



<p>But one of the biggest things that I struggled with was marketing. How do I market my paid products off of my free ones? You know, WordPress dot org plugin repository and the theme repository is, we all know this, is one of the top places to get yourself known, put out a free product, get customers into the funnel, but then how do you turn them into paying customers?</p>



<p>We know we have a problem with sponsorship of open source products. It&#8217;s spoken about all the time. How do we, how do we balance the needs of the open source project and the people that are building plugins for it and how do we balance the need for them to market to their customers, to, to bring, you know, free customers into the paying funnel, in a way that isn&#8217;t disruptive to regular users of WordPress?</p>



<p>And in my opinion, the only way that we can do that is by creating something that is well-defined in terms of, this is how you do things, this is how you register things. But it&#8217;s not, it&#8217;s not being thrown into the user&#8217;s face when they want to see that information. To me, that&#8217;s the only way that, that we do it in</p>



<p>[00:14:34] <strong>Nathan Wrigley:</strong> In terms of describing problematic notifications or announcements or whatever term we&#8217;d like to use. There must be a point where in your own mind it strays from being, well, that&#8217;s totally acceptable. Everybody ought to be seeing that. And then there&#8217;s some kind of gray area, no man&#8217;s land where that feels a bit shady, I&#8217;m not quite sure what to make of that. And then presumably there are examples which you could mention where it&#8217;s clearly something that you would strongly urge people not to do.</p>



<p>Do you want to just describe examples of maybe things which you think are totally legitimate and then also some examples, we should probably not use any names, examples where you&#8217;ve seen things that you think actually, I think that you&#8217;re pushing a little bit too hard then.</p>



<p>[00:15:19] <strong>Jonathan Bossenger:</strong> Sure. I can definitely give some examples. I won&#8217;t give names because that&#8217;s just not something I want to start doing right now, but I can give you some personal examples of notifications that I&#8217;ve dealt with.</p>



<p>For those of you who don&#8217;t know, I used to be a developer for a company called Castos. We managed a podcasting plugin for WordPress. And at that stage, I was very focused on making sure that our notifications were not disruptive to our users or any other user of the WordPress site that happened to have the plugin installed.</p>



<p>So as an example, our one, let&#8217;s call it onboarding form to try and get customers to sign up for our podcast hosting service, was only available on the plugin settings page. So only when you went to the plugin settings on the right-hand side, there was a nice little sidebar with a little graphic to say, hey, if you&#8217;re enjoying the plugin, but you&#8217;re looking for a way to host your files, here&#8217;s a form you can fill in. We&#8217;ll give you a 10% discount to try it out. To me, that&#8217;s not disruptive, because the user can still use their settings. They can still make changes. They&#8217;re not seeing this notification at the top of the screen in their face every time, it&#8217;s off to the right. It&#8217;s there, it&#8217;s visible, but it&#8217;s not disruptive.</p>



<p>The other thing we were very focused on is when we do update messages. So when the plugin gets updated, if there&#8217;s some kind of process that needs to be run, maybe there&#8217;s a database upgrade that needs to be run. That to me makes sense as a, let&#8217;s call it a site-wide notice, or a more general admin notice, but we kept them very limited. Maybe one sentence. We didn&#8217;t use the red color or the green color, we just kept it gray and just said, hey, we noticed you&#8217;ve recently updated. Here&#8217;s a link to click through to make the changes. But specific things related to the plugin. So if we would, I can actually give you a perfect example. There were some changes in the Apple podcast categories and Apple podcasting was changing how the categories worked.</p>



<p>And so what we did was, if you loaded up the plugin and you updated the plugin, you saw no messages, you saw no notifications, you could carry on doing your things, because it would all just work. When you went to the page that allows you to control your categories, there we showed you a specific message to say, by the way, did you know Apple have recently updated their categories, your old categories are still going to work, but it would be a good idea to change your categories on this page. And then as soon as the person saved that page, that notification goes away. So to me, that&#8217;s an example of how, as a developer, you can sort of think of, you know, how do I get free users onto the paid version?</p>



<p>You know, how do I display relevant information to the user? Some of the bad things that I&#8217;ve seen, there are a couple of popular page builders that I won&#8217;t name. I think I might&#8217;ve tweeted about it. So maybe if you go back in my feed, you might find. With the Block Editor coming out. When you load up a new post, you have this option to select, and the only reason I know this is because for various reasons, I have both of these page builders on my site because I&#8217;ve done some demo content with them for tutorials in the past. When I create a new post, I get this big, these two big buttons saying, do you want to use this page builder? Do you want to use that page builder? Or do you want to use the default page builder. When I select, and this might&#8217;ve changed, cause it&#8217;s been a while since I&#8217;ve done this, but when I select default page builder, at the very top of the Block Editor, there are now these two big buttons, saying switch back to the other page builders, switch back to the second page builder that you have installed. To me, that&#8217;s kind of pushing it, because I&#8217;ve already chosen that I want to use the default editor. Now to keep bugging me. And the other thing that I hated about those buttons were, they both had their own colour schemes. So they were very jarring in the block editor. Cause I keep my WordPress on a very clean theme. So now I&#8217;ve got these big, bold colors at the top of my editing area. And they were both using separate fonts as well. They weren&#8217;t using standard WordPress dashboard fonts.</p>



<p>So to me, that was very much in my face and almost getting to a point where I wanted to stop using their products because they were being so vibrant about that. There was another example recently where somebody had, I can&#8217;t remember the details but, I think it was, I think it was The Tavern site, where somebody had added, I think it was a signup or an upgrade or something button as a HTML field in the settings sidebar, which there was quite a bit of conversation around. To me again, that&#8217;s the problem, you know, where you are using space that should be used for one purpose, you know, control or settings or whatever. And now you&#8217;re taking over that space to put in your notifications or your upgrades or upsells. Those to me are the kind of the problematic areas.</p>



<p>[00:19:53] <strong>Nathan Wrigley:</strong> It sounds to me as if you&#8217;re demarcating in your own head at least, the pages, the places on a website which have legitimate use. So the general admin, if you just click the dashboard link and you&#8217;re into WordPress and you&#8217;re not in any particular setting for any particular plugin. You feel that those ought to be limited to possibly text and just very informational in nature and something which is more or less critical, something which you must take care of because otherwise. Right. Okay. So that&#8217;s what belongs there. But if you were to go into the settings page of any particular plugin, that&#8217;s more of a free for all.</p>



<p>Do you feel that there&#8217;s any constraints there or are you, you mentioned that for Castos, you have a sidebar. I remember seeing that have actually used that before. And there it was, and it did genuinely feel as if that was the right place for it, because I was already in the settings. I was thinking that I was going to be interacting in some way with Castos, and so the upgrade felt like an appropriate place. Any limitations on that? Are we allowed to go full page in there or should there be some constraints around that?</p>



<p>[00:21:03] <strong>Jonathan Bossenger:</strong> Well, for me, it&#8217;s always about the user experience. So, I feel like a lot of developers, they understand the the balance between creating a good user experience and interacting with your users. The company that I work for now, Delicious Brains, it was about a year ago now released version two of WP Migrate DB Pro with a new user interface, and the notifications that come up when you log into the plugin page and the plugin settings, they&#8217;re just so nice and clean and they don&#8217;t overwhelm you.</p>



<p>They are useful information, you know. Even if you install the free plugin, there&#8217;s a little bit of a thing at the top, but it doesn&#8217;t bombard you. So in my opinion, yes, if you&#8217;re building a product for WordPress today, and you are forced to use admin notices. You should think about how you&#8217;re registering these things.</p>



<p>One of the, one of the things that I spent the most time on when we were releasing updates to the plugin at Castos was triggering certain notifications only at certain points. So, when there was an upgrade from 1.2 to 1.3, then trigger a certain notification. But then when the user dismisses that notification save the fact that they&#8217;ve dismissed it and don&#8217;t show it again.</p>



<p>So we actually spent time thinking about this, because there&#8217;s nothing worse and this actually happened. So the reason we spend the time is because something happened. We launched an update, it included an upgrade step that the user had to action. But we didn&#8217;t have any kind of check in place. So every single time a new user installed the plugin, they got this upgrade.</p>



<p>Now that&#8217;s fine in the scope of one plugin. Think about let&#8217;s say 15 popular plugins do that. Your user comes along and likes those plugins and installs those plugins and suddenly has 15 notifications in their main dashboard they have to deal with. If those were separated, off and in the settings for each plugin, then it would limit that amount of overwhelm. And they would only see that notification when they&#8217;re dealing with those settings. So I do believe that putting plugins specific notifications in certain places is a better way. The problem you have with that though, is that the other reason developers use notifications is to push users into that funnel.</p>



<p>And I am not standing here today saying we shouldn&#8217;t allow developers to do that. I strongly support people who are working on open source products, being able to be given the ability to earn income, to be able to be given the ability to turn non-paying customers, into paying customers. But we need to do it in such a way that it doesn&#8217;t overwhelm the users.</p>



<p>It doesn&#8217;t frustrate them. We should be making it a, we should be making the process of signing up for our product as fun and pleasant as it is using WordPress. And if we are bombarding our customers with notifications from day one when, and that&#8217;s why I say we, we have to find a better way to do this. We can take what we currently have and try and patch it up because what we currently have has been overused for so long and is already.</p>



<p>So what&#8217;s the word I want to use? I don&#8217;t want to use broken because it means that it was working before, but it&#8217;s been again, I don&#8217;t want to say misused because that sounds so negative. Used incorrectly, used for the wrong reasons, because the reasons that exist, the reasons that exist today, for people to use these notifications are ten times more, what they were, you know, five, ten years ago.</p>



<p>[00:24:31] <strong>Nathan Wrigley:</strong> Some of the examples that I&#8217;m going to give here come into my head when I&#8217;m thinking about advertising and overwhelm of advertising and misuse. And so a good example would be, if you go to a news site, I can think of an example of a local news site to me. And I go there and I find it incredibly difficult to use that website because they&#8217;ve taken the path of advertising and there are adverts, splattered everywhere so much so that it&#8217;s almost impossible to find the actual content. The content is split up into small paragraphs and they are punctuated by advertisements. And I feel that&#8217;s probably the argument that you&#8217;re making is that if we clutter the UI, if we allow the UI to be cluttered by things which people didn&#8217;t necessarily wish or need to see, then we are making the experience poorer. And I go to that website. I find it quite difficult to stay there. It may be that I need the content so badly that I&#8217;ll persevere, but I&#8217;ve got this instinctive reaction to get away. And we don&#8217;t wish people to enter WordPress, have an initial experience which is poor and continually frustrated.</p>



<p>However, on the flip side, there&#8217;s obviously some sort of commercial need, as you&#8217;ve described. People would wish to turn their free projects into paid projects and have some subscribers. And I guess plugin developers would point to the fact that in a normal situation, you would get a product and probably give up your email address in return for that. But on the WordPress side, if they come to the repo and download your free plugin, you have no access to that. You haven&#8217;t managed to get them into a funnel in any way, shape or form. They&#8217;re just consuming your product, and that&#8217;s the end of the road. They may use it forever, and I have no idea who you are or any other product that you may offer.</p>



<p>And in fact, they may well miss out on something which they genuinely, legitimately needed. And so the developers would argue, I guess, that we need some way to do this. We&#8217;re going to try to keep it under control, but I suppose the problem is human nature. Is that given the fact that the area is open to any HTML as you described, it just starts to get overused. The boundaries get pushed, things that were acceptable yesterday are going to be pushed further. And then what&#8217;s acceptable in a year&#8217;s time may get pushed further. And your position, I suppose, is we just want to reign this in a little bit.</p>



<p>Another thing which comes to mind is commercial television. On the TV side of things, probably radio as well, we&#8217;ve gotten quite used to the fact that our content will be punctuated with adverts. We&#8217;ve walked across the mental bridge that, I cannot watch this program unless it is paid for by advertising. So every 15 minutes or so I will cope. I&#8217;ll sit there and I&#8217;ll consume the adverts or I&#8217;ll go and make a cup of coffee.</p>



<p>I guess making coffee is the equivalent of dismissing something in WordPress, but that&#8217;s just part of life. So I do wonder where most people will sit on this. They realize that there&#8217;s a commercial need for these things to exist. And so they cope with it, but it may not be ideal.</p>



<p>[00:27:37] <strong>Jonathan Bossenger:</strong> And that&#8217;s one of the reasons why we need something new because I am, I&#8217;m not, I&#8217;m not saying that we should punish all plugin developers because they want to make a living.</p>



<p>I&#8217;m not just saying that. As I said earlier, I failed at building a plugin business because I didn&#8217;t know how to market myself properly. I didn&#8217;t know how to turn plugins that I built for free into a paid product and how to convert customers. And I kind of think there are others that have done it successfully and there are those that haven&#8217;t. So I&#8217;m here just saying, you know, developers shouldn&#8217;t be paid for their work.</p>



<p>I a hundred percent agree that they should be paid for their work. And I don&#8217;t believe, as I said, I don&#8217;t believe the problem is the plugin developers. Because if you think about it, let&#8217;s go back to the example I had of, you know, Seriously Simple Podcasting. We release an update, so we show that update to the user on the dashboard.</p>



<p>When I&#8217;m testing that, I&#8217;m just seeing that one notification, but when the user has it on their website, they&#8217;re seeing that notification plus however many other useful, important notifications are being pushed out by other plugins. You might be in a situation, and I have seen this before, where you&#8217;ve got an admin dashboard with ten important notifications.</p>



<p>Because there&#8217;s been a WordPress update. So that means what plugin X had to make a change in how they do something, so you need to run an upgrade. Plugin Y made an upgrade change to their tables, so you need to run that. This plugin did this. And those are all legitimate notifications. Now, first of all, the user doesn&#8217;t know what&#8217;s more important and what is primary? You know, they&#8217;re all just the same color. They&#8217;re all just red. So it&#8217;s all just a stress factor. So number one, how do we give plugin developers the option to say, hey, this is a minor update, so you should do this, but not the end of the world. Like with the categories, the example I gave earlier.</p>



<p>How do we give another plugin developer the option to say, this is rather important. If you don&#8217;t do this, something could go wrong with your site. Then how do we say, okay, this is a really low end thing. This is just, you know, okay, the plugin&#8217;s been updated and make a note of this change and you can read it later if you want to. We have no way of doing that right now. We have no way of giving plugin developers, theme developers, an option to create a status level and have a certain type of message that the user can go through.</p>



<p>I mean, we live in a world where our mobile phones have amazing notification systems. And I can control what notifications I want to read. So I have a Facebook account purely to interact with the folks on some of the WordPress groups that I&#8217;m in. But I switched those notifications off, because none of those notifications are primarily important to me. But I certainly switched the notifications to the messaging app that I have with my wife, because those notifications that are important to me. I allow my banking notifications to come through.</p>



<p>If my banking app sends me advertising, I&#8217;m okay with that because I accept the fact that they&#8217;re a business. They need to make money. I&#8217;m already giving them some of my money every month with banking fees and all of that, but they want to make more, fine, I accept that. Because the benefits of receiving the SMS to tell me that my credit card has been cloned, do I want to cancel it, overrides my distaste by advertising, but that, that exists as a concept. WordPress doesn&#8217;t have that place where I, as a user can choose, even simply which notifications I want to see and which I don&#8217;t. So if I say I&#8217;m using SEO plugin X, whatever the name is, and I want to see the notifications because my SEO is important.</p>



<p>Then I will probably accept any upsells or upgrade notifications and I will either read them or just mark them as read, but I will be happy to receive them because the rest of the information they&#8217;re giving me to keep my SEO on board to make sure my meta tags are right, is my featured image working, is my social media image working? All those things that are important to me, I will accept their messaging. And I believe that in doing something like that, where there is a specific, formalized way of doing things. If I see SEO plugin X is using that system, giving me the user the control to receive the messaging, and SEO plug in Z is not, I personally will have more of a inkling to use X, because X is putting the control of notifications back in my hands, which I respect and anybody who&#8217;s bombarding me, I&#8217;ll have less of an inkling to want to use their product.</p>



<p>[00:32:02] <strong>Nathan Wrigley:</strong> I think the mobile phone example is really excellent because we can probably all identify with that. There&#8217;s usually some kind of drop down notification held and little icons appear to alert you to the fact that there&#8217;s something there to read, if you wish. And then of course you scroll down and you can very quickly dismiss them. But then they are, there in a confined area. And that area is familiar to you as the place where notifications are. It can be totally ignored. You could come back to it in five days time, safe in the knowledge that they will be there still.</p>



<p>And were are they important? Well, that&#8217;s on you, you knew they were there and you decided to ignore them. And then further to that, I&#8217;ve seen a trend recently within mobile phone apps to have notification settings within the apps. So you can go in and say to the banking app, look, I&#8217;m very happy to receive the critical updates about security breaches, but I&#8217;d probably rather not have the, I don&#8217;t know, here&#8217;s our latest mortgage deal kind of notifications.</p>



<p>The premise there must be that the banking app realizes that there is some balance of trust to be gained. And if you keep pushing the relevant to some, but irrelevant to most, notifications out at some point, the trust scale tips, and you become tired of this app and you may uninstall it. Now, in the case of banking, it maybe that&#8217;s a step too far, you&#8217;te kind of wedded to that, but you can imagine something where there are three or four rivals and you&#8217;re trying to weigh up, which one&#8217;s better for you. The overwhelm of notifications may just be the thing that tips you against it.</p>



<p>So let&#8217;s move into the project that you&#8217;ve got, WP Notify, because that feels to me as if you&#8217;re trying to replicate the mobile phone model. In other words, everything is tucked away in a particular area. Do you want to describe this enterprise just in broad brush strokes, and then we&#8217;ll talk about specifically what it does, and also how you may get involved in where the project&#8217;s at right now.</p>



<p>[00:34:00] <strong>Jonathan Bossenger:</strong> Sure. So, the goal of WP Notify, as we originally defined in the initial post. And before I get into that, I just want to give a shout out to, sorry dude, I can&#8217;t pronounce your surname, but he was the guy who came up with a proposal originally. He tweeted that he didn&#8217;t have time to try and move it forward. So I contacted him and I picked it up from there. But his original proposal was very simply, we need a better notification system for WordPress. We can&#8217;t take what we currently have, which has been overused, which is limited, and it&#8217;s limited in its technology, but unlimited in what people can do with it, and that&#8217;s the problem. We can&#8217;t take that and make that better. We need something brand new. And then once we have something brand new, that works, that makes sense that balances the needs of the user and the open source project. And the developers who are trying to earn money from their project. Once we have something like that, then it&#8217;s easier to control, to tame these notifications.</p>



<p>Then it&#8217;s easier to put guidelines in place. And then when the developers build their plugins, they are almost forced because when they register a notice, they can only register three fields. Those are the only three fields that are allowed. They can put whatever texts they wanted them, but those are the three fields. They can&#8217;t go overboard. They can&#8217;t make it bigger. They have a specific format, and the way they look. They&#8217;re allowed to add certain things, but not other things. That&#8217;s just where we&#8217;re at. So that&#8217;s what an WP Notify is. It&#8217;s a project that we kicked off now in 2019. So it&#8217;ll be going on for three years in August.</p>



<p>It&#8217;s an open source, what&#8217;s known as a feature plugin. So a feature plugin is something that is, I want to say, not sponsored by, has been accepted by WordPress Core in general as a good idea. We have an official GitHub repository on the WordPress organization and we have a Slack channel, and we are slowly trying to build this better notification system for WordPress.</p>



<p>[00:35:57] <strong>Nathan Wrigley:</strong> So imagine that I&#8217;ve enabled this, I&#8217;ve downloaded it and activated it. I will, by the way, link to the GitHub repository and various other things.</p>



<p>[00:36:07] <strong>Jonathan Bossenger:</strong> I wouldn&#8217;t install and activate it just yet, because it&#8217;s not something that you can actually use yet.</p>



<p>[00:36:12] <strong>Nathan Wrigley:</strong> So rewind. I haven&#8217;t installed it. I haven&#8217;t activated it. None of that stuff has happened. What does it look like? What will it present me with? As a user if I&#8217;m looking at the screen, what will I be seeing?</p>



<p>[00:36:24] <strong>Jonathan Bossenger:</strong> Okay. So it&#8217;s difficult to obviously, you know, describe this in a podcast environment, but the idea is very similar to what we were chatting about when we spoke about the Android or the iOS, the mobile phone notification system.</p>



<p>The idea is to have some kind of icon, not a jumping blinging one, but some kind of icon, be it a bell or something. I think in the design that is. That shows some kind of user interface messaging to say, you have new notifications. The user is then able to click on that. They&#8217;re able to see the notifications come up, they&#8217;re able to scan through, see which ones are important to them, see which ones aren&#8217;t. Read the ones that are dismissed, the ones that aren&#8217;t. The other idea as we spoke about earlier is to give the user the control over who they want to receive notifications from. So if they keep getting a bunch of notifications from plugin X that are never useful to them, they can turn it off if they want to.</p>



<p>If they receive notifications from plugin X that are useful for them, they leave them on. It is up to the user to then choose to either read or dismiss those notifications. We don&#8217;t want to go as far as saying, we&#8217;re only going to show notifications that are state changes or update changes.</p>



<p>We want the plugin developers to be able to advertise their products. We want the theme developers and the product developers to be able to say, hey, we&#8217;ve got a black Friday special on. We&#8217;ve got a discount code running, whatever. We want those things, but we want them in a way that the user has the control. So there are some designs, as you can see, if you go through to the GitHub repository on the read me page, we have links to our design documents.</p>



<p>We have links to our requirements documents. We spent about, due to the nature of open source, we spent probably about a year and a half just working on what are the requirements version one? And that went through a lot of process of feedback and revisions. Then we worked on design and that went through feedback and revisions as well.</p>



<p>Now we&#8217;re starting at the sort of initial implementation phase and our first goal, our first short term goal right now is to take those designs, and actually implement them purely as HTML so that you, Nathan, or anybody else who is interested, could install the plugin and just see what we&#8217;re planning. Just to get a visual idea of what this could look like.</p>



<p>The goal after that is to then get feedback from the community. From the plugin developers, from the theme developers, from the users, from the open source community. And say, does this solve the problem we&#8217;re trying to solve? If it does, then we can start looking at how do we implement this?</p>



<p>[00:38:46] <strong>Nathan Wrigley:</strong> How has the project been received? Have you had a lot of engagement? Has it been a difficult struggle trying to get people involved? What&#8217;s your opinion on where you&#8217;re at given the time that&#8217;s been spent on it?</p>



<p>[00:38:55] <strong>Jonathan Bossenger:</strong> That&#8217;s so here&#8217;s where we get into a little bit of personal history on this. For me, it&#8217;s been a little bit difficult because I&#8217;m not a fully sponsored contributor to opensource. I have a day job. And my day job requires me to do certain things for the business that I work for, be it, when I started it was Castos, now it&#8217;s Delicious Brains. I am allowed X amount of time to contribute to open source, but it&#8217;s not, I&#8217;m not allowed to spend my whole day. So I&#8217;ve kind of worked in a bit of a, it&#8217;s called a project manager slash wrangler role, just to try and get people interested.</p>



<p>We had, when we launched, we had, if you go to the initial launch post, we had loads and loads of comments and everybody was keen and everybody was excited. The problem was, in my opinion at least, everybody had their own idea of how this should work. And there was actually a stage, and if you go back into the history of the meetings, there was a stage where there was a bit of a of almost people fighting with each other in the meetings. Because one was saying it should be done this way, and one was saying it should be done then the other way. And we hadn&#8217;t even, we hadn&#8217;t even done requirements gathering yet, but people were already deciding how to build this thing. But we didn&#8217;t even know what we were building yet. So that kind of tapered off, and then we got a nice core group of folks. There was maybe ten of us. I can&#8217;t remember the exact numbers, but around ten of us that were meeting regularly. We were doing the requirements gathering. And I want to shout out to a bunch of people here Mervin, Hernandez, Ari. I can&#8217;t pronounce his surname, but he works at Yoast now, he was the theme team representative. Aaron from who was at Auttomatic, she&#8217;s somewhere else. A couple of other folks that I&#8217;m forgetting right now. I apologize in advance, but they were really involved and keeping things going. There was another chap who I know he&#8217;s a WordPress user name, but I don&#8217;t know his first name. His represented prestigious as Ramen. I don&#8217;t remember his first name. He was very influential in getting the PHP side going. And what&#8217;s happened now is we&#8217;ve kind of reached this point where COVID happened, and people&#8217;s lives changed. And I noticed that things started going down a bit and we just kind of kept chugging along and chugging along.</p>



<p>And what I&#8217;m now seeing is that with all of this conversation, that&#8217;s going on, people are coming back into the project. So we had a bit of work done last year on getting that HTML going, which I mentioned earlier. That kind of died down. And then recently somebody joined again and said, hey, I want to help out.</p>



<p>So I think the biggest problem that we have as an open source feature plugin, if you will, is just getting the, and it&#8217;s difficult in an source environment because you don&#8217;t, you don&#8217;t have a lot of easy ways to connect the folks. You have to make blog where you can create posts and I&#8217;ll blame myself here. I probably wasn&#8217;t keeping up the post as much as I should have. But you don&#8217;t really have like an official way to, you know, call to arms and get people involved. So whenever I do see these posts that jump up and down about notifications are a problem, then part of me goes, well, we&#8217;re here, we&#8217;re over here, come and have a look.</p>



<p>So we have had some people coming in, now, it looks like we&#8217;re moving forward again with HTML side of things. So I&#8217;m hoping that very soon we&#8217;ll be able to actually release this installable plugin that doesn&#8217;t do much, but actually just looks like what it&#8217;s going to look like. And I&#8217;m hoping my, my hope is that when we can do that, when we can physically give people something to install, and see, then they will get excited and start getting involved again.</p>



<p>[00:42:08] <strong>Nathan Wrigley:</strong> If I were an end user of WordPress and I had things tucked away in a notification panel or whatever that might be, that feels to me like, well, a good repository for notifications. I&#8217;m just wondering from the plugin developer side, especially from the perspective of somebody who is, really, as clean as a whistle. They never misstep and misuse notifications. They just keep everything very slim and very lean and they don&#8217;t bother us too much. What would the future for them look like? Are they going to be additional hurdles that they would have to jump through? Let&#8217;s imagine a scenario in two or three years time. WP Notify has become part of Core and everybody needs to go through the process of registering their notifications in the correct way.</p>



<p>What would the burden be like? Is it very minimal on the plugin developer side? How does that work?</p>



<p>[00:42:57] <strong>Jonathan Bossenger:</strong> So I&#8217;ll say this, I don&#8217;t see admin notices going anywhere anytime soon. And one of the reasons for that is because WordPress Core uses it extensively and will probably continue to do so until we move completely towards a JavaScript admin dashboard.</p>



<p>But I don&#8217;t see admin notices going anywhere anytime soon. So those developers that are using admin notices in big air quotes correctly, won&#8217;t be affected. Those that are using them in different places, but unobtrusively currently it&#8217;s a case of, you register a hook. Your write a little bit of HTML, and your notice works. On the WP Notify side, we want to make it as easy as that as well. So they will be a defined structure. You can actually see, I can send you a link. There&#8217;s a document where we have the defined structure of a notification. And if I remember correctly, it&#8217;s title and description. So very similar to what an admin notice currently looks like. An admin notice just has a description area, if you will. It doesn&#8217;t even, it&#8217;s not even defined, it generally gets used as a description area. We&#8217;ve added a title. And then I seem to recall, can&#8217;t remember hundred percent, I&#8217;ll have to double check, but I think we&#8217;ve also added a possibility to register a URL.</p>



<p>So if the user needs to click on a link to go and trigger some other action or click on a link internally in WordPress to trigger some action. So as a developer, you would have a similar rich user interface where currently you would hook into an admin notice. You would register a callback. Your call back would continue HTML.</p>



<p>In WP Notify you would have a similar hook and then you would register an object, and the object has your title, your description, and if you wanted your URL. So we want to keep it as easy to use as what admin notices is, but as friendly to the user as possible.</p>



<p>[00:44:34] <strong>Nathan Wrigley:</strong> I think probably Jonathan I&#8217;ve asked everything that I wish to ask. The inevitable thing is, is there anything that you wished to describe that I didn&#8217;t ask you about?</p>



<p>[00:44:43] <strong>Jonathan Bossenger:</strong> No. At the end of the day, The only thing that the only thing that I&#8217;m, let&#8217;s call it keen on, if you want a better word is to move this forward. So right now I&#8217;m going to use this opportunity to say if there are any front end developers or any developers out there who are very good at turning design into HTML. You want to find some way to contribute to WordPress, we have an open track ticket, where some work has been done. If we can get that over the line, that will make a huge. Then, if there are any developers who want to make this happen and they&#8217;re very good on the PHP side, or they&#8217;re very good on the JavaScript side, please come along and take a look.</p>



<p>Everything is linked through on our GitHub Wiki. We have a project Wiki dedicated towards the requirements documents, the design, the requirements analysis we did, the open issues and the pull request. It&#8217;s all there. So come along and come and join us, come and help us build a better notification system for WordPress, because once we can put that in place, then we can make amazing things happen.</p>



<p>[00:45:42] <strong>Nathan Wrigley:</strong> Jonathan, if somebody were interested in reaching out to you personally, because they would like to contribute in some way or just find out more. Do you have any links or websites or social channels that you frequent?</p>



<p>[00:45:54] <strong>Jonathan Bossenger:</strong> Sure. I am on Twitter. It&#8217;s John underscore Bossenger because Jonathan Bossenger was too long for Twitter, back in the day. You&#8217;re also welcome to email me. My email address is my full name. Jonathan Bossenger at gmail dot com. I don&#8217;t mind sharing that email address because Gmail&#8217;s pretty good at handling spam. And I would just say that if you do email me to ask me questions, please give me some time because I am very strict with how I manage my emails.</p>



<p>So I&#8217;ll check that mailbox once a day and reply when necessary. Finally, if you want to get involved, go to github dot com slash wordpress slash wp hyphen notify and go through from there. If you are already contributing to WordPress and you&#8217;re already in the WordPress Slack, there is a feature notifications channel where we have our meetings every Wednesday.</p>



<p>And I think it&#8217;s 2:00 PM UTC, please feel free to come and join. And you&#8217;re welcome to DM me in that Slack. Email is the best. I&#8217;m a little bit old now, so this whole Twitter DM thing is something I still struggle with. So, if you want to ask me questions, email is . Probably the best. Otherwise get me onto Twitter.</p>



<p>[00:46:49] <strong>Nathan Wrigley:</strong> Jonathsn Bossenger, thanks for joining us today on the podcast.</p>



<p>[00:46:52] <strong>Jonathan Bossenger:</strong> No problem. Thank you. .</p>
</div>";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, 02 Mar 2022 15: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:45;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";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:49:"WPTavern: The WordPress Web Fonts API Has Arrived";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:30:"https://wptavern.com/?p=130686";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://wptavern.com/the-wordpress-web-fonts-api-has-arrived";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:7757:"<p class="has-drop-cap">The journey toward a web fonts API in WordPress has been a rollercoaster of emotions for developers. After being <a href="https://wptavern.com/proposed-web-fonts-api-not-coming-to-wordpress-5-9-possibly-landing-in-gutenberg-first">punted from the WordPress 5.9 release</a>, it was moved to the Gutenberg project, where it could be built alongside related features that relied on it.</p>



<p>The API has been <a href="https://github.com/WordPress/gutenberg/pull/37140">merged into the Gutenberg plugin</a> and should land in version 12.8. Theme authors who want to test it can clone the dev version of the plugin or <a href="https://gutenbergtimes.com/need-a-zip-from-master/#nightly">download the nightly version</a> from Gutenberg Times.</p>



<p>Jono Alderson opened the <a href="https://core.trac.wordpress.org/ticket/46370">original ticket</a> for a web fonts API in February 2019. However, it was not until late 2021 that it gained a mass of <a href="https://wptavern.com/a-web-font-api-possibly-coming-to-wordpress">support and development</a>. By most accounts, the API looked ready to ship with WordPress 5.9. However, it was put on hold by Andrew Ozz, one of the lead WordPress developers.</p>



<p>It was not a popular decision, but it may have been the best direction. The API was limited because it did not yet have <code>theme.json</code> support. Being only available through PHP meant that theme authors would have mostly been doing what they always have &#8212; rolling out their own solution. This was not the holdup for its unveiling, but it will likely be the API&#8217;s most common use case.</p>



<p>While many wanted to see this feature land in WordPress 5.9, the extra months have given it time to evolve into a cleaner API that integrates with the site and content editors.</p>



<p>Theme authors can now define font-face definitions alongside their corresponding families in <code>theme.json</code> files, and WordPress will automatically load the necessary <code>@font-face</code> CSS in the editor and on the front-end. I have tested this extensively and have not run into any problems.</p>



<p>The potential downside is that the feature only ships with support for a local provider, which means fonts must be bundled with the theme. A Google Fonts provider was part of the original implementation but was later removed.</p>



<p>Ozz goes into <a href="https://github.com/WordPress/gutenberg/pull/36394#issuecomment-981970167">further details in an earlier ticket</a>, but his recommendation was to drop Google Fonts support for now:</p>



<blockquote class="wp-block-quote is-style-default"><p>Add support only for local fonts for now. If WordPress decides to include support for the Google CDN later on, the implementation will have to consider web privacy laws and restrictions and be tied with an eventual User Consent API, etc.</p></blockquote>



<p class="has-neutral-900-color has-neutral-100-background-color has-text-color has-background"><strong>Related article:</strong> <a href="https://wptavern.com/german-court-fines-website-owner-for-violating-the-gdpr-by-using-google-hosted-fonts">German Court Fines Website Owner for Violating the GDPR by Using Google-Hosted Fonts</a></p>



<p>Ari Stathopoulos, one of the developers behind the web fonts API, explained that bundling a solution in core that writes the font files directly to the server <a href="https://github.com/WordPress/gutenberg/pull/36394#issuecomment-986541963">would improve privacy</a>:</p>



<blockquote class="wp-block-quote"><p>Instead of removing it, maybe we could implement them properly, enforcing locally-hosted webfonts to improve performance &amp; privacy? This way we&#8217;d be setting a good example, and we&#8217;d see a significant performance &amp; privacy improvement in the WP ecosystem as themes &amp; plugins that currently use Google-fonts, Adobe-fonts and whatnot will start to adopt the API.</p></blockquote>



<p>For now, it looks like local fonts are officially supported, but theme and plugin authors must register custom providers. One fear with leaving out Google Fonts support is that there will be many competing solutions in the wild instead of one solid provider that everyone can rely on. The more developers build their own wheels, the more likely different implementations ship with bugs or security issues.</p>



<p>Automattic already has a <a href="https://github.com/Automattic/jetpack/pull/23045">draft patch for a Google provider</a> for Jetpack. Assuming that gets pulled into the plugin, it will undoubtedly conflict with a theme down the road that registers its own <code>google</code> provider ID.</p>



<p>Only supporting local fonts could also create larger theme download sizes. For many themes, this should be a non-issue. One, two, or three font packages are reasonable. However, if global style variations become popular, we could see themes that ship dozens of fonts to cover multiple pre-packaged designs. That will quickly lead to bloated theme files and, combined with enough images, theme authors may hit the 10MB limit for submission to the directory. That feels a little like tomorrow&#8217;s problem, but it is something to begin thinking about today.</p>



<p>There are still some issues that need to be solved around the API. However, pushing it through this early in the WordPress 6.0 release cycle will give everyone time to test and help improve it.</p>



<h2 id="testing-bundled-fonts">Testing Bundled Fonts</h2>



<p>There are two methods for registering web fonts with WordPress. For theme authors, the simplest solution is to define them via their <code>theme.json</code> files. This is the method that I will cover below since the file has been standard since WordPress 5.8. There is a PHP example in the <a href="https://github.com/WordPress/gutenberg/pull/37140">pull request ticket</a>.</p>



<p>The <code>theme.json</code> keys and values mostly correspond to the CSS <code>@font-face</code> rule. Theme authors should <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face">brush up on it</a> if it has been a while since they have used it.</p>



<p>For testing, I registered three web fonts through my theme, and the following screenshot shows them in action in the editor:</p>



<img />Testing three web fonts.



<p>Web fonts should be registered under <code>settings.typography.fontFamily</code> as part of a specific font family definition. The following is a copy of the code I am testing in one of my themes using the Cabin font:</p>



<pre class="wp-block-code"><code>{
    "settings": {
        "typography": {
            "fontFamilies": &#91;
                {
                    "fontFamily": "\"Cabin\", sans-serif",
                    "slug": "primary",
                    "name": "Primary",
                    "fontFace": &#91;
                        {
                            "fontFamily": "Cabin",
                            "fontWeight": "400 700",
                            "fontStyle": "normal",
                            "src": &#91; "file:./public/fonts/cabin/Cabin-VariableFont_wdth,wght.ttf" ]
                        },
                        {
                            "fontFamily": "Cabin",
                            "fontWeight": "400 700",
                            "fontStyle": "italic",
                            "src": &#91; "file:./public/fonts/cabin/Cabin-Italic-VariableFont_wdth,wght.ttf" ]
                        }
                    ]
                }
            ]
        }
    }
}</code></pre>



<p>Note that <code>file:./public/fonts/*.ttf</code> is relative to the theme folder. Theme authors need to adjust this to fit their theme structure.</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, 02 Mar 2022 00:58:19 +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:"Justin Tadlock";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:13:"
	
	
	
	
	
	
";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:88:"Post Status: Post Status Comments (No. 7) — The State Of WordPress Admin Notifications";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:31:"https://poststatus.com/?p=93986";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:92:"https://poststatus.com/post-status-comments-no-7-the-state-of-wordpress-admin-notifications/";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:4671:"<h2 id="h-the-only-folks-able-to-do-a-free-plugin-are-ones-that-are-supported-by-a-big-corporation-matt-cromwell">“The only folks able to do a free plugin are ones that are supported by a big corporation&#8230;” — Matt Cromwell</h2>



<p class="has-drop-cap">&#8220;They suck&#8221; might be one way to describe the state of WordPress admin notices as a whole, but that doesn't help us very much, does it? <strong>David Bisset</strong> is joined by <strong>Matt Cromwell</strong>, <strong>Jon Bossenger</strong>, <strong>Aurooba Ahmed</strong>, and several guests to discuss the current pain points and possible technical solutions. Why do developers overdo admin notices in the first place? Learn about <strong>WP Notify</strong>, how it approaches the problem, and how the WordPress community can help make this the core solution.</p>







<p class="has-background"><strong>Post Status Comments</strong> <img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f4ac.png" alt="💬" class="wp-smiley" /> is a stage for WordPress professionals to exchange ideas and talk about recent topics and trends.<br /><br /><a href="https://poststatus.com/podcast/comments/">Browse past episodes</a> and subscribe to <a href="https://poststatus.com/podcasts/">our podcasts</a> on&nbsp; <a href="https://open.spotify.com/show/1m3xwXbe0MG5BzFVPtB0A7">Spotify</a>, Amazon Music, <a href="https://podcasts.google.com/feed/aHR0cHM6Ly9mZWVkcy5zaW1wbGVjYXN0LmNvbS8ySkU5c2M4UA">Google Podcasts</a>, <a href="https://itunes.apple.com/us/podcast/post-status-draft-wordpress/id976403008">iTunes</a>, <a href="https://castro.fm/podcast/c53552c6-1ee0-4fc4-9de4-08ed6bf1ee4d">Castro</a>, <a href="https://www.youtube.com/c/PostStatus">YouTube</a>, <a href="http://www.stitcher.com/podcast/krogsgard/post-status-draft-wordpress-podcast">Stitcher</a>, <a href="https://player.fm/series/wordpress-post-status-podcasts">Player.fm</a>, <a href="https://pca.st/05rR">Pocket Casts</a>, <a href="https://wordpress-post-status-draft-podcast.simplecast.com/">Simplecast</a>, or get them by <a href="https://feeds.simplecast.com/2JE9sc8P">RSS</a>. <img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f399.png" alt="🎙" class="wp-smiley" /></p>



<h3 id="%f0%9f%99%8f-sponsor-godaddy-pro"><img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f64f.png" alt="🙏" class="wp-smiley" /> Sponsor: <a href="https://poststatus.com/stellarwp">StellarWP</a></h3>



<p>We are a collective of WordPress innovators, empowering business owners and creators with plugins and tools to help them thrive. We build great plugins, but we don’t stop there; we continually challenge ourselves to keep innovating and improving.</p>



<p>Our solutions include the most trusted names in WordPress, with more than 2.5 Million installs. Since 2021, we’ve grown to encompass seven brands and dozens of plugins.</p>



<p>StellarWP is part of the Liquid Web family of brands.</p>



<div class="wp-block-spacer"></div>



<hr class="wp-block-separator logo is-style-default" />



<div class="wp-block-spacer"></div>



<h3 id="h-mentioned-in-the-show"><img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f517.png" alt="🔗" class="wp-smiley" /> Mentioned in the show:</h3>



<ul><li><a href="https://github.com/WordPress/wp-notify">WP Notify &#8211; A Notification Center for WordPress (Feature Project)</a></li><li><a href="https://make.wordpress.org/core/2022/02/01/wp-notify-status-update/">WP Notify Status Update</a></li><li><a href="https://www.mattcromwell.com/delayed-admin-notice/">Encourage Donations to your Free Plugins with a Delayed Admin Notice</a></li><li><a href="https://wptavern.com/clarity-ad-blocker-for-wordpress-announced-receives-mixed-reactions">Clarity Ad Blocker for WordPress Announced, Receives Mixed Reactions</a></li></ul>



<h3 id="follow-our-panelists-and-post-status-on-twitter-a4ffc805-90f1-41dc-9135-61b3ff20cb40">Follow Our Panelists (and Post Status) on Twitter:</h3>



<ul><li><a href="https://twitter.com/dimensionmedia">David Bisset</a></li><li><a href="https://twitter.com/aurooba">Aurooba Ahmed</a></li><li><a href="https://twitter.com/jon_bossenger">Jon Bossenger</a></li><li><a href="https://twitter.com/learnwithmattc?lang=en">Matt Cromwell</a></li><li><a href="https://twitter.com/post_status" target="_blank" rel="noreferrer noopener">Post Status</a></li></ul>



<div class="wp-block-spacer"></div>



<hr class="wp-block-separator logo is-style-default" />



<div class="wp-block-spacer"></div>



<div class="wp-block-spacer"></div>



<hr class="wp-block-separator logo is-style-default" />



<div class="wp-block-spacer"></div>



<p></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, 01 Mar 2022 21:26: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:12:"David Bisset";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:13:"
	
	
	
	
	
	
";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:82:"WPTavern: Strattic Acquires WP2Static  Plugin, Plans to Relaunch on WordPress.org";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:30:"https://wptavern.com/?p=130646";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:90:"https://wptavern.com/strattic-acquires-wp2static-plugin-plans-to-relaunch-on-wordpress-org";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:3332:"<p>Strattic, a WordPress hosting company that creates static files managed via a headless install, has <a href="https://www.strattic.com/wp2static-joins-strattic/">acquired WP2Static</a>, an open source plugin for generating a static WordPress site. Leon Stafford, the plugin&#8217;s creator, has been working for the company for the past nine months and will continue to maintain WP2Static.</p>



<p>In 2020, Stafford <a href="https://staticword.press/t/removal-of-wp2static-from-wordpress-org/159">removed WP2Static from WordPress.org</a> after the downsides of hosting in the directory began to outweigh the benefits for his project. He cited WordPress.org&#8217;s lack of a straightforward way to  alert users to important updates, users abusing the Reviews section to file issues, the inability to disable support, and the cumbersome plugin release process.</p>



<p>WP2Static is a tool aimed more at DIY users who want to manage their own static site generation, but Stafford found that hosting on WordPress.org often brought the plugin to users who didn&#8217;t fully understand its function.</p>



<p>&#8220;It was almost too easy for people to install <a href="https://wordpress.org/plugins/static-html-output-plugin/">WP2Static/Static HTML Output</a> when in the wp.org repository,&#8221; he said. &#8220;This lead to quite a few people installing it on their live production servers and expecting some magic performance improvement, which is not the way it’s intended to be used.&#8221; </p>



<p>Acquiring WP2Static allows Strattic to funnel the less technical crowd to its hosting services, as well as those who prefer a more managed experience. At the moment users get updates from the <a href="https://wp2static.com/download/">WP2Static website</a>, or via the Composer package, or GitHub download. Strattic plans to relaunch the plugin on WordPress.org to improve its discovery, installation, and update process.</p>



<p>&#8220;While Leon was focusing development primarily for the open source/GitHub users of the plugin, we&#8217;d like to get this static site solution helping as many WordPress users as possible and for that, the WordPress repository makes it the easiest experience for them,&#8221; Strattic CEO Miriam Schwab said.</p>



<p>Schwab said prior to acquiring WP2Static, it was already generating high quality leads for Strattic, as Stafford had listed the company as an alternative to using the plugin.</p>



<p>&#8220;We expect this trend will continue and grow now that WP2Static is part of the Strattic family,&#8221; Schwab said. &#8220;WP2Static is an excellent option for users who want to test the waters with static WordPress in a low-commitment way, and also for users who are more &#8216;DIY&#8217; and get excited about building their own infrastructure and architecture for their websites, and maintaining it on an ongoing basis.&#8221;</p>



<p>Strattic will be marketing the plugin as a starting point. Users who outgrow WP2Static will be encouraged to look to Strattic for more complex functionality, such as dynamic plugins, forms, search, 301 redirects, SEO plugins, multi-language, and other features not supported by the plugin. Schwab said they do not currently plan to rebrand WP2Static but are considering revising its name to “WP2Static by Strattic.&#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:"Tue, 01 Mar 2022 21:16:37 +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:13:"Sarah Gooding";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:13:"
	
	
	
	
	
	
";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:74:"WPTavern: WordPress Multisite Is Still a Valuable and Often Necessary 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:30:"https://wptavern.com/?p=130441";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:85:"https://wptavern.com/wordpress-multisite-is-still-a-valuable-and-often-necessary-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:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6194:"<p class="has-drop-cap">Rob Howard rocked the boat last week in calling for the <a href="https://masterwp.com/its-time-to-deprecate-wordpress-multisite/">deprecation of WordPress multisite</a> in the latest MasterWP newsletter. He argued that &#8220;the brave and noble add-on is no longer necessary or valuable to developers.&#8221; The <a href="https://twitter.com/ChrisWiegman/status/1496500570328342533">responses via Twitter</a> were swift and in disagreement.</p>



<p>Before WordPress 3.0, multisite was an entirely separate system called <a href="https://codex.wordpress.org/WordPress_MU">WPMU</a> (WordPress MultiUser). It was a mess to set up, and one of the best things to ever happen to it was that it was rolled into core WordPress. It became a first-class citizen in the WordPress world, and its setup is now simple enough that nearly anyone can get a network up and running in no time.</p>



<p>I have not used multisite much in my career in the WordPress space. My primary use case has been for setting up theme and plugin demos. These are sites that I do not intend to touch much outside of their initial setup. Multisite always makes it easy to manage theme and plugin updates from the network admin.</p>



<p>Howard argued that this is no longer necessary in today&#8217;s world:</p>



<blockquote class="wp-block-quote"><p>Likewise, sharing themes and plugins between sites no longer seems like a benefit to developers or end-users. With one click, we can deploy a parent theme from a Git repository to an unlimited number of sites hosted anywhere in the world – so what&#8217;s the real value of having a theme on the Multisite network?</p></blockquote>



<p>Even with the vast tools available for deploying such things via Git, sometimes I prefer to avoid complicating matters. I can work in the command line well enough, but having that central location to manage all of my sites in one place is simpler. The argument also leaves out an entire segment of users who run multisite and have never even heard of Git. Multisite is sometimes a user tool.</p>



<p>The most complex multisite setup I have worked on was for a university. I was contracted to do some development work for another WordPress agency a few years ago. My focus area was extending the user role and permissions system.</p>



<p>The network had sites for each school, department, and various other projects. Setting all of this up on multisite allowed the permanent dev team to create new sites on an as-needed basis instead of spinning up an entirely new WordPress install. Everyone also had user access via their university email and password. It is possible to share a user database via multiple single-site installs, but it adds another layer of complexity that does not exist with multisite.</p>



<p>I cannot imagine the agency running this through 100s of individual installs. I am sure that some systems would make this easier, but a solution already exists in WordPress.</p>



<p>My multisite experience is limited. However, I have routinely talked with and helped fellow developers actively working on networks with 1,000s of sites in the enterprise and education sectors. It is almost a given that they are running multisite for every job.</p>



<p>WordPress co-founder Mike Little explained why multisite is often necessary for his work <a href="https://twitter.com/mikelittlezed1/status/1496912733048033285">via Twitter</a>:</p>



<blockquote class="wp-block-quote"><p>Of course, I manage a hundred single instances too, a couple of them are 3-6-site multisites, but most are single (and should remain so). But one client of mine has close to 450 sub-sites on one of his multisites. That would be impossible to manage as separate sites.</p><p>Around 1K users per subsite, up to 100+pages of content created/day during an event. etc. It&#8217;s also constantly being developed.</p><p>Rolling out fortnightly code changes to 400+ single sites (not mentioning there are more than a dozen other instances with up to 50 sub sites each) would be unmanageable. And this isn&#8217;t a for profit org, so doesn&#8217;t have unlimited funds.</p></blockquote>



<p>I have sat on this article since last Wednesday. At the time, I was ready to leap into the fire and defend multisite. However, as the responses rolled in via Twitter to the MasterWP article, I was disheartened by a few of the responses from the WordPress community.  I did not want to feel like I was piling on.</p>



<p>The world of social media has made knee-jerk reactions all too common and uninviting to those outside of the inner WordPress circle. There is too much pressure to not say the &#8220;wrong&#8221; thing that so few end up saying anything worthwhile &#8212; or at all. Fortunately, there is still some thoughtful discourse, such as the <a href="https://wpowls.co/articles/its-time-to-give-wordpress-multisite-some-love/">response article</a> by Maciek Palmowski on WP Owls and from others on Twitter.</p>



<p>Perhaps Howard was <em>really</em> just writing a click-bait article. However, because he only recently became the new owner of the MasterWP newsletter, I felt like I owed it to him to believe he was attempting to generate sincere discussion. Maybe his conclusion of deprecating a vital feature for many was off-base, but the conversation around problems with multisite is worth having.</p>



<p>Regardless of the merits of Howard&#8217;s argument, it did lead to an idea that might just be worth exploring. <a href="https://twitter.com/schlessera/status/1496646033891201028">Alain Schlesser tweeted</a>:</p>



<blockquote class="wp-block-quote"><p>I&#8217;d prefer for single-site to be deprecated instead, to not have a random differentiation anymore. Everyone just has a network, but some only have a single site on them. Would simplify everything…</p></blockquote>



<p>I do not know what such a WordPress would look like, but I do know that it could simplify the multisite installation process if there were only one way of doing it. Perhaps there would be fewer edge cases, plugin issues, and wrinkles that developers need to iron out if there were only one flavor of WordPress.</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, 01 Mar 2022 02:13: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:14:"Justin Tadlock";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:13:"
	
	
	
	
	
	
";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:51:"WordPress.org blog: People of WordPress: Tonya Mork";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=12151";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:66:"https://wordpress.org/news/2022/02/people-of-wordpress-tonya-mork/";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:11984:"<p><strong>In this series, we share some of the inspiring stories of how WordPress and its global network of contributors can change people’s lives for the better. This month we feature a website developer and engineer from the US, who found the software and its community provide the impetus to keep her going forward.</strong></p>



<p>WordPress gave Tonya Mork a new lease of energy after a health crisis from which she nearly died. She had spent two decades as an electrical and software engineer in high tech automated manufacturing. But when she discovered the WordPress software, teaching it to others became her new purpose. Through this discovery, she has gone on to help thousands of developers understand and build code in great depth.</p>



<p>As part of her WordPress journey, she has shared her skills in the roles of Release Coordinator and the Core Tech Editor for the most recent major WordPress release, <a href="https://make.wordpress.org/core/5-9/">5.9</a> Joséphine.&nbsp;</p>



<div class="wp-block-image"><img width="1024" height="515" src="https://i0.wp.com/wordpress.org/news/files/2022/02/featured-img-tonyamork.jpg?resize=1024%2C515&ssl=1" alt="Tonya pictured in her work room" class="wp-image-12326" /></div>



<h2 id="life-takes-an-unexpected-turn">Life takes an unexpected turn</h2>



<p>For the first 22 years of Tonya’s life, she rose through the ranks from enlisted personnel in the US Navy to a highly sought after chief engineer with a multi million-dollar industrial automation engineering firm.  </p>



<p>However, while she was working in engineering, her life was to change dramatically. In 2007, Tonya started to face health challenges that had an impact on all that she had known.</p>



<blockquote class="wp-block-quote"><p><strong>“My career defined me. It was my canvas and my art. When it was gone, I did not recognize myself.</strong></p><cite>Tonya Mork</cite></blockquote>



<p>One day, she woke up at home ready to visit a client’s facility where her firm was building a robotic system. She said: “As I headed for the door, I fell to my knees, as this wave of pain crushed down on my chest.”</p>



<p>Doctors diagnosed her with a very rare heart disease that caused her blood vessels to spasm, cutting off blood to whatever was downstream of the blockage. </p>



<p>A few months later, she was diagnosed with a second rare and more serious condition, related to the migraines from which she had been suffering. Combined with her heart condition, this made every migraine attack life-threatening.</p>



<p>For nearly seven years, the unexpected changes to her health left her mostly homebound and constantly monitored. This meant she had to close her engineering firm and say goodbye to staff and clients. </p>



<p>“My career defined me. It was my canvas and my art. When it was gone, I was lost. I didn’t recognize myself.”</p>



<p>But in her darkest hour, she found her strength. Tonya made a choice to move forward, and make the most of her life.</p>



<p>“When you are at rock bottom, you have to make a decision or else it will consume you. My decision was that I chose to be happy,” said Tonya.</p>



<p>One of Tonya’s first steps was to start writing a blog using WordPress. In this she shared insights on how to find peace and joy in any situation. She wrote about kindness and helping one another.&nbsp;</p>



<p>The joy of making solutions through WordPress became a way for Tonya to accept her new life and not feel as limited by her health. She wanted purpose, and in WordPress, she found just that.</p>



<p>Tonya felt she could do something worthwhile in the virtual world.&nbsp;</p>



<h2 id="a-ray-of-hope-for-tonya">A ray of hope for Tonya</h2>



<div class="wp-block-image"><img width="1000" height="750" src="https://i1.wp.com/wordpress.org/news/files/2022/02/tonya.jpg?resize=1000%2C750&ssl=1" alt="" class="wp-image-12327" /></div>



<p>In 2013, Tonya’s health deteriorated further. She was admitted into intensive care and was diagnosed with a third rare disease, this time related to her autoimmunity. She was not expected to survive this time. </p>



<p>Following what she describes as a ‘miraculous recovery,’ she became stronger and was able to stop relying on a wheelchair. She used the energy from working on websites to keep going. “WordPress kept my mind alive,” said Tonya.</p>



<p>She had first used WordPress for her engineering firm’s intranet. But when she discovered the software’s full potential and the collaborative opportunities of open source, it opened a new world.&nbsp;</p>



<blockquote><p>&#8220;Finding WordPress helped me to find myself again&#8221;</p><cite>Tonya Mork</cite></blockquote>



<p>During the years which followed, she donated her time to build some WordPress websites and plugins. She said: “Through giving my time, I was able to do something other than sit in isolation.” </p>



<p>Tonya was amazed by the sharing in open source in general and in WordPress in particular. She said: “I was amazed to see people sharing so much information freely with one another. In my former engineering world, information was proprietary. Throughout my career, I had worked to break down those silos and help anyone to understand complex systems. I was drawn to this open community.”&nbsp;</p>



<p>She also became aware that WordPress developers were hungry to learn more about development. She wanted to be part of the solution with her passion for teaching and the knowledge she had gained in industry.<br /><br />She said: “Finding WordPress helped me to find myself again. Here in this community, I was able to feel like a person again, not a sick one, but a professional with something to give.”</p>



<p>As her interest in the software grew, Tonya decided to start a non-profit where she turned to WordPress to build the websites. This re-sparked her interest in programming. She said: “I wanted to really know the code and understand what made it tick.”</p>



<p>The realization led Tonya to start the WP Developers’ Club, which in turn spawned <a href="https://knowthecode.io/">Know the Code</a>, to help educate individual developers, and is still used today.</p>



<h2 id="from-helping-wordpress-companies-to-working-on-wordpress-core">From helping WordPress companies to working on WordPress Core</h2>



<div class="wp-block-image"><img width="300" height="300" src="https://i0.wp.com/wordpress.org/news/files/2022/02/tonya-with-dog.jpg?resize=300%2C300&ssl=1" alt="Tonya pictured with her dog" class="wp-image-12328" /></div>



<p>Tonya went on to work with big and medium size WordPress companies helping their developers and supporting them in raising their firms’ leverage with WordPress.</p>



<p>By late 2020, she knew she wanted to do even more with WordPress.</p>



<p>In February 2021, Tonya joined an international firm in the ecosystem and began working closely on WordPress Core.</p>



<p>At that time, WordPress Core was pulling together a new Triage team. Tonya started volunteering on that team to find collaborative solutions, and help others do so. In 2020 for <a href="https://wordpress.org/news/2020/12/simone/">WordPress 5.6 Simone</a>, she became the release’s Triage lead, and again for <a href="https://make.wordpress.org/core/5-7/">WordPress 5.7 Esperanza</a>.&nbsp;</p>



<p>In 2021, she became a Test Team Rep and helped to expand the team and is an advocate for the value of testing and feedback in the release development process.</p>



<h2 id="a-new-successful-chapter-with-wordpress-5-9">A new, successful chapter with WordPress 5.9</h2>



<div class="wp-block-image"><img width="1024" height="480" src="https://i1.wp.com/wordpress.org/news/files/2022/02/WP59-thumbnail-jb.png?resize=1024%2C480&ssl=1" alt="Tonya was one of the notable contributors to the WordPress 5.9 release featured in this picture." class="wp-image-12329" /></div>



<p>Tonya’s passion for the software and getting people involved in its growth continued. For the WordPress 5.9 release in 2021, she took on the role of both the Core Tech Lead and the Release Coordinator. As this was a big release and included the first major implementation of Full Site Editing, it had many moving parts and hundreds of contributors. She was able to share the skills she had learned in communication and project management from her days streamlining and documenting engineering software and processes.&nbsp;</p>



<p>In the first 24 hours of WordPress 5.9 landing, it had more than 10 million downloads—and 17 formally reported bugs.</p>



<h2 id="giving-back-to-open-source">Giving back to open source</h2>



<p>Now in what Tonya describes as her third chapter. She said: “I’m a very different person from the engineer I used to know. What really matters in this world is when you reach out and make a difference in someone’s life.”</p>



<p>She feels she has found her purpose in this life. “I’m on a mission to give back and make a difference. Teaching is how I will do it. And in WordPress I have found my professional home, and I have all this software knowledge that I just want to share.”</p>



<h2 id="share-the-stories">Share the stories</h2>



<p>Help share these stories of open source contributors and continue to grow the community. Meet more WordPressers in the <a href="https://wordpress.org/news/category/newsletter/interviews/">People of WordPress series.</a> #ContributorStory.</p>



<h2 id="contributors-to-this-feature">Contributors to this feature</h2>



<p>Thank you to Tonya Mork (<a href="https://profiles.wordpress.org/hellofromtonya/" class="mention"><span class="mentions-prefix">@</span>hellofromtonya</a>) for sharing her story. </p>



<p>Interviews and feature by Abha Thakor (<a href="https://profiles.wordpress.org/webcommsat/" class="mention"><span class="mentions-prefix">@</span>webcommsat</a>) and Mary Baum (<a href="https://profiles.wordpress.org/marybaum/" class="mention"><span class="mentions-prefix">@</span>marybaum</a>). Reviewed by Chloe Bringmann (<a href="https://profiles.wordpress.org/cbringmann/" class="mention"><span class="mentions-prefix">@</span>cbringmann</a>), Nalini Thakor (<a href="https://profiles.wordpress.org/nalininonstopnewsuk/" class="mention"><span class="mentions-prefix">@</span>nalininonstopnewsuk</a>), Meher Bala (<a href="https://profiles.wordpress.org/meher/" class="mention"><span class="mentions-prefix">@</span>meher</a>), and Anjana Vasan (<a href="https://profiles.wordpress.org/anjanavasan/" class="mention"><span class="mentions-prefix">@</span>anjanavasan</a>). Photo editing Reyez Martínez (<a href="https://profiles.wordpress.org/rmartinezduque/" class="mention"><span class="mentions-prefix">@</span>rmartinezduque</a>) and Jean Baptiste Audras (<a href="https://profiles.wordpress.org/audrasjb/" class="mention"><span class="mentions-prefix">@</span>audrasjb</a>). </p>



<p><em>Thanks to Josepha Haden Chomphosy&nbsp;(@<a href="https://profiles.wordpress.org/chanthaboune/">chanthaboune</a>) and Topher DeRosia (<a href="https://profiles.wordpress.org/topher1kenobe/">@topher1kenobe</a>) and others for their support&nbsp;</em>of this initiative.</p>



<div class="wp-block-media-text is-stacked-on-mobile is-vertically-aligned-center"><img width="180" height="135" src="https://i1.wp.com/wordpress.org/news/files/2020/03/heropress_logo_180.png?resize=180%2C135&ssl=1" alt="HeroPress logo" class="wp-image-8409 size-full" /><div class="wp-block-media-text__content">
<p class="has-small-font-size"><em>This People of WordPress feature is inspired by an essay originally published on </em><a href="https://heropress.com/"><em>HeroPress.com</em></a><em>, a community initiative created by Topher DeRosia. It highlights people in the WordPress community who have overcome barriers and whose stories might otherwise go unheard. </em>#HeroPress </p>
</div></div>";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, 28 Feb 2022 23:55:13 +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:28:"webcommsat AbhaNonStopNewsUK";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";O:42:"Requests_Utility_CaseInsensitiveDictionary":1:{s:7:"*data";a:8:{s:6:"server";s:5:"nginx";s:4:"date";s:29:"Wed, 16 Mar 2022 17:40:30 GMT";s:12:"content-type";s:8:"text/xml";s:4:"vary";s:15:"Accept-Encoding";s:13:"last-modified";s:29:"Wed, 16 Mar 2022 17:30:08 GMT";s:15:"x-frame-options";s:10:"SAMEORIGIN";s:4:"x-nc";s:9:"HIT ord 1";s:16:"content-encoding";s:2:"br";}}s:5:"build";s:14:"20220125233905";}