<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~files/feed-premium.xsl"?>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:friends="wordpress-plugin-friends:feed-additions:1" xmlns:feedpress="https://feed.press/xmlns" xmlns:media="http://search.yahoo.com/mrss/" xmlns:podcast="https://podcastindex.org/namespace/1.0" version="2.0">
  <channel>
    <feedpress:locale>en</feedpress:locale>
    <atom:link rel="hub" href="https://feedpress.superfeedr.com/"/>
    <title>KrautPress</title>
    <atom:link href="https://feed.kraut.press/en/" rel="self" type="application/rss+xml"/>
    <link>https://kraut.press</link>
    <description>KrautPress is a community project all about WordPress. Besides news about the content management system, connected software projects, especially projects of fellow community members, Meetups and WordCamps find a stage here.</description>
    <lastBuildDate>Fri, 03 Apr 2026 07:54:19 +0000</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>
hourly</sy:updatePeriod>
    <sy:updateFrequency>
1</sy:updateFrequency>
    <image>
      <url>https://kraut.press/wp-content/uploads/2024/03/kp_favicon-150x150.png</url>
      <title>KrautPress</title>
      <link>https://kraut.press</link>
      <width>32</width>
      <height>32</height>
    </image>
    <item>
      <title>EmDash CMS Shows Why Gutenberg Is Hitting Limits with HTML as a Content Storage Format</title>
      <link>https://kraut.press/2026/emdash-cms-shows-gutenberg-limits/</link>
      <comments>https://kraut.press/2026/emdash-cms-shows-gutenberg-limits/#respond</comments>
      <dc:creator><![CDATA[Hendrik Luehrsen]]></dc:creator>
      <pubDate>Fri, 03 Apr 2026 07:54:17 +0000</pubDate>
      <category><![CDATA[Gutenberg]]></category>
      <category><![CDATA[WordPress Strategy]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=55762</guid>
      <description><![CDATA[Note:&#160;This article was first published in German at&#160;WP Munich. When Cloudflare introduced&#160;EmDash as a new alternative to WordPress&#160;in early April 2026, what mattered was not so much the product itself, but what the launch made visible. The comparison exposes an old weakness in Gutenberg: content ultimately gets stored as HTML in&#160;post_content, not as a structured [&#8230;]]]></description>
      <content:encoded><![CDATA[
<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>Note:</strong>&nbsp;This article was first published in German at&nbsp;<a href="https://www.wp-munich.de/blog/emdash-cms-und-gutenberg-warum-html-als-content-speicher-zum-problem-wird/">WP Munich</a>.</p>
</blockquote>



<p class="wp-block-paragraph">When Cloudflare introduced&nbsp;<a href="https://blog.cloudflare.com/emdash-wordpress/">EmDash as a new alternative to WordPress</a>&nbsp;in early April 2026, what mattered was not so much the product itself, but what the launch made visible. The comparison exposes an old weakness in Gutenberg: content ultimately gets stored as HTML in&nbsp;<code>post_content</code>, not as a structured data model.<br>That this is a fundamental problem is not a new observation. The debate around&nbsp;<a href="https://www.wp-munich.de/blog/strukturierte-daten-in-wordpress-moglichkeiten-und-grenzen-mit-gutenberg/">structured data in WordPress</a>&nbsp;has followed Gutenberg from the very beginning, and I have been criticizing this lack of support since 2017. It was already clear early on that content on the web would become more than pure output. It needs to be categorized, sorted, transformed, and moved into new contexts. That is exactly what determines how future-proof a CMS really is today.<br>So the point is not whether Gutenberg is a good editor. The point is that Gutenberg does not take its internal structure seriously enough when it comes to storage. As long as content is primarily stored as HTML, structure remains something that has to be extracted again when needed. In a web reality shaped by APIs, headless architectures, and AI-powered workflows, that increasingly feels like a design flaw WordPress is still carrying around.</p>



<h2 class="wp-block-heading">Why EmDash CMS Matters Right Now</h2>



<p class="wp-block-paragraph">Cloudflare is not positioning EmDash CMS as just another new CMS but as an alternative to a specific way of storing and processing content. That is exactly why this launch matters. EmDash CMS uses structured content instead of serialized HTML and relies on&nbsp;<a href="https://github.com/portabletext/portabletext">Portable Text</a>, a JSON-based rich text format. In doing so, it separates content from presentation at exactly the point where Gutenberg still ties the two too closely together.<br>A look at Gutenberg&#8217;s architecture shows just how fundamental that difference is. In the official WordPress documentation on&nbsp;<a href="https://developer.wordpress.org/block-editor/explanations/architecture/data-flow/">Data Flow and Data Format</a>, WordPress describes the block tree as existing in memory while editing, while&nbsp;<code>post_content</code>is what ultimately gets stored. The page on&nbsp;<a href="https://developer.wordpress.org/block-editor/getting-started/fundamentals/markup-representation-block/">Markup Representation of a Block</a>&nbsp;also shows that this storage happens through HTML with block comments. In other words, Gutenberg works with structure internally but does not treat that structure as the primary data model when saving content.<br>That is why EmDash CMS matters right now. The launch is not just a product comparison. It creates a contrast that makes Gutenberg&#8217;s architectural weakness very easy to see. When a new CMS in 2026 openly treats content as data, the storage question is no longer a technical footnote. It is an architectural question.</p>



<h2 class="wp-block-heading">The Real Problem Is Not the Editor, but the Storage Format</h2>



<p class="wp-block-paragraph">Gutenberg&#8217;s weakness does not show up while writing. It shows up when content is supposed to live beyond the editor. As long as a text is only created in WordPress and then rendered, the storage decision barely stands out. It only becomes relevant when content needs to be processed through interfaces, reworked, or moved into other systems. That is the moment when an internal implementation detail turns into a structural limitation.<br>The reason is simple: Gutenberg does not store its content structure as the primary data model but as serialized output in&nbsp;<code>post_content</code>. The WordPress documentation on&nbsp;<a href="https://developer.wordpress.org/block-editor/explanations/architecture/data-flow/">Data Flow and Data Format</a>&nbsp;explicitly describes this separation. What exists as a block structure in the editor is converted into an HTML-based format when saved. The page on&nbsp;<a href="https://developer.wordpress.org/block-editor/getting-started/fundamentals/markup-representation-block/">Markup Representation of a Block</a>&nbsp;shows how that structure is preserved through comment markers and embedded attributes.<br>That works, but it comes at a cost. As soon as other systems are supposed to understand not the output but the meaning of a piece of content, that structure first has to be extracted again from the stored HTML. WordPress provides&nbsp;<a href="https://developer.wordpress.org/reference/functions/parse_blocks/"><code>parse_blocks()</code></a>&nbsp;as the central function for that purpose. The fact that the official reference points to memory overhead, and that&nbsp;<a href="https://developer.wordpress.org/reference/classes/wp_block_processor/"><code>WP_Block_Processor</code></a>&nbsp;was later introduced as a more efficient access layer makes the friction pretty clear.<br>It becomes even more obvious with WordPress VIP&#8217;s&nbsp;<a href="https://github.com/Automattic/vip-block-data-api">Block Data API</a>. It exposes Gutenberg content as structured JSON and is explicitly justified as a way to avoid HTML parsing. That is the key point. If a system first needs an additional API to expose its content in a form that can be used sensibly by headless architectures, GraphQL, or other applications, that mostly shows where the original storage logic runs into its limits.<br>That also makes it clear why EmDash CMS is such an interesting comparison. The contrast does not just show that another path is possible. Above all, it shows how much additional effort WordPress now has to invest just to get back to the structure it never truly prioritized when saving content.</p>



<h2 class="wp-block-heading">Why WordPress Framed This Decision the Way It Did, and Why That Still Falls Short</h2>



<p class="wp-block-paragraph">WordPress did not land on HTML in&nbsp;<code>post_content</code>&nbsp;by accident. It justified that decision deliberately. In the official documentation on&nbsp;<a href="https://developer.wordpress.org/block-editor/explanations/architecture/data-flow/">Data Flow and Data Format</a>, the argument is about compatibility, a single source of truth, and avoiding competing storage models. The&nbsp;<a href="https://developer.wordpress.org/block-editor/getting-started/faq/">Block Editor FAQ</a>&nbsp;makes a similar case and contrasts the HTML-oriented approach with the idea of storing content as JSON in post meta instead.<br>From our perspective, that rationale still falls short. It thinks too much from the logic of existing WordPress structures and not enough from the question of what content needs to be able to do in the future. Compatibility is a valid point. But it is not a substitute for a clean structural model.<br>The problem was visible from the start. As soon as content is meant to be more than rendered output, it is not enough to drag structure along implicitly inside HTML. At that point you need a data model that does not merely display content but also makes it machine readable, sortable, and processable. That is exactly the criticism we raised early on in our discussion of&nbsp;<a href="https://www.wp-munich.de/blog/strukturierte-daten-in-wordpress-moglichkeiten-und-grenzen-mit-gutenberg/">structured data in WordPress</a>.<br>Looking back, the reasoning now feels less like a durable solution and more like a defensive decision in favor of short-term system stability. The price is still visible today. Structure has to be extracted from HTML afterward instead of being the foundation of the content from the start.</p>



<h2 class="wp-block-heading">EmDash CMS Shows What Another Path Can Look Like</h2>



<p class="wp-block-paragraph">That is why EmDash CMS is more than just a new CMS. What matters is not that Cloudflare is building a publishing system. What matters is that EmDash CMS addresses the storage question at exactly the point Gutenberg has avoided it until now.<br>The crucial difference is architectural. EmDash CMS uses&nbsp;<a href="https://github.com/portabletext/portabletext">Portable Text</a>, a JSON based rich text format, and cleanly separates content from later presentation. That is not a minor technical detail. It reflects a fundamentally different attitude. Content does not become structurally readable only after rendering or parsing. It already carries that structure from the beginning.<br>That is exactly where the real provocation for WordPress lies. EmDash CMS implicitly questions the assumption that HTML is a sensible place to store content permanently. If content now moves through different systems as data objects, then HTML is not the foundation anymore. It is just one possible output form. EmDash CMS treats that reality as its starting point. Gutenberg still treats it more like a problem to solve afterward.<br>Of course, that does not automatically mean EmDash CMS is already the final answer to everything. The project is still too new for that. But the launch makes one thing very clear: how content is stored is no longer a technical footnote. It determines how well a CMS can connect to the reality of modern content.</p>



<h2 class="wp-block-heading">What WordPress Is Now Trying to Repair After the Fact</h2>



<p class="wp-block-paragraph">The clearest sign of the real problem is that WordPress VIP provides Gutenberg content as structured JSON through the&nbsp;<a href="https://github.com/Automattic/vip-block-data-api">Block Data API</a>. This API does not simply extend Gutenberg. It compensates for a storage model that never put structure first. WordPress VIP states the benefit plainly: it is meant to avoid HTML parsing.<br>The same applies to&nbsp;<a href="https://developer.wordpress.org/reference/functions/parse_blocks/"><code>parse_blocks()</code></a>&nbsp;and&nbsp;<a href="https://developer.wordpress.org/reference/classes/wp_block_processor/"><code>WP_Block_Processor</code></a>. What you see here is not some luxury feature, but the need to turn stored content back into a usable structure efficiently. The fact that WordPress needs dedicated processing logic and extra optimizations for that makes the underlying design flaw more visible, not less.<br>That is why the current development around WordPress feels less like consistent forward motion and more like symptom management. More and more tools are being built just to regain the structure that was never properly prioritized at storage time. And that is exactly where the difference from EmDash CMS becomes sharp. There, structure does not need to be recovered. It is part of the content from the start.</p>



<h2 class="wp-block-heading">What Gutenberg Can Learn from EmDash CMS</h2>



<p class="wp-block-paragraph">The most important lesson from EmDash CMS is not that WordPress is suddenly obsolete. The real lesson is that content on the web now has to be thought about differently. As long as content is understood mainly as output, HTML as a storage format can still seem good enough. But once content moves into new contexts through APIs, multiple frontends, personalization, and AI systems, that logic no longer holds. At that point, structure cannot be something you expose afterward. It has to be stored from the beginning.<br>For Gutenberg, that is the real challenge. Not because the system lacks blocks or because it is internally unstructured. But because that structure still has not been made, the true core of the storage model. That is why WordPress keeps producing more helper layers around Gutenberg, while EmDash CMS answers the same question one level earlier. The core architectural question is no longer just how content gets edited. It is in what form a system fundamentally understands its content over time.<br>And that points to a bigger consequence beyond WordPress. The web does not just need more modern editors. It needs systems that take content seriously as data again. EmDash CMS makes that point so visible because it does not merely promise a new interface. It represents a different understanding of content. For Gutenberg, that is not a minor nudge. It is a very direct reminder of where its design flaw has been sitting for years.</p>

<p><a href="https://kraut.press/2026/emdash-cms-shows-gutenberg-limits/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2026/emdash-cms-shows-gutenberg-limits/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>The Crisis of Themes in WordPress</title>
      <link>https://kraut.press/2025/crisis-of-themes/</link>
      <comments>https://kraut.press/2025/crisis-of-themes/#comments</comments>
      <dc:creator><![CDATA[Hendrik Luehrsen]]></dc:creator>
      <pubDate>Thu, 30 Jan 2025 15:20:36 +0000</pubDate>
      <category><![CDATA[WordPress Strategy]]></category>
      <category><![CDATA[WordPress]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=705</guid>
      <description><![CDATA[WordPress themes are facing a significant crisis. The rapid evolution of Full Site Editing (FSE) has introduced complexities that make it increasingly&#160;difficult&#160;to create and sustain a successful theme product. As a result, the number of new high-quality, well-maintained themes remains limited. Compounding this challenge is an ongoing debate about the very nature of themes. Questions [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph">WordPress themes are facing a significant crisis. The rapid evolution of Full Site Editing (FSE) has introduced complexities that make it increasingly&nbsp;difficult&nbsp;to create and sustain a successful theme product. As a result, the number of new high-quality, well-maintained themes remains limited.</p>



<p class="wp-block-paragraph">Compounding this challenge is an ongoing debate about the very nature of themes. Questions like “What is a theme?” and “Do we even need themes anymore?” have sparked confusion within the WordPress ecosystem. This lack of clarity has led to hesitation among developers and users, slowing the adoption of new theme paradigms.</p>



<span id="more-705"></span>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="837" height="1024" src="https://kraut.press/wp-content/uploads/2025/01/Bildschirmfoto-2025-01-30-um-15.53.17-837x1024.png" alt="Screenshot of a thread of tweets. Carolina Nymark pistes on Jan 30, 2025:
&quot;I disagree that it makes block themes much easier to use, I do agree with unifying them better and this work has already started, it go halted because of the re-alignment.&quot;
Jamie Marsland replied:
&quot;Just some background....

I've trained over 5000 folks now on WordPress. 

These have been in classroom settings, at universities, and within companies. 

I can give complete beginners a classic theme, and within 10 minutes they are happily customizing their theme's design, changing layouts, changing the header layout, all using the customizer.  

I've also run a WordPress block theme course for the past 2 years. To teach the same thing in a block theme course, takes 2 hours!

I'm not exaggerating &#x1f62c;

I love block themes, but the steep learning curve is causing a drag on adoption.&quot;" class="wp-image-707" srcset="https://kraut.press/wp-content/uploads/2025/01/Bildschirmfoto-2025-01-30-um-15.53.17-837x1024.png 837w, https://kraut.press/wp-content/uploads/2025/01/Bildschirmfoto-2025-01-30-um-15.53.17-245x300.png 245w, https://kraut.press/wp-content/uploads/2025/01/Bildschirmfoto-2025-01-30-um-15.53.17-768x940.png 768w, https://kraut.press/wp-content/uploads/2025/01/Bildschirmfoto-2025-01-30-um-15.53.17-900x1101.png 900w, https://kraut.press/wp-content/uploads/2025/01/Bildschirmfoto-2025-01-30-um-15.53.17.png 1118w" sizes="(max-width: 837px) 100vw, 837px" /></figure>



<p class="wp-block-paragraph">The consequences are clear: While investments in WordPress tooling continue, themes, the core components that users interact with, have seen little external innovation or funding. This stagnation threatens to undermine WordPress’ appeal, especially compared to competitors offering more structured, user-friendly solutions.</p>



<p class="wp-block-paragraph">Even WordPress.org acknowledges this issue, phrasing the problem as themes being too similar.&nbsp;<a target="_blank" href="https://wordpress.org/news/2025/01/wordpress-themes-need-more-weird-a-call-for-creative-digital-homes/" rel="noreferrer noopener">In a post from Jan 2nd, 2025, they claim “WordPress Themes Need More Weird”</a>, directly suggesting to “Design for specific use cases”.</p>



<p class="wp-block-paragraph">To address these issues, we must first understand what themes&nbsp;are meant&nbsp;to accomplish and why they&nbsp;are currently fallingshort of user needs.</p>



<h2 class="wp-block-heading"><strong>What Is a Theme?</strong></h2>



<p class="wp-block-paragraph">The definition of a theme varies depending on perspective. Traditionally, a WordPress theme has&nbsp;been understood&nbsp;as the visual presentation layer that controls the look and feel of the content. This technical perspective&nbsp;is widely acceptedamong developers, the Gutenberg team, and professional agencies operating within the WordPress ecosystem.</p>



<p class="wp-block-paragraph">However, this perspective does not necessarily align with how most users see themes. Casual WordPress users do not think about presentation layers or content structuring; instead, they view themes as a means to solve a problem. For them, a theme is not just about design. It is a ready-made solution that helps them achieve their goal of launching a functional website as quickly and efficiently as possible.</p>



<p class="wp-block-paragraph">Over the years, WordPress themes have moved toward becoming flexible, design-agnostic tools, focusing on customization and modularity rather than pre-built solutions tailored to specific industries or user needs. While this shift has given developers greater control, and with the introduction of the Site Editor, even designers, it has also diminished the practical utility of themes for everyday users simply looking for an easy way to set up a website.</p>



<p class="wp-block-paragraph">This growing disconnect between the technical and user-driven definitions of themes has led to an identity crisis within the WordPress ecosystem. Are themes merely frameworks for design, or should they be packaged solutions that address specific user needs? Until this question&nbsp;is answered, themes will continue to struggle with adoption and relevance.</p>



<h2 class="wp-block-heading"><strong>The User Experience: A Realtor’s Journey</strong></h2>



<p class="wp-block-paragraph">To understand the gap between WordPress themes and user expectations, let’s take a practical example: Imagine a realtor based in rural America who needs a website. Numerous platforms promise a simple, do-it-yourself website creation experience. How do these platforms cater to the user’s needs?</p>



<h3 class="wp-block-heading"><strong>Competitor Approaches:</strong></h3>



<ul class="wp-block-list">
<li><strong>Squarespace</strong>: The homepage prominently features a “Templates” link, leading to an interactive wizard recommending templates based on user needs. Even without the wizard, users can easily navigate to a “Real Estate &amp; Properties” category showcasing templates designed explicitly for realtors.</li>



<li><strong>Wix</strong>: Although not as streamlined as Squarespace, Wix places “Templates” as a secondary item in its main menu. The templates page is utility-driven, offering clear filtering options. A “Real Estate” category under “Business &amp; Services” provides realtors with pre-designed templates tailored to their industry.</li>



<li><strong>Elementor</strong>: The “Elementor Kit Library” is slightly&nbsp;harder&nbsp;to find but still embraces a utility-first approach. While Elementor does not yet have a dedicated “Real Estate” category, it features filters like “Business” and “Agency.”&nbsp;Users can find templates such as “Personal Chef Website Kit” or “Real Estate Agency Website Kit” that&nbsp;directly solve their specific needs.</li>
</ul>



<h3 class="wp-block-heading"><strong>The WordPress Theme Repository:</strong></h3>



<p class="wp-block-paragraph">Now, let’s compare this experience to the WordPress theme repository. If our realtor searches for a real estate theme, their primary method is keyword-based, yielding inconsistent results.&nbsp;There is no structured filtering system that immediately presents&nbsp;industry-specific themes. Instead, they&nbsp;are met&nbsp;with a mix of classic and block-based themes, many of which&nbsp;are not&nbsp;clearly&nbsp;designed&nbsp;to solve their problem.</p>



<p class="wp-block-paragraph">The only remotely structured listing in the WordPress theme repository is under “Subject,” but even this categorization is chaotic. For instance, in the “Food and Drinks” category, users will find themes such as “Holiday Quest,” “Newspaper Flash,” and “Travel Quest,” none of which&nbsp;clearly&nbsp;address the needs of a food business.&nbsp;This lack of clarity creates a frustrating experience for users who&nbsp;simply&nbsp;want a theme that aligns with their&nbsp;business.</p>



<p class="wp-block-paragraph">A look at the most downloaded block themes reveals a similar issue. The “Twenty-X” themes may be familiar to long-time WordPress users, but for newcomers, they do not indicate their purpose. Popular block themes like “Extendable,” “Yith Wonder,” and “Ollie” also fail to communicate their utility to non-technical users. These themes do not offer a clear answer for a realtor simply looking for a quick and effective website solution.</p>



<h2 class="wp-block-heading"><strong>The Path Forward: Fixing WordPress Themes</strong></h2>



<p class="wp-block-paragraph">To address these challenges and restore themes as essential problem-solving tools for users, WordPress must take several crucial steps:</p>



<ul class="wp-block-list">
<li><strong>Reframe the Purpose of Themes</strong>: Themes should be more than just aesthetic frameworks. They should be solution-driven, providing users with ready-made options that cater to specific industries and use cases.</li>



<li><strong>Improve Discoverability</strong>: The WordPress theme repository needs a complete overhaul to introduce structured categories and utility-driven filtering. Users should be able to browse themes by industry or business type, just like on competing platforms.</li>



<li><strong>Enhance Accessibility for Casual Users</strong>: The theme selection process should be intuitive, guiding users toward the best choices for their needs. A wizard-style recommendation engine, similar to Squarespace, could be an effective solution.</li>



<li><strong>Prioritize Ease of Setup</strong>: Full Site Editing (FSE) must become more user-friendly, reducing complexity and making it easier for new users to build and manage their websites. If WordPress insists on FSE as the future, it must match the usability of traditional, classic themes.</li>
</ul>



<h2 class="wp-block-heading"><strong>Conclusion: Making WordPress Themes Relevant Again</strong></h2>



<p class="wp-block-paragraph">If WordPress wants to remain a dominant force in the website-building space, it must rethink the role of themes. The current theme landscape is unfocused, failing to address the practical needs of users looking for simple, industry-specific solutions.</p>



<p class="wp-block-paragraph">The shift towards Full Site Editing has complicated the onboarding process for new users, making it harder to find and implement themes that solve real-world problems. Meanwhile, competitors have doubled down on ease of use, ensuring their template libraries offer immediate value and&nbsp;clear&nbsp;solutions.</p>



<p class="wp-block-paragraph">For WordPress to regain its competitive edge, it must make themes relevant again. By emphasizing utility over flexibility, improving discoverability, and prioritizing an intuitive user experience, WordPress can ensure that themes serve as powerful tools rather than confusing obstacles.</p>

<p><a href="https://kraut.press/2025/crisis-of-themes/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2025/crisis-of-themes/feed/</wfw:commentRss>
      <slash:comments>6</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>Form Block – Forms the Way They Should Be</title>
      <link>https://kraut.press/2024/form-block/</link>
      <comments>https://kraut.press/2024/form-block/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Tue, 24 Dec 2024 13:03:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=692</guid>
      <description><![CDATA[It&#8217;s no coincidence that a contact form plugin is among the oldest plugins on WordPress.org. Many websites, whether small blogs or large corporate sites, sooner or later need a contact form. That&#8217;s why the final plugin in this year&#8217;s Advent calendar is the excellent Form Block by German developer Matze Kittsteiner. Unlike most other contact [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph"> It&#8217;s no coincidence that a contact form plugin is among the oldest plugins on WordPress.org. Many websites, whether small blogs or large corporate sites, sooner or later need a contact form. That&#8217;s why the final plugin in this year&#8217;s Advent calendar is the excellent <em><a href="https://wordpress.org/plugins/form-block/">Form Block</a></em> by German developer Matze Kittsteiner.</p>



<span id="more-692"></span>



<p class="wp-block-paragraph">Unlike most other contact form plugins, <em>Form Block</em> integrates directly into the Block Editor after installation, eliminating the need for a complicated overlay. There&#8217;s no separate settings page to build forms in; instead, all contact forms are created directly within the Block Editor.</p>



<figure class="wp-block-video"><video controls loop poster="https://krautpress.de/wp-content/uploads/sites/3/2024/12/form-block-thumb.png" src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/form-block.mp4"></video></figure>



<p class="wp-block-paragraph">In the editor, new forms come with a selection of pre-made templates that can be adopted and customized as needed.</p>



<p class="wp-block-paragraph">While <em>Form Block</em> keeps things simple, it does include a few settings. Under <strong>Settings</strong> / <strong>Writing</strong> in the admin menu, From Block adds two options, but these are only relevant if the contact form is used for file uploads.</p>



<p class="wp-block-paragraph"><a href="https://formblock.pro/en/features/">A paid version</a> offers additional features, such as the ability to store uploads in WordPress without sending them via email. For example, we use this feature to collect local recordings from interview partners for our podcast. The Pro version also adds custom form actions, extended form validation, and more.</p>

<p><a href="https://kraut.press/2024/form-block/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/form-block/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>Accessibility Checker – The Little Helper for Accessibility</title>
      <link>https://kraut.press/2024/accessibility-checker/</link>
      <comments>https://kraut.press/2024/accessibility-checker/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Mon, 23 Dec 2024 21:53:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=690</guid>
      <description><![CDATA[2025 will be the year of accessibility. Regulations will be enacted in the EU in early summer, initially targeting online shop operators. However, the topic will become more prominent regardless, which is a significant step in the right direction. In the spirit of these upcoming changes, today&#8217;s plugin is the Equalize Digital Accessibility Checker. This [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph">2025 will be the year of accessibility. Regulations will be enacted in the EU in early summer, initially targeting online shop operators. However, the topic will become more prominent regardless, which is a significant step in the right direction. In the spirit of these upcoming changes, today&#8217;s plugin is the <em><a href="https://wordpress.org/plugins/accessibility-checker/">Equalize Digital Accessibility Checker</a></em>.</p>



<span id="more-690"></span>



<p class="wp-block-paragraph">This plugin, developed and maintained by accessibility experts, aims to run several automated checks directly within WordPress. Earlier this year, I interviewed Amber Hinds, co-founder of Equalize Digital, for our English-language podcast. You can listen to the interview <a href="https://kraut.press/podcast/accessibility-testing-and-wp-accessibility-day-2024/">in the KrautPress Podcast</a>.</p>



<p class="wp-block-paragraph">Like most of the other plugins featured in our Advent calendar this year, the <em>Equalize Digital Accessibility Checker</em> can be installed directly from the WordPress.org plugin directory. After activation, it informs users about a more feature-rich paid version and integrates its testing interface directly into the post and page editor.</p>



<figure class="wp-block-image size-large"><a href="https://krautpress.de/wp-content/uploads/sites/3/2024/12/accesibility-checker.png"><img decoding="async" src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/accesibility-checker-1024x550.png" alt="Screenshot of the Accessibility Checker box below the editor. It displays a percentage score and fields for errors, warnings, contrast issues, and ignored entries." class="wp-image-3920"/></a></figure>



<p class="wp-block-paragraph">Below the editor, various tabs in the Accessibility Checker section provide insights into several tests. With great attention to detail, the plugin offers guidance on identifying and solving issues. For example, I discovered a few flaws in our theme here at KrautPress and plan to address them over the Christmas holidays—not because the new accessibility regulations will apply to us, but simply because it&#8217;s the right thing to do.</p>



<p class="wp-block-paragraph">In general, the <em>Equalize Digital Accessibility Checker</em> assesses the site&#8217;s compliance with WCAG 2.1 AAA standards but also points out that not all tests can be effectively automated. For a thorough evaluation, you should reach out to an expert.</p>



<p class="wp-block-paragraph">The <a href="https://equalizedigital.com/accessibility-checker/features/#comparison">paid version</a> can get quite pricey, but it offers significantly extended functionality, that will be worth the premium if you create sites for clients.</p>

<p><a href="https://kraut.press/2024/accessibility-checker/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/accessibility-checker/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>Progress Planner – Let’s make Blogging Fun Again</title>
      <link>https://kraut.press/2024/progress-planner/</link>
      <comments>https://kraut.press/2024/progress-planner/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Sun, 22 Dec 2024 15:15:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=688</guid>
      <description><![CDATA[From a painful experience here at KrautPress, I can confirm that setting up a blog isn&#8217;t hard. Sticking with it consistently, however, is. This is exactly where today&#8217;s plugin comes into play: Progress Planner. Progress Planner is the latest project from former Yoast CEOs Marieke van de Rakt and Joost de Valk. Their goal is [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph">From a painful experience here at KrautPress, I can confirm that setting up a blog isn&#8217;t hard. Sticking with it consistently, however, is. This is exactly where today&#8217;s plugin comes into play: <em><a href="https://wordpress.org/plugins/progress-planner/">Progress Planner</a></em>.</p>



<span id="more-688"></span>



<p class="wp-block-paragraph"><em>Progress Planner</em> is the latest project from former Yoast CEOs Marieke van de Rakt and Joost de Valk. Their goal is to make working on content more engaging and to keep bloggers motivated with some good old gamification.</p>



<p class="wp-block-paragraph">The plugin achieves this with a system of recommendations, monthly statistics, and badges.</p>



<figure class="wp-block-image size-large"><a href="https://krautpress.de/wp-content/uploads/sites/3/2024/12/progress-planner.png"><img decoding="async" src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/progress-planner-1024x584.png" alt="Screenshot of the Progress Planner interface. A small dashboard shows an activity score, and various charts display activity over the past months." class="wp-image-3913"/></a></figure>



<p class="wp-block-paragraph"><em>Progress Planner</em> is still in its early stages and will undoubtedly gain additional features in the coming months. Even now, though, it provides extra motivation to write and work on one&#8217;s blog. Let&#8217;s see if it helps the KrautPress blog.</p>

<p><a href="https://kraut.press/2024/progress-planner/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/progress-planner/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>WebAuthn Provider for Two Factor – The Future of Login?</title>
      <link>https://kraut.press/2024/webauthn-provider-for-two-factor/</link>
      <comments>https://kraut.press/2024/webauthn-provider-for-two-factor/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Sat, 21 Dec 2024 15:53:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=685</guid>
      <description><![CDATA[Years ago, I wrote an article for the KrautPress Advent calendar about the Two Factor plugin. This plugin, designed to enhance login security, remains a standard feature in every WordPress installation I manage. I&#8217;ve also been experimenting with installing an additional plugin in recent months. WebAuthn Provider for Two Factor extends the original Two Factor [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph">Years ago, I wrote an article for the KrautPress Advent calendar about the <a href="https://krautpress.de/2016/zwei-factor-authentifizierung/">Two Factor plugin</a>. This plugin, designed to enhance login security, remains a standard feature in every WordPress installation I manage. I&#8217;ve also been experimenting with installing an additional plugin in recent months. <em><a href="https://wordpress.org/plugins/two-factor-provider-webauthn/">WebAuthn Provider for Two Factor</a></em> extends the original <em>Two Factor</em> plugin by adding another authentication method: the so-called &#8220;WebAuthn,&#8221; also referred to as &#8220;Passkeys&#8221; by most operating systems and services.</p>



<span id="more-685"></span>



<figure class="wp-block-image size-large"><a href="https://krautpress.de/wp-content/uploads/sites/3/2024/12/webauthn.png"><img decoding="async" src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/webauthn-1024x665.png" alt="Screenshot of the settings page in WordPress user profile management. &quot;WebAuthn&quot; is available as the last option in a table of Two-Factor methods." class="wp-image-3906"/></a></figure>



<p class="wp-block-paragraph">The <em>WebAuthn Provider for Two Factor</em> plugin creates its own settings page but adds the most critical parts of its configuration directly to the <em>Two Factor</em> plugin&#8217;s settings under <strong>Users</strong> / <strong>Profile</strong>.</p>



<p class="wp-block-paragraph">Initially, setting up the plugin was a bit complicated, but it has since received several updates. The process involves creating a security key for each user, enabling them to authenticate with this key as a second factor in addition to their username and password. Most modern browsers and operating systems already support Passkeys, and many of them (along with many password managers) even allow Passkeys to be synchronized across multiple devices.</p>



<p class="wp-block-paragraph">As with the original Two Factor plugin, multiple authentication methods can still be used as a second factor. For example, a one-time code stored in a bank vault (depending on your level of paranoia) can be set up as an emergency fallback.</p>



<p class="wp-block-paragraph">However, two important limitations must be kept in mind: First, this remains a second-factor method. Unlike Passkeys for many other services, <em>WebAuthn Provider for Two Factor</em> does not replace the username and password. Second, Passkeys have lost momentum in recent months after their initial hype subsided. Nonetheless, support in modern software remains strong enough to make testing worthwhile.</p>

<p><a href="https://kraut.press/2024/webauthn-provider-for-two-factor/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/webauthn-provider-for-two-factor/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>Picu – Photo Proofing in WordPress</title>
      <link>https://kraut.press/2024/picu-photo-proofing-in-wordpress/</link>
      <comments>https://kraut.press/2024/picu-photo-proofing-in-wordpress/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Fri, 20 Dec 2024 20:47:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=683</guid>
      <description><![CDATA[There&#8217;s a plugin I&#8217;ve been following the development of for years, though. Unfortunately, I have absolutely no use case for it. While I still toy around with the idea of switching careers to photography, let&#8217;s take a look at the photo proofing plugin Picu by the German-Swiss design and development studio haptiq. The target audience [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph"> There&#8217;s a plugin I&#8217;ve been following the development of for years, though. Unfortunately, I have absolutely no use case for it. While I still toy around with the idea of switching careers to photography, let&#8217;s take a look at the photo proofing plugin <em><a href="https://wordpress.org/plugins/picu">Picu</a></em> by the German-Swiss design and development studio <em>haptiq</em>.</p>



<span id="more-683"></span>



<p class="wp-block-paragraph">The target audience for this plugin, which is free directly from WordPress.org, is professional photographers who need approval from their clients for photos from commissioned projects.</p>



<p class="wp-block-paragraph">After installation, the plugin allows you to create &#8220;collections&#8221; containing various photos. These collections can be sent to clients for selection and approval via email or direct link.</p>



<figure class="wp-block-image size-large"><a href="https://krautpress.de/wp-content/uploads/sites/3/2024/12/picu.png"><img decoding="async" src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/picu-1024x792.png" alt="Screenshot of the Picu image selection interface. Four of the seven displayed images are selected, with a 'Send Selection...' button visible in the bottom right corner." class="wp-image-3896"/></a></figure>



<p class="wp-block-paragraph">The link opens in a completely standalone interface, independent of the active theme. This view is fully powered by <em>Picu</em>.</p>



<p class="wp-block-paragraph">While the free version of <em>Picu</em> offers a fantastic preview of the <a href="https://picu.io/pro/">Pro version</a>—which includes advanced features, branding options, and workflows—it&#8217;s also excellent and fully functional on its own.</p>

<p><a href="https://kraut.press/2024/picu-photo-proofing-in-wordpress/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/picu-photo-proofing-in-wordpress/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>Real Cookie Banner – Consent Management, Done Right</title>
      <link>https://kraut.press/2024/real-cookie-banner/</link>
      <comments>https://kraut.press/2024/real-cookie-banner/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Thu, 19 Dec 2024 22:04:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=681</guid>
      <description><![CDATA[To track your website&#8217;s visitors and gather their personal data, obtaining their consent is key. Since the introduction of the GDPR in 2018, this has become a part of daily life for many of us here in the EU. Today&#8217;s plugin, Real Cookie Banner, is designed specifically for this purpose. Under the Cookies section in [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph"> To track your website&#8217;s visitors and gather their personal data, obtaining their consent is key. Since the introduction of the GDPR in 2018, this has become a part of daily life for many of us here in the EU. Today&#8217;s plugin, <a href="https://wordpress.org/plugins/real-cookie-banner/"><em>Real Cookie Banner</em></a>, is designed specifically for this purpose.</p>



<span id="more-681"></span>



<figure class="wp-block-image size-large"><a href="https://krautpress.de/wp-content/uploads/sites/3/2024/12/real-cookie-banner.png"><img decoding="async" src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/real-cookie-banner-1024x559.png" alt="" class="wp-image-3889"/></a></figure>



<p class="wp-block-paragraph">Under the Cookies section in the admin menu, the plugin provides a variety of options. To keep everything organized, the team at <a href="https://devowl.io">devowl.io</a> has included a handy checklist, which guides newcomers step by step through the setup process.</p>



<p class="wp-block-paragraph">During this setup, not only can basic details be configured, but also a range of nuances related to the services used and the text displayed in the cookie banners.</p>



<p class="wp-block-paragraph">I must admit that I don&#8217;t run a single website that requires a cookie banner. However, whenever I&#8217;m asked for recommendations, <em>Real Cookie Banner</em> is always my go-to suggestion.</p>



<p class="wp-block-paragraph">The team behind the plugin offers both free and premium versions. If you&#8217;d like to take a closer look before committing, you can set up a test environment <a href="https://try.devowl.io/?product=RCB">on the devowl.io website</a>.</p>

<p><a href="https://kraut.press/2024/real-cookie-banner/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/real-cookie-banner/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>Editorial Calendar – Content Overview</title>
      <link>https://kraut.press/2024/editorial-calendar/</link>
      <comments>https://kraut.press/2024/editorial-calendar/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Wed, 18 Dec 2024 22:59:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=679</guid>
      <description><![CDATA[Editorial Calendar – Content Overview If you run a blog with many posts, perhaps even authored by multiple contributors, it&#8217;s easy to lose track. Today’s plugin, Editorial Calendar, is here to help. The plugin&#8217;s interface has a slightly dated look but remains functional. It appears under Posts as Calendar. There, Editorial Calendar provides a compact [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph">Editorial Calendar – Content Overview</p>



<p class="wp-block-paragraph">If you run a blog with many posts, perhaps even authored by multiple contributors, it&#8217;s easy to lose track. Today’s plugin, <em><a href="https://wordpress.org/plugins/editorial-calendar/">Editorial Calendar</a></em>, is here to help.</p>



<span id="more-679"></span>



<p class="wp-block-paragraph">The plugin&#8217;s interface has a slightly dated look but remains functional. It appears under <strong>Posts</strong> as <strong>Calendar</strong>. There, <em>Editorial Calendar</em> provides a compact overview of upcoming posts sorted by date. New drafts can be created directly from this interface.</p>



<figure class="wp-block-video"><video controls loop src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/editorial-calendar.mov" playsinline></video></figure>



<p class="wp-block-paragraph">Entries in the calendar can even be moved and rescheduled using drag-and-drop.</p>



<p class="wp-block-paragraph">An editorial calendar may not be worthwhile for simple blogs with less busy publishing schedules. However, for more complex operations, it can significantly simplify the workflow for everyone involved.</p>

<p><a href="https://kraut.press/2024/editorial-calendar/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/editorial-calendar/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
    <item>
      <title>Maintenance Mode for WordPress – Making Waiting Easy</title>
      <link>https://kraut.press/2024/maintenance-mode-for-wordpress/</link>
      <comments>https://kraut.press/2024/maintenance-mode-for-wordpress/#respond</comments>
      <dc:creator><![CDATA[Simon Kraft]]></dc:creator>
      <pubDate>Tue, 17 Dec 2024 22:56:00 +0000</pubDate>
      <category><![CDATA[Plugins]]></category>
      <category><![CDATA[Advent of Plugins]]></category>
      <guid isPermaLink="false">https://kraut.press/?p=677</guid>
      <description><![CDATA[Maintenance Mode for WordPress – Making Waiting Easy If you&#8217;re working on a website, you might not want others to see it during that early time. However, working on a server and sharing progress with clients can sometimes be useful. The plugin Maintenance Mode for WordPress by Robert DeVore aims to solve this problem. While [&#8230;]]]></description>
      <content:encoded><![CDATA[
<p class="wp-block-paragraph">Maintenance Mode for WordPress – Making Waiting Easy</p>



<p class="wp-block-paragraph">If you&#8217;re working on a website, you might not want others to see it during that early time. However, working on a server and sharing progress with clients can sometimes be useful. The plugin <em><a href="https://github.com/robertdevore/maintenance-mode-for-wordpress">Maintenance Mode for WordPress</a></em> by Robert DeVore aims to solve this problem. While this isn&#8217;t a unique feature, what sets this plugin apart is its lack of ads, annoying upsells, or other inconveniences. Instead, it focuses on the essential functionality of creating Coming Soon pages – exactly as it should.</p>



<span id="more-677"></span>



<p class="wp-block-paragraph">After a manual installation <a href="https://github.com/robertdevore/maintenance-mode-for-wordpress/releases/tag/1.0.1">via GitHub</a>, the plugin adds an additional <strong>Maintenance</strong> entry to the admin menu. Within this Custom Post Type, you can create custom Coming Soon pages using the block editor.</p>



<figure class="wp-block-image size-large"><a href="https://krautpress.de/wp-content/uploads/sites/3/2024/12/maintenance-mode.png"><img decoding="async" src="https://krautpress.de/wp-content/uploads/sites/3/2024/12/maintenance-mode-1024x542.png" alt="Screenshot of the Maintenance overview. A table displays all created maintenance pages." class="wp-image-3875"/></a></figure>



<p class="wp-block-paragraph">Once created, entries can be selected and activated under Maintenance / Settings. Additionally, the plugin requires a launch date, after which the Coming Soon page will be deactivated.</p>



<p class="wp-block-paragraph"> There&#8217;s not much else to do or see. These are all the features of the plugin.</p>



<p class="wp-block-paragraph">The plugin is currently only available on GitHub.</p>

<p><a href="https://kraut.press/2024/maintenance-mode-for-wordpress/" rel="nofollow">Source</a></p>]]></content:encoded>
      <wfw:commentRss>https://kraut.press/2024/maintenance-mode-for-wordpress/feed/</wfw:commentRss>
      <slash:comments>0</slash:comments>
      <friends:post-format>standard</friends:post-format>
    </item>
  </channel>
</rss>
