www.fgks.org   »   [go: up one dir, main page]

WordPress.org

WordPress Planet

March 05, 2021

Post Status: Angela Jin on WordCamp US 2020 Cancellation and the Future of WordPress Education

In this episode of Post Status Draft, David Bisset talks with Angela Jin. Angela joined Automattic in 2018 and is one of the community organizers for the WordPress open source project. She has been helping organize, start conversations, and setting policies for WordCamps over the last few years.

David recorded this interview around the time that WordCamp US 2020 would have normally taken place in St. Louis, Missouri. WordCamp US organizers decided to cancel the event months before it would have taken place due to COVID-19. There were questions about what led to that decision. Why didn't it become a virtual conference, like WordCamp Europe? What are organizers planning for future WordCamp US events and WordPress education in general?

David sat down with Angela to get a better understanding of the WordPress community and its needs during a pivotal time of change. Join us as we discuss what the future holds for the conferences, meetups, and other social gatherings we've enjoyed in the past.

Sponsor: Pagely

Pagely offers best-in-class managed WordPress hosting, powered by Amazon's Cloud, the Internet’s most reliable infrastructure. Pagely helps big brands scale WordPress.Thank you to Pagely for being a Post Status partner!

by David Bisset at March 05, 2021 11:45 PM under Everyone

WPTavern: User-Friendly Methods for Testing Gutenberg Enhancements and Bug Fixes

Living on the bleeding edge of Gutenberg’s development is not particularly easy for everyone. There is a ton of work and know-how involved with getting everything set up. You have to clone a Git repository, grab pull requests, and run a build process. Non-developers may find themselves facing an overwhelming learning curve. It can be rough for developers who like to keep things simple too.

There are times when it makes sense to simply download a ZIP file, upload it to a WordPress site, and test things out. The most straightforward way is to wait until the development team officially releases an update. You can snag a copy from its WordPress.org plugin page or via the plugins screen in the WordPress admin interface. However, how do you test features between releases?

Gutenberg Times has a page for grabbing a nightly-created ZIP of the plugin. This includes the latest features and bug fixes that have been merged into the project. For users who want to test the plugin and provide feedback to the development team, this is the easiest way to get started.

There are also times when you might want to test changes that are not yet available in the nightly build. Gutenberg currently has 589 pull requests (PRs) — this number changes daily. They are new enhancements and fixes with the potential to be merged into the codebase. Each of these PRs needs a review and feedback. Not all of them will make it in.

For the average user, PR testing is not a reasonable expectation. Even working through Git lingo can be a minefield. However, solutions exist for skipping the intricacies of a developer-only space and hopping into the fray.

One option is Gutenberg.run, a web-based install for testing PRs. The site runs the latest stable release of WordPress and activates a copy of the Gutenberg plugin with the changes from a user-entered PR number.

This is a quick way to test a potential change without spinning up a test install. However, checking out a PR related to Full Site Editing is a no-go. The site has no way to test the site editor, which requires a block-based theme like TT1 Blocks.

Core WordPress contributor Paal Joachim Romdahl outlined a method for testing PRs via a ZIP file. The process is simple, but it is not easy to find if you do not know what you are looking for.

After finding a PR that you want to try, you must click on the “Checks” tab for it on GitHub. Once on the new screen, you can scroll through the left sidebar until you find the “Build Gutenberg Plugin ZIP” link.

From that point, it is a matter of clicking it and downloading the ZIP file — note that it has a ZIP within a ZIP. This download will include the latest version of the plugin with the included PR code applied.

Romdahl has a thorough walkthrough in the following video:

Video walkthrough to get a ZIP for a PR (Italian version available).

He has also opened a ticket for helping others more easily access a testing ZIP for PRs. The discussion is ongoing. It is currently leaning toward adding an automated comment that outputs a link to the PR build’s ZIP file. This type of exposure should open testing to a wider group of people.

by Justin Tadlock at March 05, 2021 04:54 PM under gutenberg

WordCamp Central: WordCamp India 2021 – A recap

WordCamp India 2021 (Online) was held across three weekends. The event kicked off on January 30th and wrapped up on February 14th. Looking back, organizing the event was a one-of-a-kind experience, and as members of the organizing team, we would like to share our experience.

WordCamp India has some history – the first edition of the event was held in 2009, but back then, the WordPress Community in India was in a nascent stage. Ever since, the community has grown, and now we have several active meetup groups and local WordCamps. The idea of a full-fledged WordCamp India has always been the dream of all Indian community organizers. In 2020, as the COVID-19 Pandemic hit us hard, WordPress events moved online and regional online WordCamps were encouraged. As a result, WordCamp India got a new lease of life – former WordCamp Mumbai organizer – Alexander Gounder, kicked-off the efforts by sending in an application, and soon WordCamp India was born.

Inspired by the Community team blog post on reimagining online events, and excited about the announcement of the Learn WordPress initiative – we decided to shake things up a bit. Our co-organizer Aditya Kane came up with the idea of a three-weekend WordCamp. We would have Multilingual WordPress workshops for beginners on week 1, our contributor event on week 2, and finally our sessions on week 3. We kicked-off with a plan to hold the event around November-December 2020. Within no time, our design team burned the midnight oil and released the WordCamp India logo and the design language.

It was ambitious and exciting! However, we underestimated the impact of the COVID-19 pandemic and its effects on our organizing team. Many members of our organizing team had to step back due to personal challenges, which were exacerbated by the global pandemic. With a mounting number of tasks associated with a regional WordCamp and a dwindling organizing team, we decided to postpone the event to January – February 2021. After a lot of groundwork, by late November 2020, WordCamp India found a place in the WordCamp Central schedule, with dates of January 30-31 (workshops), February 6-7 (contributor day), and February 13-14 (Sessions).

The months of December 2020 – January 2021 saw the organizing team on overdrive to make the event happen. Even as we continued to lose organizers, we found support in the form of enthusiastic volunteers who stepped in. We also pivoted from a plan to do video production on our own, to hire an external vendor to help us with pre-production, stitching, and some post-production work – which significantly helped us.

As a result, we successfully kicked off our WordCamp with Introduction to WordPress workshops on January 30-31. The event was spread out across two tracks on each day. These workshops were on basic WordPress topics, such as Introduction to WordPress, Block Editor basics, site hosting basics, and Introduction to WooCommerce. The highlight was that we had these workshops delivered in several Indian languages – Gujarati, Kannada, Marathi, Malayalam, and Tamil. We premiered recorded workshops in YouTube, and each workshop was followed by a live Q&A with the workshop presenter. The workshop track was a grand success! Participants loved the workshops, which are still being watched by folks outside the event. WordCamp India workshops are available for viewing in our website, and have already been uploaded to WordPress.tv. The workshops are also being uploaded to Learn WordPress – and our Introduction to WordPress workshops in Malayalam and Kannada are already live!

Suresha N Speaking at a WordCamp India workshop in Kannada

The second weekend was noted by the contributor day event which was held on February 6-7. The event had contributors from the Community, Core, Design, Marketing, Meta, Polyglots, Support, and Training teams. We had all contributors assembled in a large zoom room, with breakout rooms assigned to each team. The event was planned in a freewheeling format, where teams introduced, supported, and onboarded new contributors. Many times also had some great discussions on ongoing topics concerning the respective team. In short, attendees got to experience a wholesome WordPress contribution experience.

A snap from the WordCamp India contributor day event.

We had the best of them all scheduled for the third and last weekend – our sessions! We did face some unexpected difficulties there, when two of our speakers backed out at the last minute. However, members of our community surprised us by stepping up at the last minute and by delivering excellent sessions in their absence. Most of the WordCamp India sessions were recorded and premiered at the event. After each session, there would be a live Q&A with the speaker joining an emcee on a YouTube live video, to answer questions from the audience that was asked in the form of YouTube chat. We had two tracks, on each day, with each track having its on YouTube playlist in the order of the session (with a mix of premiered and live videos). We also had a large zoom room, where watercooler chats, extended “hallway hangout” style discussions with speakers, sponsor booths, and a dedicated sponsor area in breakout rooms. The idea was to give the attendees one place to hang out and hop-in and out between sponsor rooms. Some of our notable sessions at WordCamp India include: A Fireside chat with Matt Mullenweg and Josepha Haden, A Live Q&A with Josepha Haden and Shilpa Shah, a Panel Discussion on Future of WordPress translations in India, and “Outrank your competition with a great content SEO strategy” by Marieke van de Rakt. WordCamp India sessions can be viewed in our website, and will soon be available on WordPress.tv.

AMA with Shilpa Shah and Josepha Haden Matt Mullenweg speaking at WordCamp India

Tools we used

  • StreamYard Pro Account ($49/mo) (for helping many speakers record their sessions, and for facilitating Live Q&As)
  • 2 x Zoom Pro accounts (For pre-event planning Q&As)
  • 1 x 1000 Zoom Large meeting add-on (For our large zoom rooms on all three weekends)
  • Free Slack Instance (for event planning. Organizing teams had private channels, we invited our speakers into a dedicated channel as well).
  • A WordPress.com P2 (For long-form communications and task management)
  • Trello board (for task management and sponsor tracking)
  • The India@wordcamp.org Google Workspace account provided by WordCamp Central (We used Gmail, Google Drive, Google Docs/Sheets/Slides extensively for our event)
  • YouTube for streaming our event (We used a refurbished legacy account from one of our organizers which had streaming embed capabilities)

FINANCES

All our funds were handled by WordCamp Central directly.

  • Revenue: We raised $6000 in sponsorship revenue ($700 x 6 from Exhibitor sponsors) + ($150 x 12 from Corporate sponsors)
  • Expenses: $1006.33 ($246.33 for Zoom + StreamYard) and ~$760/INR 55,0000 (Video vendor expenses)
  • Cost per person per day: USD$ 0.10 (INR 8)
  • Variance (Leftover funds with WordCamp Central): USD $4,993.67

SOME PLANNING TIPS FOR OTHER WORDCAMPS

  • In case you don’t have a strong video production team, consider hiring a vendor for video production – it will reduce your efforts significantly. Even if you are not able to hire a vendor to do all the tasks, outsourcing at least some, could be very helpful. Do not underestimate the importance of video production – start thinking about it from day 1!
  • Organizing an online WordCamp might seem easier than an in-person event. The number of tasks involved most definitely is – but please don’t underestimate it! At least two months of planning and tasks are involved for a successful online event – especially if it is regional.
  • Anticipate organizer burnout – it is no one’s fault; these are difficult times and everyone is struggling. Check-in with your organizing team constantly and make sure that they have the bandwidth to do what they want.
  • Make sure all the tasks are well-laid-out, and all the deadlines are clear. Having some sort of project/task management tool is extremely important. It is recommended that each team (speakers, sponsors) has its own tool.
  • If you are broadcasting your event on YouTube, make sure that your YouTube account supports video embedding for livestreams (it is disabled for newer YT accounts – including the G Suite-linked accounts provided by WordCamp Central). In case you don’t have a YouTube account that supports Livestreaming, you can always use the WordCamp Central YouTube account.
  • Organizing an online WordCamp offers a lot of flexibility. Consider experimenting with the event format as much as possible! Provided you have a solid plan, you could have some fun online activities that attendees could make the most out of!
  • Finally: Remember – as an organizer your goal is not to match an in-person WordCamp experience with your online event. Your goal is to provide a unique online WordPress event experience for online participants from all across the world. 

Looking back, WordCamp India 2021 was a unique experience by its own right. We are proud of all that we were able to achieve despite the challenges we faced. We would like to thank all our sponsors, speakers, and volunteers who supported us and helped us in making the event happen.

However, our biggest achievement from WordCamp  India is that we were able represent the idea of India with more local language content – especially on our workshop tracks. Our biggest success lies in the fact that were able to bring community members together and kick-off a positive sentiment of excitement in our very resilient WordPress community. As Community organizers, it remains to be seen how we can utilize this sentiment to rekindle enthusiasm in our local communities, in 2021!

With regards,
The WordCamp India 2021 organizing team

by Hari Shanker R at March 05, 2021 02:54 PM under WordCamp Recap

March 04, 2021

WPTavern: Gutenberg 10.1 Enhances Reusable Blocks, Updates Social Icons Spacing Options, and Normalizes Image Block Toolbar

Gutenberg 10.1 landed yesterday with several new features, many of which focused on improvements to the interface and user experience. Users can now control the justification of items in the Social Icons block. The new release also enhances the UX for creating reusable blocks, groups the Image block toolbar controls, and introduces categorized template parts in the site editor.

The development team corrected two dozen bugs for this release. As usual, they continued to polish the site-editing experience, which should land in WordPress later this year.

One of the better improvements to the UX is with the dragging performance for the focal point picker. Users can test the Cover or Media & Text blocks to see it in action.

Spacing Options for Social Icons and Buttons

Adding space between items in the Social Icons block.

The Gutenberg development team added the justification toolbar control to the Social Icons block. This allows users to determine how they want their social links to display. The following are the current justification options:

  • Justify items left
  • Justify items center
  • Justify items right
  • Space between items

The Buttons block now has the space-between option, which gives it and Social Icons the same flexibility as the Navigation block.

The Social Icons block still has left, right, and center alignment options too. This is separate from the justification setting. In comparison, the Buttons and Navigation blocks only have wide and full alignments if the active theme supports them. However, the Social Icons block does not have those options. These blocks’ alignments should all have parity unless I am missing some crucial reason for the difference.

Reusable Blocks Updates

Modal for naming, saving, or canceling a reusable block.

The development team continues to refine the reusable blocks feature. Version 10.1’s highlight is a new modal that pops up when first creating a reusable block. It has a simple title field along with buttons for canceling or saving. The cancel feature is also a new addition.

This modal clears up a problem introduced in Gutenberg 9.7. That release moved the title field for the reusable block into the sidebar panel. If users did not have that panel open, they could easily overlook it.

“Based on these changes, the UI for reusable blocks is most likely going to see some iterations in the upcoming weeks,” said Gutenberg developer Riad Benguella at the time. The team has delivered on this promise.

Gutenberg also uses this new modal as part of its template creation flow in the site editor.

The editor toolbar now displays a reusable block’s name when it is selected in the content canvas. This adds clarity and helps users better see what they are editing. Users can also update the name of a reusable block from within the editor sidebar.

One issue I still have with reusable blocks is when using wide or full-aligned elements. Once a block is saved, it displays at the regular content width, making it less of a WYSIWYG experience. There is an open ticket for this bug. However, it has seen little movement as of late.

Semantic Toolbar for Images

Grouped sections in the Image block toolbar.

The Image block’s toolbar received an upgrade. Its controls are grouped, with each group separated by a border. The toolbar follows a specific order: meta, block-level, inline-level, and more options. The goal is for controls on every block to use this order, which translates to a standard UI that users can follow.

This improvement for the Image block brings enough clarity that I already want this across the board. There is an open ticket to normalize the toolbar for all blocks.

Categorized Template Parts

“General” template parts category.

For the experimental site editor, a new patch to group template parts landed in the latest release. The UI change separates parts into four categories: headers, footers, sidebars, and general.

I could not get this feature to work. There are no clear instructions for theme authors to follow. Header templates named header-one.html went to the general category. Template parts in sub-folders, such as header/one.html, also failed. Even just plain header.html did not get grouped.

While there is obviously a bug, I am excited about the prospect of categorized template parts. It is a preemptive step toward decluttering the interface.

The problem with the current approach is that it is unnecessarily limiting. It assumes that headers, footers, and sidebars are the only specific categories of template parts needed. By defining them in core, we lose all flexibility. In past themes, I have built more content-related template parts than I have for those three groups. Under this system, all of these would be tossed into a “general” category with every other template.

This is not an argument for WordPress to have a category to meet my needs. Instead, put this into the hands of theme authors to make the best decision for their theme. Create a way for end-users to categorize their custom template parts as a next step.

Sure, create some defaults like headers, footers, and sidebars. That makes sense. Just hand over some of the control.

by Justin Tadlock at March 04, 2021 10:54 PM under gutenberg

March 03, 2021

WordPress.org blog: The Month in WordPress: February 2021

You don’t have to be rich to have an online presence. You don’t have to find loopholes in proprietary platforms and hope that they never change their terms of service. You own all of the content that you create on a WordPress site and have the liberty to move it to a new host if you need to, or switch your theme if it fits your mood.

That was Josepha Haden Chomphosy on WordPress is Free(dom) episode of the WP Briefing Podcast, speaking about the four freedoms of open-source software. Those four freedoms are core to how WordPress is developed. A lot of the updates we bring you this month will resonate with those freedoms.


WordPress now powers 40% of the web

W3Techs reported that WordPress now powers 40% of the top 10 million websites in the world! Every two minutes, a new website using WordPress says, “Hello world”! For the top 1000 sites, the market share is even higher at 51.8%. Over the past 10 years, the growth rate has increased, which is reflected by the fact that 66.2% of all new websites use WordPress!

WordPress release updates

February was an eventful month for WordPress releases!

Want to contribute to upcoming WordPress releases? Join the WordPress #core channel in the Make WordPress Slack and follow the Core team blog. The Core team hosts weekly chats on Wednesdays at 5 AM and 8 PM. UTC. You can also contribute to WordPress 5.7 by translating it into your local language. Learn more on the translation status post.

Gutenberg celebrates its 100th release with version 10

The 100th release of the Gutenberg plugin — Version 10,  launched on February 17th, more than four years after the project was first announced at WordCamp US 2016. Matias Ventura’s post offers a bird’s eye view of the project over the last four years. Version 10 adds the basic pages block and makes the parent block selector visible in the block toolbar. Version 9.9 of Gutenberg — coincidentally, the 99th release of the plugin, which is also the latest Gutenberg release that will be featured in WordPress 5.7, also came out in February. Key highlights of the release include custom icons and background colors in social icons, a redesigned options modal for blocks (which is now called block preferences), and text labels in the block toolbar. 

Want to get involved in building Gutenberg? Follow the Core team blog, contribute to Gutenberg on GitHub, and join the #core-editor channel in the Making WordPress Slack group.

Full Site Editing updates

Full Site Editing (FSE) is an exciting new WordPress feature that allows you to use blocks outside the post or page content. The main focus of the Core team for 2021 is to merge FSE into WordPress core. Here’s the latest on the Full Site Editing project: 

Decision-making checklist for in-person meetups

The Community Team has published handbook pages and a decision-making checklist for organizers to restart in-person meetups at areas where it is safe to do so (e.g., countries such as New Zealand, Australia, and Taiwan, where there are lower COVID-19 risks). However, WordPress meetups and WordCamps in most parts of the world will remain online due to COVID-19.


Further Reading

Have a story that we should include in the next “Month in WordPress” post? Please submit it using this form.

The Month in WordPress post series is a collective effort, and it would not be possible without contributions from different members of the WordPress Community. Starting this month, we would like to credit and thank all individuals that support this effort with their contributions. I would like to thank the following folks for their contributions to February’s Month in WordPress: @adityakane @chaion07 @courtneypk @kristastevens and @psykro.

by Hari Shanker R at March 03, 2021 04:00 PM under Month in WordPress

March 02, 2021

WPTavern: Recreating the Music Artist WordPress Theme Homepage With the Block Editor

One of my favorite activities each week is to peruse the latest themes to land in the WordPress theme directory. Often, there are intriguing design concepts. However, much of the time, I am disappointed to learn that homepage designs of many rely on theme options instead of the block editor.

While the editor has several design limitations, theme authors have tons of room to explore. It has enough power to pull off some of these custom homepage designs with far less code work.

Music Artist was one of the latest themes to catch my eye. I loved the large hero area and several elements of the theme’s design. After installing it, I realized the homepage layout was handled through theme options. However, the theme author could have built this page entirely out of blocks and wrapped each section or even the entire design into block patterns.

This is all doable with the block editor.

So that I am practicing what I am preaching, I took a couple of hours and recreated the homepage demo for the theme directly from the block editor. No code required. There were a few tricky pieces, which I will get into. However, it was not that hard to build and could have been made easier if the theme supported the block editor.

The plan was to replicate the custom page with the Music Artist theme installed. However, the theme’s lack of block support meant that some things were fundamentally broken. Instead, I activated a theme with design similarities, such as fonts and colors. Because I already knew Ariele Lite worked with the block editor, it made sense to see if I could build with it. It proved to be a solid foundation.

The following is a comparison of the original Music Artist theme homepage (first) and a recreation using blocks via the Ariele Lite theme (second):

There are obviously differences in spacing, colors, typography, and other elements. Much of this comes down to stylistic choices by the theme designers. Given more time and modifications via a plugin like Editor Plus, I could have adjusted this enough to get a closer replica. However, my goal was to stick as close as possible as I could to core WordPress. Technically, I have the latest version of the Gutenberg plugin installed, so there might be a few items that have yet to land in WordPress.

For this experiment, I used:

  • WordPress 5.7 Beta
  • Gutenberg 10.1 Beta
  • Ariele Lite 1.0.8
  • Editor Plus 2.6

I only needed Editor Plus to make a couple of margin adjustments on the Group block. I could have left it alone, but I wanted to reduce some of the spacing between sections on the page to get a closer recreation. In the future, we will see more spacing controls in WordPress, so I considered this a fair trade-off.

This experiment is to show theme authors that they can build their custom designs with the block system. Dropping old-school theme options means a lot less code work for developers, allowing them to focus more on styling. End-users also benefit from more flexibility, such as adding custom elements or removing parts they do not want. That does not even include the style options on the individual block level.

The secondary purpose is to show users that they can create some of these homepages without code. The block editor and a well-rounded, block-ready theme can get you pretty far.

Recreating the Music Artist Homepage

Starting with a base of Ariele Lite meant that the design was boxed. However, the theme has a custom “Blank Canvas” page template that lets users design the entire page.

There were elements I could not recreate entirely because of limitations with the block editor. Other parts were issues or design choices coming from the theme.

The following is a general overview of how I accomplished building out each section of the homepage. I will skip over parts like adding colors and changing font sizes while focusing on the layout-related concepts.

Hero Section

WordPress’s Cover block remains one of my favorite blocks. It allows users to create hero sections without much work. I grabbed the background image from the original demo and plopped it in. I had taken the first real step down this journey.

Then, I added a Heading block, adjusting its size a bit. I followed it with a Spacer and Social Icons block.

I immediately hit two snags. The first was that WordPress does not include an iTunes social icon. I was unable to find an open issue on the Gutenberg repository for this. Perhaps it is not an oft-requested feature. The second issue was that the Social Icons block does not output the social network labels, so I could not replicate that part of the design.

Discography Section

There are a few ways to handle this section. Assuming the albums listed are a custom post type, whatever plugin these albums came from would ideally have a custom block for outputting them. Users could also use the Latest Posts block if these are blog posts or the upcoming Query block.

For simplicity, I decided to add a Columns block and drop three linked images in.

Media and Text Section

My plan for this section was to use the core Media & Text block. However, it only supports self-hosted media. There was no way for me to embed a YouTube video.

Instead, I went with a Columns block. In the left column, I dropped a YouTube video URL. On the right, I added Heading, Paragraph, and Buttons blocks.

Videos Section

This was a relatively simple section to recreate. For the layout, it took only a Heading block followed by a Columns block. Then, I grabbed a couple of video links from YouTube and pasted the URLs into the editor.

Latest Posts Section

This was the part of the layout that I had the most trouble with. WordPress provides the Latest Posts block, which can be set in a grid. However, Ariele Lite did not correctly handle the columns.

So, I cheated a bit.

I switched to a block-based theme that supports the upcoming Full Site Editing feature. Then, I dropped in a Query block to get more control over the columns of posts. Afterward, I switched back to the Ariele Lite theme.

The original design could be done with the current Latest Posts block, so this is not a block-editor problem.

Footer Sidebar Section

Technically, the footer sidebar is outside the scope of the homepage design. It is a part of the theme’s footer across the entire site. However, I decided to add it since I was already on a roll.

This section requires the Columns block. From that point, it is a matter of dropping in a Heading block for each column. I added a Paragraph, Calendar, and Gallery block to recreate the three “widgets.”

Ariele Lite’s Calendar block design works better on a light-colored background. It was a small pain point that I overlooked. In the long term, WordPress should provide design controls on blocks that are missing them.

by Justin Tadlock at March 02, 2021 10:52 PM under Themes

WordPress.org blog: WordPress 5.7 Release Candidate 2

The second release candidate for WordPress 5.7 is now available! 🎉

You can test the WordPress 5.7 release candidate in two ways:

Thank you to all of the contributors who tested the Beta/RC releases and gave feedback. Testing for bugs is a critical part of polishing every release and a great way to contribute to WordPress.

Plugin and Theme Developers

Please test your plugins and themes against WordPress 5.7 and update the Tested up to version in the readme file to 5.7. If you find compatibility problems, please be sure to post to the support forums, so those can be figured out before the final release.

The WordPress 5.7 Field Guide will give you a more detailed dive into the major changes.

How to Help

Do you speak a language other than English? Help us translate WordPress into more than 100 languages!

If you think you’ve found a bug, you can post to the Alpha/Beta area in the support forums. We’d love to hear from you! If you’re comfortable writing a reproducible bug report, file one on WordPress Trac, where you can also find a list of known bugs.

Props to @lukecarbis for the haiku and @audrasjb and @hellofromtonya for peer reviewing!


Five-seven next week
So test your plugins and themes
Update your readme

by Ebonie Butler at March 02, 2021 08:49 PM under Releases

Akismet: Version 4.1.9 of the Akismet WordPress Plugin is Now Available

Version 4.1.9 of the Akismet plugin for WordPress is now available. It contains the following changes:

  • Improvements to how Akismet handles checking pingbacks in XML-RPC multicall requests.

To upgrade, visit the Updates page of your WordPress dashboard and follow the instructions. If you need to download the plugin zip file directly, links to all versions are available in the WordPress plugins directory.

by Christopher Finke at March 02, 2021 06:13 PM under Releases

March 01, 2021

WPTavern: Editor Plus 2.6 Adds Block Pattern and Template Library

A couple of weeks ago, Munir Kamal released version 2.6 of his Editor Plus WordPress plugin. The latest version does not add a slew of features as its users have seen in the past. However, it introduces one major upgrade. The new version lets users insert templates from Gutenberg Hub’s growing library directly from the block editor.

I first asked Kamal whether he would include a template inserter in his plugin in July 2020. “I will possibly include a direct inserter for templates and blocks in the Editor Plus plugin,” he said at the time, not giving away too much.

He had just launched Gutenberg Hub’s block library (really, something more akin to block patterns). The system was useful but far from perfect. Users could copy a JSON code snippet and import it via Editor Plus. This was a slight improvement over copying separate block HTML and CSS snippets from an earlier iteration of a block template system he had launched last March. It was still not an ideal system, but anyone paying attention could see the possibilities.

Over the months since that launch, Kamal continued to build more tools into Editor Plus. He launched a separate landing page template directory. And, he continued adding more items to Gutenberg Hub’s library.

“I am already working on adding a Template Inserter in my EditorPlus plugin,” he said when we talked in September. “It will allow users to browse and insert these templates directly from Gutenberg without leaving the website.”

I had already been hounding him for months, and he knew that I would ask. He was looking for feedback, not wanting to push something out before he felt that it worked.

“Earlier, I created a template inserter similar to other blocks plugins, but later I changed my mind and thought that I should integrate with the Gutenberg Patterns API and load the templates into the ‘patterns’ panel in the block inserter,” he said. “But, I am having a few issues and thinking about going back to the original idea to have a Templates button on the top toolbar that opens a popup window to browse and filter templates that users can insert on a click.”

It was an almost methodical process toward building a massive body of work in a year. As is often the case with Kamal’s work, he quietly pushed out version 2.6 of his plugin. Even without much fanfare, he has managed to surpass 4,000 active installs, doubling its number in the past few months.

Now all of the plugin’s users have direct access to Gutenberg Hub’s section patterns and landing page templates.

The Template Library

Editor Plus 2.6 adds a new “Library” button to the block editor’s post header toolbar. It pops up a simple overlay of the plugin’s layout choices.

Users can insert a “Pattern” or a “Template,” as they are called through the plugin’s UI. Patterns are pre-designed sections that end-users can use to piece together larger page layouts. Templates are full-blown page designs, ready for deployment after content customization. Many of the patterns are present in the templates. It all comes down to how users want to build their pages — piecemeal vs. having everything in place.

Modal showing block templates.

Of course, everything is editable. Users can insert a template then proceed to removing the bits they do not need and adding custom blocks of their choosing.

The overlay that appears after clicking the Library button allows users to select a pattern or template. This method is becoming increasingly common among block-related plugins. Where the Gutenberg project has fallen behind in its patterns UI, plugin authors are filling the gaps and creating better user experiences. Genesis Blocks, for example, adds a similar overlay for choosing layouts. Patterns, templates, layouts, or whatever-you-want-to-call-them all need room to breathe instead of being relegated to a width-restrained flyout. What makes sense on mobile does not always create an ideal experience on larger screens.

Viewing a photography template.

Once a user finds a pattern or template to insert, they can click on it to view a larger version. If they are satisfied, they merely need to click the “Add” button to insert it into the content canvas.

An important caveat is that what you see in the library is not exactly what you will get. The library uses screenshots to showcase the patterns and templates. These images are created while using a different theme than what a particular user has installed on their site. Things like fonts will match whatever theme is installed. Generally speaking, the overall designs should match up fine.

In the future, perhaps Editor Plus will handle the pattern and template previews with live instances instead of screenshots.

Cafe-type full landing template.

The plugin breaks its library down into 15 categories, such as Arts & Entertainment, Photography, and Real Estate. It is almost a bit excessive. Some contain only one or two templates. Combining categories like Home Services, Professional Services, and Retail into an all-encompassing Business group could help curb the dizzying effects of too much choice.

The new library in Editor Plus 2.6 is a welcome addition. Overall, it worked well in testing.

by Justin Tadlock at March 01, 2021 09:35 PM under EditorPlus

WPTavern: Elementor Raises Eyebrows with Google Ads Targeting Full-Site Editing

WordPress’ growing market share is fueling a continual influx of new users but also a higher level of scrutiny around advertising. Companies with large advertising budgets target this segment of consumers, because many who are new to WordPress need help hosting and creating their websites.

Last week Bluehost pulled an advertisement that misused WordPress’ trademark. The company’s PR department has not responded to our request for comment, but onlookers have noted that this isn’t the first time Bluehost has floated questionable ads. Multiple Facebook campaigns, dating back several years, include trademark abuses, as well as active campaigns on YouTube in various markets.

In another advertising-related matter, Elementor, a popular page builder used by more than five million websites, has caught some attention recently for its Google ads that target “full-site editing.” Birgit Pauli-Haack, publisher of the Gutenberg Times, pointed out the ads last week in the Post Status Slack community.

“I have no trouble if Elementor and Beaver Builder duke it out on the Google Ads,” Pauli-Haack said. “It’s certainly fair game. Why I think it’s shady in regards to WordPress? It’s the searcher’s intent diverted, in a misleading way. 30% of Google Searchers do not know that the first results are paid ads and are led astray. Information about Full Site Editing has people already confused and worried. It doesn’t help if someone hijacks the new feature’s keyword. WordPress is also an easy target because the Foundation certainly doesn’t have any money to throw at the problem to bid higher on the keywords.”

At first glance the keyword targeting may appear to skirt the line of ethical advertising, but Elementor representative Ben Pines claims the company is simply advertising for a feature set of the same name. It enables customers to edit the header, footer, archive and single templates, and page or post content on the same screen.

“Our google ads vary to provide the most value for users in the search,” Pines said. “This one is no different. This doesn’t represent any new strategy. We released full site editing back in March 2020.”

Pines referenced a beta release post dated March 1, 2020, which referred to Elementor’s “groundbreaking Full Site Editing feature.” WordPress’ Full-Site Editing project predates this release by at least a year.

“Full site editing is a very generic industry name and is a fundamental capability in website building tools, searched by many of our users,” Pines said.

When asked if Elementor is considering changing the name to avoid confusion with the core WordPress project, Pines said, “We don’t see any potential confusion. Elementor’s capabilities and ads are clear.”

Others involved in the conversation on Post Status Slack said this type of advertising seems to be standard practice in the world of ad buying, since they are buying based on relevant keywords. Competitors also routinely purchase each other’s keywords.

“Instead of supporting, it is undermining the project,” Pauli-Haack said.

She and other participants in the conversation about the ads found it hard to believe that the strategy is not intentional. Some were also irked by other Elementor ads running on Google and Facebook that attempt to capitalize on users’ frustration with WordPress.

Elementor’s advertising appears to be a self-preservation strategy, as Gutenberg’s full site editing capabilities will inevitably ring the death knell for page builders that don’t build on top of the core standard. Third-party page builders will need to overcome severe performance deficiencies in order to remain competitive.

Understanding where full-site editing is heading is critical for WordPress site owners who are adopting new tools and workflows that will be future-proof with core changes. During this transition many will likely be googling for solutions that will enable them to be on the ground running when core introduces its full-site editing MVP in WordPress 5.8.

Participants in the conversation noted that the Elementor team is not very involved in contributing to the open source project. This may be why the team claims they cannot see any confusion in targeting Google ads at users searching “full-site editing.”

“We actively contribute to WP and its ecosystem through sponsoring events, translations, accessibility tools and more,” Pines said. “We are looking to further our contribution even more this year and are on the look out for a dedicated team member.”

by Sarah Gooding at March 01, 2021 09:06 PM under full site editing

February 27, 2021

WPTavern: Chrome is Testing a Follow Button for Websites

Chrome Canary, the browser’s nightly build for developers, has been testing a new Follow button, as spotted on Android by the publishers of Chrome Story. The button appears on the homepage of a site, as well as in the browser menu:

Chrome Story speculates that it may be integrated with Google’s Discover feature, allowing sites to be easily added to that feed. Others speculated more broadly that Google may be building a replacement for Google Reader.

Any whisper of Google Reader being resurrected always causes a bit of a stir, as many loyal users are still in mourning for the beloved RSS reader, which was discontinued in 2013. Linking this new Follow feature with Discover may be the closest Google gets to bringing it back. A full-featured RSS reader will likely still be a better option to have full control of your feeds and how they display. However, it may be possible for developers to build tools that fetch and aggregate feeds captured by the Follow button.

Before the explosion of social media sites, RSS buttons were prominently featured on WordPress blogs. Having the ability to follow a site for new updates, without having to check back manually, was an important feature if you wanted to be found in the nascent blogosphere. RSS is still alive and well, even if following a curated list of sites isn’t the primary way people get their news today. Many internet users don’t know the first thing about subscribing to feeds but Google’s new Follow feature might make the idea more approachable.

Canary is unstable, but if want to check out features on the bleeding edge of Chrome development, you can install Canary for Android alongside your regular browser and choose when you launch it. At the time of publishing, the Follow button was not in the latest build but Google sometimes puts features in and pulls them out while they are in development. We will be following to see how this takes shape.

by Sarah Gooding at February 27, 2021 02:40 AM under rss

February 26, 2021

WPTavern: Ask the Bartender: What Happens When Block Markup Changes?

I’m a developer that has started developing with Gutenberg recently. There are a bunch of amazing benefits and features, but there are also a ton of drawbacks, inconsistencies, as well as absolutely awful and outdated documentation.

One of the worst aspects of Gutenberg from a developer perspective has been block validation. Consider the following scenario. I build a custom (non-dynamic) JavaScript-based block, and a CMS editor adds the block to thousands of pages. What happens when or if I need to update the markup of the block?

By default, all of the blocks will enter a state of invalidation and not reflect on the front-end of the site. The CMS editor would have to go into thousands of pages and manually click the button which allows the block to be recovered.

Block deprecations have been suggested as a way to resolve this, but the API is poorly documented, confusing, and seems like it would become unmaintainable in the long term with more than a few deprecations.

Shouldn’t there either be a way for block developers to opt-out of the validation process or a global way to recover blocks?

PJ

You are certainly not holding anything back, PJ. While much of this is a bit more technical than I typically like to cover here at the Tavern, I decided to reach out to Riad Benguella, one of the lead Gutenberg developers, for more insight into the situation.

Before diving into his response, I have given one aspect of your question some thought. There are times when developers need to deprecate old markup and move onto something new. However, this should not happen often. Generally, it is a sign of poor architecture if the HTML needs to be overhauled regularly. This also leads to other issues, such as a third party not being able to maintain stylistic changes.

When developing blocks or any type of application that outputs front-end code, you need to think about what that should look like today and in 10 years. What happens if a user adds some custom CSS to style your block and the block’s HTML structure has changed? From their perspective, your block update has broken their site. The same could be said for another plugin that extends your plugin in some way.

Ask any theme author how frustrating it is any time Gutenberg/WordPress changes its block output. While it has improved in the last couple of years, styling blocks for the editor and front-end has often been a maintenance nightmare.

As a developer, I have always tried to think through any real-world consequences of making these changes from a user’s perspective. That should happen from Day #1, not after you have released your project.

Doing this adds time to the early project when you are just trying to get it out the door and into users’ hands. This is where taking a pre-release step back helps. Get away from the computer. Go on a walk. Think about the architecture of your project and whether it is ideal for the long term.

“For the block versioning/updates, it’s indeed one of the areas of the Gutenberg APIs where we needed to make architectural tradeoffs, and we decided to favor the user experience over the developer’s,” said Benguella.

Regardless of your development method, following the project’s approach of a user-first experience will help in the long term.

“To understand the problem properly, one needs to understand how blocks work and are edited,” said Benguella. “Block instances are a JSON object, and the editor UI manipulate that JSON, but in order to stay backward compatible, to ensure the preservation of user’s content in the most readable format, and to embrace web standards as much as possible, the block editor doesn’t store the JSON object but an HTML serialization of it in post_content.”

That serialization is parsed and converted to JSON when the editor reloads the content to edit again. In the final stages of parsing, it is up to the block author to decide how to save and parse the object.

“Now, imagine if a user altered the saved HTML (serialization) and just put any random content there,” said Benguella. “The block might not be able to parse the HTML properly because it doesn’t match its expectations (what has been defined by the block author), which means recreating that JSON object in order to be manipulated won’t be possible at this point.”

When this happens, the block editor provides the user with an interface to make an informed decision. They can attempt to “force parse” the block JSON or convert it to an HTML or Classic block.

Invalid block after altering the markup.

This same type of invalidation can happen when a plugin developer updates their block. However, instead of the saved HTML changing, the developer changed the “expectations” of the block — altering how it gets saved and parsed.

“Which is why we ask block developers to provide block deprecations representing the old markup of the same block,” said Benguella. “Deprecations can also be thought of as valid, alternate sources for the same block. This allows the editor to parse the old markup when loaded and save the new markup back if an update is made to the block.”

WordPress has block deprecation documentation. However, it is not thorough. The best source of seeing real-world deprecations is looking through Gutenberg’s block library. Deprecated blocks have a deprecated.js file.

Benguella said that this system can be frustrating for block authors. This is especially evident in a development environment when making changes. This has lead developers to ask for a method of disabling the validation algorithm.

“It’s something we don’t want to provide at the moment because, as explained above, the validation is also important when markup changes for another reason (external edit, another editor, etc.),” he said. “So it may cause content loss for users without them being aware of anything. The preference right now is given to user awareness.”

The team has improved the validation system over time, allowing for small changes that do not break the block state. There is also an open ticket for improvements in the future.

by Justin Tadlock at February 26, 2021 04:53 PM under gutenberg

February 25, 2021

WPTavern: The Gutenberg WordPress Plugin To Introduce a Table of Contents Block

What was once likely viewed as plugin territory is now a reality as part of the Gutenberg project. Yesterday, the team merged a pull request for a Table of Contents (TOC) block into the plugin’s codebase. It was a contribution driven by developer Zebulan Stanphill, starting nearly a year ago.

The TOC block may feel a bit niche. However, there is obviously a need for it. There are at least two standalone block plugins to handle the feature, and several block library plugins cover it. Last week, a reader asked about such a solution. Soon, the Gutenberg plugin and, eventually, WordPress will have him and others covered.

The block is not currently available in the plugin on WordPress.org. It has not officially shipped yet. To test it, users will either need to clone the Gutenberg GitHub repository or grab a ZIP file of the nightly beta. It should land in Gutenberg 10.1 in the coming weeks for those who want to wait.

Including these more-niche blocks is a good direction for the project — a Footnotes block is also a possibility. While it can feel like stepping on the toes of plugin developers, WordPress needs to branch out. There is plenty of room for third-party devs to build other blocks. The experience is degraded when users have to sift through multitudes of plugins to find something core to their writing process. There are limits on what blocks should ultimately be included in the platform. However, WordPress is publishing software. Advanced writing features, such as TOCs and footnotes, belong firmly in the default setup.

The Table of Contents Block

This block is a bit different than other blocks users are accustomed to. A TOC is a list of all the headings in a document. In the case of WordPress and webpages in general, a TOC links to those headings. This allows users to jump around the page. The block depends on other blocks in the content, a slightly new concept for the block editor.

When first adding the block to an empty page, it will display a helper message.

Initial TOC block when no Heading blocks are present.

Users must begin adding Heading blocks in their post to make use of the TOC block. Once they are added, each Heading is shown as a list item. The block also properly nests list items for sub-headings — an H3 goes into a sub-list under an H2, for example.

Headings become list items in the TOC block.

This is the moment things become more complex. On the web, a TOC needs to link to those headings so that readers can jump to the section they want to view. Right now, this does not happen automatically. Perhaps it will do so in the future, but users must manually add HTML anchors to make the linking part work. Ideally, the initial helper message would link to the documentation page on how to do this for new users.

Adding HTML anchors is easy. However, it could be a ton of work for long posts with dozens of headings.

To add the anchor, users must click on each Heading and navigate to the block options panel. Under the Advanced tab, enter a unique ID. It is easiest to name this after the text itself. A Heading block with “A New World” gets an anchor of a-new-world. This also helps when others are deep linking into posts, creating prettier URLs, such as yoursite.com/blog/post-name/#a-new-world.

Adding anchors to Heading blocks.

The TOC block does not have any design settings. If users need to change the colors or other design-related elements, it is best to wrap it inside another block, such as Group or Cover.

Wrapping the TOC into a Group block.

If adding a heading for the Group block or before the TOC block, it will be added to the list. It is best to use the Paragraph block as a faux heading and change the font size.

Overall, the block works well. Except for the manual insertion of anchors, it is a welcome addition. Perhaps a plugin author will come along and write the code to make it automatic.

by Justin Tadlock at February 25, 2021 09:49 PM under gutenberg

WPTavern: Bluehost Misuses WordPress Trademark, Reigniting Controversy Over Recommended Hosts Page

Bluehost was called out this week for misusing WordPress’ trademark, as the WordPress Foundation prohibits its use in advertising. The company has been featured on WordPress’ recommended hosting page for the past 16 years, as one of a handful of hosts that have been arbitrarily selected based on an incomplete list of criteria.

The wording of the ad in this instance, “There is a reason WordPress officially recommends Bluehost more than any other hosting service,” was a visceral reminder to the hosting community of being excluded from the benefits that listing confers.

In response to the issue, WordPress’ Executive Director, Josepha Haden Chomphosy scheduled a call with Bluehost to find a resolution. She provided the following statement after the call:

This was flagged to me on Twitter, and I immediately reached out to learn more. Bluehost removed the ad proactively, and they scheduled a call with me and a representative of Automattic to understand the concerns being raised. As Matt mentioned, commercial use of the WordPress trademark is permitted, and Automattic can sub-license that use.

From a WordPress project standpoint, Bluehost was swift to respond to this issue, and took immediate steps to better understand how the trademark and logo are allowed to be used. When mistakes like this happen, we ask companies to keep us informed about how the issue is resolved, and Bluehost has agreed to do that.

Bluehost has not yet responded to our request for comment.

In the meantime, the incident reignited the controversy that has plagued WordPress’ recommended hosting page for years. Continuing the conversation that started on Twitter, members of the Post Status community pressed for more clarification in the club’s #hosting channel.

In response to claims that inclusion on the page is a closed process, and that the selected hosts haven’t changed in three years, Matt Mullenweg offered what is perhaps the most forthcoming response the community has seen on this topic:

When the list is open, anyone can apply. I take 100% responsibility for the editorial, though in the past and future will have people help with testing hosts, and collating all the threads in the forums. I also get a fair number of people emailing me directly feedback about the hosts listed, and how the host follows up is part of my evaluation.

It’s true the list of hosts hasn’t been changed in a while. The current list is all in good standing. I stand by the long-term behavior and service of every company linked on that page. It is past-due for open applications again, but I have prioritized other work on .org.

No one can pay to be on the page, and there are no affiliate payments made for customers sent from that page. It’s free, opinionated, and editorially driven. I do believe it drives many millions of year in business, which is why the potential for things like bribery or conflict is high if it were open to a larger group deciding who’s on there.

The hosting recommendations page exists to reduce barriers for new users looking to get started with WordPress without having to shop around among thousands of hosts. WordPress.org is not transparent about who makes the decisions regarding recommended hosts or what criteria is used. Because it benefits a select few very large companies who have dominated the recommendations for years with few changes, rumors abound.

Mullenweg’s response confirms that currently there is no “pay-to-play” type of arrangement, but he did not say if this has always been the case. In the beginning, this page was called “WordPress Hosting Partners” and included the following text: “Signing up through this page will help us finance WordPress.org’s operations through partner deals.” That wording was changed in April 2005 to remove the reference to partners. However, previous versions of the page from years ago include what appear to be tracking or affiliate links for the hosts listed. For example, a version of the page from 2007 includes the following links:

According to the Internet Archive, 2009 was the last year that tracking ID’s were appended to the links on the recommended hosts page. A few examples from that year include:

The copy on the page hasn’t changed much over recent years. It currently gives the following criteria to be listed but it doesn’t specify why only three companies meet these standards:

We’ll be looking at this list several times a year, so keep an eye out for us re-opening the survey for hosts to submit themselves for inclusion. Listing is completely arbitrary, but includes criteria like: contributions to WordPress.org, size of customer base, ease of WP auto-install and auto-upgrades, avoiding GPL violations, design, tone, historical perception, using the correct logo, capitalizing WordPress correctly, not blaming us if you have a security issue, and up-to-date system software.

With such a diverse hosting ecosystem supporting WordPress users around the world, it’s difficult to understand why there aren’t more companies included among these listings. The era when tracking links were included on this page was a different time before many things were formalized, but the community could stand to receive a transparent history of this page.

“To my knowledge, no one has ever paid to be on that page, and certainly no one has ever approached me about doing so,” Josepha Haden Chomphosy said when asked about the process for getting listed.

Thousands of volunteer contributors are continually building and improving this software. It’s only natural that the community is curious about who is benefiting from the project’s hosting recommendations and the nature of those arrangements. Mullenweg estimates the impact of that page as “many millions per year in business,” but the process surrounding the selection of hosts is closed and not clearly outlined.

Following the incident with Bluehost, Mullenweg briefly elaborated on why Bluehost retains its position on the page despite some people reporting poor service:

Regarding Bluehost or other large hosts, there is an aspect of WordPress Utilitarianism, any business will have some unhappy people, but a small % gets to a high absolute number at scale. I try to look at hosts that are doing the most good for the most number of people. Will definitely keep an eye on if anything with their approach to WP customers post-merger, but they also have a lot of good karma built up over a very long period of time. Bluehost, for example, does the best job I’m aware of in keeping the largest number of WPs on the latest version, and deploying updates incredibly fast. (If another host does more, please let me know! GD I think has more sites, but fewer on latest version.)

Another point of contention that regularly pops up is Automattic’s exclusive commercial license for using the WordPress trademark. Mullenweg clarified why the company is in possession of this exclusive right after Automattic donated it to the foundation. He confirmed that Bluehost was not given permission to run the ad with the trademark:

A common misunderstanding is that there is no commercial use of the WordPress trademark allowed. As some know, the trademark was originally held by Automattic, which donated it to the Foundation, and in return got an exclusive commercial license back. That commercial use can be sub-licensed by Automattic, and has been in the past. The ad that is bugging everyone was not approved, as far as I’m aware, and that will resolve once everyone has had a chance to talk to each other. Automattic can lose its commercial license to the trademark if it is not a good steward. This license is a bit of an accident of history, but also an entirely fair criticism of Automattic having a special privilege to commercial use of the WordPress trademark (because it’s true, vs most of what the company gets accused of). This happened in 2010, and the growth of WP and the WP ecosystem has been incredibly strong since then so I think the idea of a for-profit and non-profit complementing each other has proven successful, and I think better than either would have done on their own.

Mullenweg seems to recognize the friction that trademark matters can create in the community and said that he would change the naming of WordPress.com if he could go back in time.

“If I could wave a magic wand and go back to 2004, though, it would be nice if .com and .org had distinct names ‘before the dot,’ as it can be a source of confusion,” he said.

These things can certainly be changed in the present but not without a severe blow to the benefits of Automattic’s special privilege of commercial use. It would also impact the company’s millions of users who call WordPress.com their home on the web.

In the interest of eliminating some of the confusion regarding conflicts of interest and commercial use of the trademark, a continual movement towards transparency will be required. WordPress.org’s recommended hosts page is overdue for an update. Ideally, this page will provide clear guidelines about the process and criteria for inclusion before opening up applications again.

by Sarah Gooding at February 25, 2021 04:06 AM under hosting

February 24, 2021

WPTavern: Build a Full WordPress Site via Block Patterns With the Hansen Theme

Earlier today, the WordPress theme directory welcomed its fourth block-based theme. Built by UXL Themes, Hansen is one of the more stylish projects capable of working with the site editor in the Gutenberg plugin. The theme author also stepped it up a notch and included several block patterns.

I have written about how patterns will be a game-changer. I have talked about the need for a UI overhaul to better expose them to users. And I have proposed that theme authors use the pattern system instead of templates, allowing users to build out full sections of their sites at the click of a button.

UXL Themes has done just that. Most patterns that we have seen thus far have been built primarily for post or page content. The Hansen theme takes that idea a step further and creates patterns for different site sections.

Want to try a different look for the header? Just remove the old one and swap in another header pattern.

Inserting the dark header pattern.

How about changing the look of your blog posts page? The theme comes with two and three-column patterns for outputting the latest posts.

Inserting a two-column blog posts pattern.

It also packages a Content and Sidebar pattern that is more suitable for single posts and pages.

I am still undecided on whether the patterns or template parts system is the ideal solution for this. Right now, patterns have a cleaner UI overall and can be categorized. Template parts might be easier to switch, but there is no way to group them (e.g., header templates, footer templates, etc.). Regardless of what becomes the de facto standard in the long term, we need more theme authors like UXL Themes experimenting with these concepts, seeing what works, and gathering user feedback.

The theme does not add much in the way of content patterns. However, it does include one named “2 Columns of Text and a Full-Width Cover.” While it is a bit of a mouthful, the name does fully describe what it does. This is also the pattern in use for the homepage in the theme’s demo. However, the demo has a slight modification, adding a custom latest posts section.

Hansen content-related pattern.

Hansen is more than just its patterns. The theme generally looks pretty good too. It has a bit more pizazz than we have seen from some other block-based experiments. Like the recently-released Phoenix theme, developers are becoming more comfortable moving beyond the bare-bones block-based designs from previous months.

These themes are obviously not on par with what one could build on more mature systems. However, Gutenberg’s FSE system is inching forward. The theme authors who are experimenting now are paving the way for the next generation of themes, which I am excited to see.

The Hansen theme also includes several block styles. Most are geared toward blocks that users would typically use in the site editor. I have not seen such an approach in previous block-based themes.

Two of the styles are for mobile navigation. The Mobile Friendly style displays a horizontal nav menu on desktop while switching to a hamburger-flydown on mobile devices. The Mobile Style alternative retains the mobile layout on all screen sizes.

There is a Box Shadow style for the Query Loop block, which adds a shadow to each post. In the future, I hope to see WordPress provide box-shadow options for this instead of themes relying on block styles. Nevertheless, it is a welcome addition for the moment.

Box Shadow style for the Query Loop block.

The No Bottom Margin style allows users to remove bottom margin from Columns. I assume the theme author used this to address the common issue of nested blocks and their bottom margins adding on top of each other. I do not like this as a style because it gives the user the responsibility of fixing a design issue that should be taken care of under the hood. Generally, the problem stems from tackling spacing in design using a bottom margin instead of a top margin. It can be corrected in either case, but going with a top-margin approach is easier.

Outside of that one stylistic issue, the other downside to the theme is that it is not well-suited to long-form content out of the box. The content area stretches too wide for the default font size, making for uncomfortable reading. The theme includes a Narrow Width style for the Group block that corrects this. However, it would ideally be the reverse, with the content defaulting to a narrower width. Whenever a user wants to write a long-form blog post, they would need to wrap it in a Group block and apply the Narrow Width style. The more common use case should be the default.

Overall, I love the experimentation. Hansen is one of the best themes for playing around with the site editor in Gutenberg right now.

by Justin Tadlock at February 24, 2021 10:21 PM under Reviews

WordPress.org blog: Did You Know About Reusable Blocks?

Created by Joen Asmussen, @joen

The WordPress block editor (a.k.a. Gutenberg) comes with a feature called “reusable blocks.” They are blocks, saved for later, edited in one place.

Have you ever wanted to:

  • Re-use the same snippet of text across posts and pages?
  • Save complex layouts to spare you having to copy/paste from one post to another?

Reusable blocks can do these things.

Like templates, you mean?

Not quite. Think of reusable blocks as snippets of globally synchronized content that are personal to you. You can edit all your reusable blocks in one place, and any post or page you inserted that block into, get the updated version as well. 

Where you might use templates to structure your website, you can use reusable blocks to structure your content. For example:

  • A testimonial on your homepage and your product page.
  • A “this post is part of a series” box that you insert part-way through your article.
  • A “Follow me on social media” section you can weave into the prose of your popular article.
  • Complex but static blocks, such as a “Subscribe to my newsletter” box, a contact form, a survey, quiz, or polls.

Key properties are that reusable blocks are unbeatable when you want to reuse a snippet of content, edit it in one place, and have the changes propagate to every instance.

Show me how

To create a reusable block, open the block editor and create the content you want to reuse:

Now select the content you want to turn into a reusable block, then click the three-dot “More” menu and choose “Add to Reusable blocks.”

Voilà, you’ve now created a reusable block. From now on, you can find this block, and any other you create, in the “Reusable blocks” tab in the block library:

This is also where you can insert the newly created block on any of your posts or pages.

Where do I edit my existing reusable blocks?

To edit a reusable block, select it and make your edits. When you make an edit, the Publish button will have a little dot indicator:

This dot indicates you’ve made a global change that potentially affects posts beyond just the one you’re editing, the same as when you’re editing templates. This lets you confirm the change was intentional.

Another way to edit your reusable blocks is to click the global three-dot “More” menu and selecting “Manage all reusable blocks”:

This takes you to a section letting you edit, rename, export, or delete every reusable block you created. 

What else can I do?

Here are a couple of tips and tricks you can leverage to get the most out of reusable blocks.

Give them a good name

When you name a reusable block, you are essentially choosing your search terms, as the name is what you search for in the block library (or when you use the “slash command,” typing / in an empty paragraph):

Avoid names such as “Gallery” or “Image,” as that’ll be annoying when you just want to insert one of those. You can avoid that with a unique name, such as “My author biography.”

Insert in the best place of your content flow

One obvious benefit of reusable blocks is that they are just blocks, just like everything else in the block editor. That means you can insert it anywhere in your content. You might want your rich author biography to sit at the top or bottom of the post, but This post is part of a series box that might sit well two or three paragraphs not to disrupt the reading flow.

A design shortcut

Maybe you created a complex layout you’re happy with, a call to action with the right image and buttons, and it took a while to get it just right. Go on and save it as a reusable block: even if you mean to insert it only to convert it to a regular block, it might still save you a minute. 

To convert a reusable block to regular (blocks, select it and click the “Convert to regular blocks”:

Design by Beatriz Fialho.

Tip: You can also find some nice patterns on Gutenberg Hub or ShareABlock.

Take it with you

Need to move to another site? You can both export and import reusable blocks. Go to the Manage all reusable blocks section from the global three-dot “More” menu, hover over the block you want to export, and click “Export as JSON”:

The downloaded file can be imported on any WordPress 5.0 or newer website.

Try it

Create a draft post and play around with Reusable Blocks to see how you might start using them. You can always delete them when you’re done playing.

You can test importing and using a small reusable block I created as an example. It’s a “Further reading” block that shows the four latest posts from the category “Featured”:

It might work well as a highlight in an article, giving the reader something new to read or awareness of your other content.

The videos in this post show the reusable blocks flow in the upcoming WordPress 5.7.

Download the block from this gist, import it to your WordPress site, then customize to make it yours.

by Chloe Bringmann at February 24, 2021 07:17 PM under tutorials

February 23, 2021

WPTavern: WordPress 5.7 Lets Administrators Send Password Reset Links

It’s that time in the release cycle when all the dev notes are rolling out ahead of the next major update. These notes include technical summaries of all the goodies coming in the next release. If you haven’t been paying close attention, there are always a few happy surprises in there that pop up as conclusions to tickets that contributors have been working on for years.

The new password reset feature coming in WordPress 5.7 allows administrators to manually send a password reset link to users, resolving a five-year old ticket. Instead of having to instruct a user about where to go to click on the lost password link and follow the steps, this new feature lets administrators push a button in the admin to send the link. If you have ever had to support clients or a community of users who may not be very technically inclined, this new password reset feature will save lots of time in helping users regain access to their accounts.

The “Send password reset” link is available in several places. Administrators can find the link on the Users screen, as well as in the bulk actions dropdown menu.

It is also available on the individual user screen with a button and a note clarifying that this action will not change the user’s password or force the user to change it.

The password reset email notification includes the site name, username, a password reset link, and the IP address where the request originated:

This password reset request originated from the IP address [IPADDRESS].

There is an open discussion on the original ticket regarding whether this email notification should include the administrator’s IP address.

“The IP address (while fraught with privacy concerns) is the only thing validating that this email came from the website and is not a phishing email,” contributor Gabriel Mariani said. “Unless there is a better way to validate the authenticity of the email I’d say it would be worthwhile to keep it.”

Others see the IP address as useful only if a user is attempting to verify that it is their own IP address or collecting the information to prevent a phishing attack. Giving out the administrator’s IP address doesn’t seem pertinent to either of those concerns.

“I could use my phone to send a reset, and I would have no idea what my IP was,” Mika Epstein said. “And that can easily be faked. Omitting the IP actually reduces the data being sent out that could be used by bad-actors.

“I think it’s more likely we’d have a savvy bad actor than end users who would need to ask for a password reset but also know what a valid IP is and how to ask about it.”

This part of the email text may be iterated on in subsequent patches or future releases of WordPress. Check out the dev note for more discussion on this feature, along with information about further customizing the notification email.

by Sarah Gooding at February 23, 2021 10:38 PM under passwords

WordPress.org blog: WordPress 5.7 Release Candidate

The first release candidate for WordPress 5.7 is now available! 🎉

Please join us in celebrating this very important milestone in the community’s progress towards the final release!

“Release Candidate” means that the new version is ready for release, but with millions of users and thousands of plugins and themes, it’s possible something was missed. WordPress 5.7 is slated for release on March 9, 2021, but your help is needed to get there—if you haven’t tried 5.7 yet, now is the time!

You can test the WordPress 5.7 release candidate in two ways:

Thank you to all of the contributors who tested the Beta releases and gave feedback. Testing for bugs is a critical part of polishing every release and a great way to contribute to WordPress.

What’s in WordPress 5.7?

  • Robots API and Media Search Engine Visibility
  • Detect HTTPS support
  • Lazy-load iframes
  • jQuery migrate-related Deprecation notice clean-up
  • Admin color palette standardization
  • Version 9.9 of the Gutenberg plugin.

Plugin and Theme Developers

Please test your plugins and themes against WordPress 5.7 and update the Tested up to version in the readme file to 5.7. If you find compatibility problems, please be sure to post to the support forums, so those can be figured out before the final release.

The WordPress 5.7 Field Guide will give you a more detailed dive into the major changes.

How to Help

Do you speak a language other than English? Help us translate WordPress into more than 100 languages! This release also marks the hard string freeze point of the 5.7 release schedule.

If you think you’ve found a bug, you can post to the Alpha/Beta area in the support forums. We’d love to hear from you! If you’re comfortable writing a reproducible bug report, file one on WordPress Trac, where you can also find a list of known bugs.

Props to @audrasjb for copy suggestions and @davidbaumwald for final review.


Test this test that
Catch everything that you can
Before it’s live…
🤯

by Ebonie Butler at February 23, 2021 09:07 PM under Releases

WPTavern: FSE Outreach Round #2: Building a Custom Homepage With Gutenberg’s Site Editor

Anne McCarthy announced the second round of testing for the Full Site Editing (FSE) Outreach program. The call for testing asks that users build a homepage from the Gutenberg plugin’s site editor. Feedback is open until March 5.

The first round of testing began in December 2020 and ended last month. Testers were able to identify several pain points with template-editing mode from the block editor. The program created actionable items that Gutenberg developers could work to improve.

This second round is similar. However, testing covers a much larger and more complex area. Users will be leaving the familiar block editor and moving to the site editor, which is still months away from being a viable product.

McCarthy listed a 22-step process for building out a homepage. While I followed it for the most part, I got bored before finishing. This is one of the reasons I make for a poor test subject. I like to explore and see what is possible on my own. If I have an idea, I want to attempt its execution. I primarily stuck to the overall script, even if it was a bit out of order.

Eventually, I created a custom homepage for a restaurant called The Grilled Cheese — I would definitely open this restaurant in the real world if I ever leave the WordPress community.

Custom restaurant homepage with sidebar.

It is reasonably simple. All told, it took me around two hours of playing around with various concepts before arriving at this stage. To build something I would be happy with would have taken a few more hours.

Overall, I felt limited in laying out my ideal homepage. Each step was an uphill battle against the tools. I could have built this in less than half the time with HTML and CSS. I could do the same and more with other modern page builder plugins for WordPress.

Before diving into the results of my test, I have some brutal honesty. TT1 Blocks, which is the theme used for FSE Outreach testing, is not up to snuff. The theme does not reliably handle the multitude of possibilities the site editor sets in the hands of end-users. This entire experience could be made smoother with a better theme. However, the choices are limited, and I am not sure if there is a better block-based theme to work with at this point.

There were so many inconsistencies between the site editor and the front end that there is little point in listing them all. Spacing was grossly off. I generally see that as a theme issue. I spent much of my time in trial-and-error mode, making an adjustment in the editor and refreshing to see the front-end result. Rinse. Repeat.

Identifying Pain Points

While this post is critical of the site editor, it does not mean the experience was altogether poor. Seeing the improvement every week gives me hope that WordPress will have a site editor that rivals anything on the market. Eventually. However, my goal here is to provide real feedback that the team can use.

Outside of the general spacing issues mentioned earlier, I identified several stumbling blocks while building a custom homepage.

Maximum Widths

When designing a full-site page via the site editor, one problem stood out more than most. WordPress lacks a well-rounded “max-width” system. As a user, I was left with few choices in setting the width of the content area of my homepage. Currently, theme authors can set custom content, wide, and full widths. However, this system is horribly limiting. There is not much theme authors can do with this, and this problem directly limits what users can do in both the block and site editors.

I have previously written about the need for a design framework, one that is customizable by theme authors. Tailwind CSS has a max-width system that offers a boatload of flexibility. WordPress needs to start borrowing ideas from these modern design frameworks.

Add Block Icon

Getting the “Add Block” icon to appear when hovering in between elements in the default content area was rough. I had to position my mouse in a perfect position for it to appear. It was an exercise in frustration where even the slightest movement caused the icon to once again disappear.

Locating the ‘Add Block’ icon.

Switching to Top Toolbar mode made this far easier. I am assuming the default block toolbar was hiding it to some degree. The problem with switching to this mode is that my toolbar-choice was not saved. Each time I returned to the site editor, I had to enable it once again.

Query Block

The most frustrating aspect of listing posts on a custom homepage was setting a limit. I wanted to set the number to three. However, the Query block has no option for doing this. Eventually, I created a faux limit using the category filter, choosing one that had just a couple of posts.

Update: It is possible to set a limit as noted by Nick in the comments. There is a “settings” icon in the toolbar for setting the number of posts per page, an offset, and max number of pages. I am unsure why these particular query settings are separate from the others in the sidebar. It makes more sense for them to be grouped together.

Limiting posts by using the Query block’s category filter.

Another confusing aspect of the Query block is the keyword filter. As far as I am aware, WordPress has never used the “keyword” terminology. Outside of SEO plugins, there does not seem to be any context for what this filter does. I am guessing it works like a search keyword.

Global Styles for All Blocks

When switching over to the Global Styles panel, I noticed that some blocks were missing when applying styles on the block level. In particular, I wanted to adjust styles for the Latest Comments block.

I suppose that only blocks with typography, colors, and other design-related options appear in the list. This will likely confuse end-users when the site editor lands in WordPress. All blocks should have style options that users can customize.

No Full-Width Columns

For the content of my homepage, I attempted to create a full-width Columns block. However, the two individual columns were limited in size despite taking up 66.67% and 33.33%, respectively.

Full-width columns not spanning the full area.

This seems like it is a theme issue. I would also argue that this is one of those times where having more direct control over the max-width would have helped. I really wanted something that was between the theme’s full and wide widths.

Featured Images

There is no way to set the size of the image output by the Post Featured Image block. The only way to get a uniform size at the moment is to pre-crop the images before uploading them to WordPress.

There is no reason this should not essentially be a variation of the Image block. The only thing featured images need that is different is the option to link to the post.

by Justin Tadlock at February 23, 2021 08:47 PM under gutenberg

WordPress Foundation: The Basic principles of Open-source Software

The WordPress Foundation aims to educate the public about WordPress and related open-source software (OSS). Towards that end, the WordPress Foundation created the Introduction to Open-source workshops, which shed more light on the potential of open-source software, particularly in countries where there is less participation in OSS projects. Due to the COVID-19 pandemic, these workshops have moved online. The WordPress Foundation hopes to see more open-source workshops held online this year to help spread awareness about the importance of open-source software.

What are open-source software and Free Software?

Open-source software is software whose source code is available for anyone to view, modify and enhance. Free software refers to software that complies with “four essential freedoms” – to use, study, modify and distribute software for any purpose without legal restraint. Open-source software is characterized by the public accessibility of its code, while free software focuses on the capabilities for using and sharing the software.

Advantages of Free and Open-source Software over Proprietary software

Proprietary software is distributed in executable files where the source code is encrypted and not available. Free and Open-source software enables users to read and modify the code, thus allowing a host of advantages such as little (or no) cost, faster distribution, greater customization, and easy availability of bugs and security patches, to name a few. 

The Introduction to Open-source workshops cover the difference between different software types, the history of open-source software, its advantages over proprietary software, and how this applies to WordPress. The workshop also explains the differences between free and Open-source software and highlights the different types of software licenses. 

Want to learn more about Free and Open-source software? Participate in an Introduction to Open-source workshop!

There are four ways you can participate in an Introduction to Open-source workshop! 

  1. You can attend the Introduction to WordPress workshop from the comfort of your home! Learn WordPress now features an Introduction to Open-source video workshop that you can watch at your convenience. 
  2. Community members can also now host or participate in Introduction to Open-source workshop discussion groups in the Learn WordPress meetup group for a global audience. Sign-ups are now open for the following two discussion groups:

If you would like to host an Introduction to Open-source discussion group for a global audience, please apply to become a discussion group facilitator. 

  1. WordPress Meetup groups worldwide are also encouraged to organize an Introduction to WordPress watch party + discussion group (based on the Learn WordPress workshop on Introduction to Open-source) as part of their meetup (it does not need any prior approval). 
  2. Lesson plans for the Introduction to Open-source workshops are available! Meetup group organizers can plan their live open-source workshop based on the lesson plans. 

The WordPress Foundation invites community members across the world to join these open-source workshops and to organize workshops and discussion groups in their communities to help spread our mission of serving the public good with the help of Open-source software.

Meetup groups organizing Introduction to Open-source workshops will be featured on this website. All you need to do is to reach out to us with a brief write-up about your workshop along with pictures, and we’ll publish them here!

by Hari Shanker at February 23, 2021 12:58 PM under open source

Matt: Invest Like the Best and Building Worlds

On a Founder’s Field Guide episode with Patrick O’Shaughnessy we had an interesting conversation that covered a lot new ground, including an idea I’ve been playing around with on, as Patrick put it:

The idea from @photomatt that the best companies are those that build intricate worlds (in the same way that J. R. R. Tolkien came up with the elvish language) will always stick with me.

We also covered the pendulum of centralization and decentralization, current challenges facing the internet, and being a connoisseur of things overlooked. You can check out the episode on Apple, Google, Spotify, Overcast, and Pocket Casts.

I’ve been impressed by the audience of this podcast, a lot of people I admire reached out after this episode.

by Matt at February 23, 2021 05:10 AM under Asides

February 22, 2021

WPTavern: Native Lazy Loading Support for iframes Coming To WordPress 5.7

Felix Arntz, a WordPress core committer and developer programs engineer at Google, announced upcoming support for lazy loading iframes. The feature is included in the latest WordPress 5.7 beta and will officially ship next month to the larger community.

WordPress has supported lazy loading for images since version 5.5. However, support for iframes was not included in the initial feature set. Browser support for iframes was widespread at the time. However, it had not yet been formalized as part of the HTML Living Standard. Soon thereafter, it was added to the HTML spec, and discussion began anew for adding support into WordPress.

Unlike images, many users are likely unaware that they are using iframes. The primary use case for iframes is with embed blocks or the auto-embed system for users who are on the classic editor. For example, whenever a user adds a YouTube video to their blog post, the underlying code outputs an iframe.

Source code of YouTube embed shows iframe.

These iframes add weight to the page size and hamper loading time.

The opposite of lazy loading is eager loading. This is the default on the web, which loads all resources in bulk. This also often leads to slow-loading webpages when they contain many images or iframes. Lazy loading only loads the image and iframe sources when they appear in a site visitor’s viewport. This speeds up the initial load time of pages.

WordPress will only add the loading="lazy" attribute if an explicit width and height are set for the iframe. This is to avoid the page-shifting effect that happens when the iframe comes into view. Arntz wrote about this effect extensively when he announced support for image lazy loading. The same issue applies to iframes.

“A common user experience problem in modern websites is so-called layout shifting, often caused by slow-loading media resources like images,” he wrote. “By default, only after an image is loaded, the browser can layout the page correctly, which results in the content e.g. below the image to shift. This issue can be easily resolved by providing width and height attributes on img tags, as the browser will use them to determine the aspect ratio of the image so that it can infer the page layout ahead of actually loading the image.”

There are cases where WordPress will not add the loading attribute, even for oEmbed providers that it supports. The iframe content is not supplied by WordPress. The third-party providers create the HTML and send it back to the individual WordPress site. It is up to those third parties to follow best practices for adding width and height attributes.

“Since WordPress cannot guess the dimensions of the embedded resource, the loading="lazy" attribute will only be added if the oEmbed iframe tag comes with both dimension attributes present,” wrote Arntz.

Currently, the filter applies to the post content, excerpt, and text widgets. Perhaps WordPress will extend this to comment text one day.

Potential Problems With Ads

MaAnna Stephenson, the owner of BlogAid, brought up a concern for users who display ads on their site. There may be scenarios where lazy loading is banned in advertising terms or has a technical conflict.

“Has this been tested with folks who run ads on their site using an ad agency like Mediavine and AdThrive?” she asked. “They cannot have iframes lazy loaded, as the ads use iframes and they have their own lazy load mechanism for delivery.”

The problem is that there is no ideal way to exclude every advertising service and to distinguish them from other types of iframes. From a technical standpoint, it needs to be an all-or-nothing feature.

Handling ads falls squarely into plugin territory. Arntz covered such use cases in the post. Developers can disable lazy loading for iframes wholesale or target specific iframes with basic PHP. It would only take a few lines of code to build a plugin for specific ad services.

Jeff Starr also has a plugin for disabling lazy loading altogether named Disable Lazy Load. That could serve as a stopgap solution until something more specific to users’ needs comes along.

by Justin Tadlock at February 22, 2021 10:44 PM under WordPress

WordPress.org blog: WordPress 5.6.2 Maintenance Release

WordPress 5.6.2 is now available!

This maintenance release includes 5 bug fixes. These bugs affect WordPress version 5.6.1, so you’ll want to upgrade.

You can download WordPress 5.6.2 directly, or visit the Dashboard → Updates screen and click Update Now. If your sites support automatic background updates, they’ve already started the update process.

WordPress 5.6.2 is a small maintenance release focused on fixing user-facing issues discovered in 5.6.1. The next major release will be version 5.7, currently scheduled for release on March 9, 2021.

To see a full list of changes, you can browse the list on Trac, read the 5.6.2 RC1 post, or visit the 5.6.2 documentation page.

Thanks and props!

The 5.6.2 release was led by @desrosj. Special props to @isabel_brison and @talldanwp for helping to prepare the block editor related fixes, and @audrasjb and @sergeybiryukov for helping with other release related tasks.

Props to everyone who helped make WordPress 5.6.2 happen:

aaronrobertshaw, Addie, André Maneiro, archon810, Ari Stathopoulos, bartosz777, Bernhard Reiter, Daniel Richards, David Anderson, dbtedg, glendaviesnz, hmabpera, ibiza69, Isabel Brison, Jason Ryan, Jb Audras, Juliette Reinders Folmer, Kai Hao, Kerry Liu, Konrad Chmielewski, Jorge Costa, magnuswebdesign, Marius L. J., Matt Wiebe, Mukesh Panchal, Paal Joachim Romdahl, Prem Tiwari, Q, Riad Benguella, Robert Anderson, roger995, Sergey Biryukov, Sergey Yakimov, Steven Stern (sterndata), Takashi Kitajima, tonysandwich, worldedu, Yui.

by Jonathan Desrosiers at February 22, 2021 03:35 PM under Releases

February 19, 2021

WordPress.org blog: Reflecting on Gutenberg’s 100th Release

1.0 to 10.0

Gutenberg 10.0 released this week, February 17, 2021, marking the 100th release of the Gutenberg plugin; the 100th release of a journey that started more than four years ago when Matt announced the project at WordCamp US 2016. 

Where We Started

The past four years have not always been an easy journey. Shipping something this impactful is not easy, and there was precedent for keeping the editor as it was: WordPress had already tried to replace TinyMCE a couple of times already. What would be different this time around? The worry was “not much” and initially, very few people actively joined the project.

Six months later came WordCamp Europe 2017 and the first release of the plugin. The editor was nowhere close to being usable, but it “clicked” for some. The reactions to the presentation were hopeful, but afterward, there was a lot of pushback.

Gutenberg was (and is) an audacious project. With a project this big it attracted a lot of attention, and it became difficult to discern constructive debate from mere opposition. We each come with our context, and some people had a fixed idea about what they wanted for the project. Some wanted to reuse an existing page builder, others wanted to revive the Fields API project, some wanted it to be front-end-first, others wanted it just to replace the classic editor’s content area, some wanted it to be in Vue.JS, others wanted no change at all. With a product used by 40% of the web, you hope to find consensus, and when compromises have to be made, it can be difficult for those involved to avoid feeling that their voice is being ignored.

We have also made quite a few mistakes: stability wasn’t great in some releases, performance suffered in others, and accessibility as well. But we kept pushing forward, using feedback to improve the editor and the project in all aspects until its first inclusion in WordPress 5.0, and we’re still working to improve it today.

Where We Are

It’s a delight to see some people who strongly disagreed with the initial vision or approach to Gutenberg gradually come to enjoy using the editor and join the project to carry on its vision. Others might still not like it; some won’t ever use it. One thing is certain; we’ll continue doing our best to push forward, improve what’s already shipped, and ship new exciting features. We’ll continue making mistakes and hopefully continue learning from them.

Wednesday marked the 100th release of Gutenberg, and while that looks remarkable on the outside, the release itself holds what all the other releases did. It holds improvements to the existing features, it fixes bugs that users reported, adds new features, and it highlights experiments with new ideas.

What is remarkable about the release is the people. The ones who were with us from the start, the ones who were with us but left, the ones who joined in our journey, everyone who helped along the way, everyone who provided feedback, everyone who got their hands dirty, and everyone who tried to use this editor, extend it and provide ideas.

Thank you all.

by Riad Benguella at February 19, 2021 06:34 PM under Gutenberg

WPTavern: Taking on the Major Players, Plausible Analytics Offers an Alternative, Privacy-Conscious Stats Service

Plausible Analytics is not new on the scene. The two-person, EU-based team behind the company has been trying to carve its slice of the analytics pie against players like Google Analytics and WordPress.com Stats for nearly two years.

The self-funded and bootstrapped company is starting to gain a small foothold. It has been an uphill climb to get to usage on over 10,000 websites. Now, it is reaching out directly to the WordPress community with its Plausible Analytics plugin.

Plausible Analytics is a simple, open-source, lightweight (< 1 KB), and privacy-friendly alternative to Google Analytics,” said co-founder Marko Saric. “We don’t use cookies or track any personal data, but we still aim to give you as a site owner interesting and useful insights so you can improve your efforts.”

The company’s service is built on an open-source philosophy, possibly making it an ideal partner for WordPress. The source code for the analytics service is licensed under the AGPL version 3.0 and is publicly available on GitHub.

Users have two options for running Plausible Analytics. The first route is to use the company’s cloud-based service, similar to other stats-based services. The other is to self-host the code.

For the cloud service, there is a monthly, tier-based fee. Up to 10,000 pageviews runs $6 per month. Each level increases based on the number of views a site — you can also hook up multiple sites — receives. Users can knock 33% off the price by paying yearly, which puts the starting tier at $4 per month. Plausible also offers a 30-day free trial.

“It’s definitely a challenge to go against free products and a product as dominant as Google Analytics, but it does feel like the times are changing,” said Saric. “An increasing number of people are becoming aware that free means that you may be paying with something else such as the data of your visitors in the case of Google Analytics.

“With Plausible, you own your site data. We don’t share it with any third parties, and we don’t use it for any other purpose. As we don’t make money by selling your data, we need to charge a subscription fee to pay our costs and salaries so we can continue working on the product. We have tried to keep the prices as fair and affordable as possible starting at $4/month. We do have a free as in beer self-hosted version too for those who like to manage their own server infrastructure.”

For the self-hosted version, which might appeal to the DIY crowd in the WordPress world, Plausible is designed to run via Docker. Saric said you should have a basic understanding of the command-line and networking. The server must have a CPU with x86_64 architecture and support for SSE 4.2 instructions.

“Everything else really depends on how popular your site is and how much traffic you get,” said Saric. “But you should be able to run Plausible for a site that gets tens of thousands of monthly visitors even on the lowest Digital Ocean droplet.”

As of the latest plugin release, self-hosted support is built directly into it too.

How Plausible Analytics Works

Realtime stats from Plausible Analytics.

The service is much like any other analytics product. You sign up. The site gives you a JavaScript snippet, which you place in your site’s header. Of course, this is automatically taken care of via the plugin.

The service feels much like a stepping stone between what you might get between WordPress.com Stats and Google Analytics. It is a middle ground that shows promise for a young product. However, the interface feels easier to navigate and make sense of than either service. Plausible has plenty of room for growth, which makes it promising to see what the team has accomplished at this stage.

End-users can enjoy the typical stats they are accustomed to seeing and break them down by time frame. Referrer, page, country, and device data are all there. Users can also set up goals, get email reports, and hook up to the Google Search Console.

The downside to the Plausible Analytics WordPress plugin is that it is a bit bare-bones at the moment. It is merely a settings screen and integration layer between the site and service.

Plugin settings screen.

It is missing the make-or-break feature of a built-in analytics page. Many users are accustomed to accessing their stats directly from within WordPress.

“Yes, that’s the main thing we want to fix with the WordPress plugin,” said Saric. “We’ve introduced several features to make the plugin useful for WordPress sites, such as excluding admin users from being counted by default, the option to track 404 error pages, and clicks on external links. We also have an easy way to run our script as a first-party connection from your subdomain, so you get more accurate stats compared to Google Analytics which is blocked by many browsers and extensions.”

The team is currently working on an API for Plausible and on an embedded mode. Before introducing stats into the WordPress UI, they must complete these features.

Privacy-First Solution

Website owners and visitors are becoming much more privacy-conscious than in years past. In light of the GDPR and related legislation from around the world, companies like Plausible Analytics must navigate this new landscape while still providing the data that users need.

“Plausible was built as a response to GDPR, other privacy regulations, and cultural changes over the last few years,” said Saric. “Our mission is to reduce corporate surveillance by providing an alternative web analytics tool which doesn’t come from the ad-tech world.”

Plausible Analytics does not track individuals, and its data is aggregate-only said Saric. The service also does not rely on cookies or local storage, and there is no cross-site or cross-device tracking.

“We minimize any data collection in general, and whatever we do track is kept fully secured, encrypted, and hosted on a server in the European Union to ensure it is being covered by the strict laws on data privacy,” he said. “We’re very transparent in all the data we collect. We have an in-built feature that we recommend site owners use to open up their stats to the public and share it on their site to be fully transparent so their visitors and anyone else can view the data that they have access to.”

The Future of Plausible Analytics

The team recently introduced UTM tag support and custom events, allowing users to track whatever they want. Saric said that it is now possible to follow the full journey from an ad-click all the way to conversion on users’ sites.

“The next step for the WordPress plugin is to add the default out-of-the-box integration with popular third-party plugins to support event tracking for things such as contact forms and eCommerce,” he said. “This will make it a more convenient experience for WordPress users so they can get started tracking custom events without any manual configuration being required.”

All other features are done in the open on the project’s GitHub repository and its roadmap. The plugin is also open to community involvement on a separate repo. Saric credits community member and WordPress developer Mehul Gohil with help on the plugin.

by Justin Tadlock at February 19, 2021 05:03 PM under Plugins

February 18, 2021

WPTavern: WordPress.org Removes Fake Reviews for AccessiBe Plugin

After noticing suspicious review activity for the AccessiBe plugin, accessibility consultant Joe Dolson reported the fake reviews to WordPress.org’s plugin team. The reviews were removed in under 48 hours, thanks to Dolson’s detailed research.

At the time of reporting, Dolson found 31 five-star reviews, 2 four-star reviews, and 2 one-star reviews. After putting these into a spreadsheet, he found certain correlations among the first 11 five-star reviews:

  1. All eleven user accounts I viewed had a common pattern of registration and use: between zero and 3 support topics raised and 4-7 reviews over the last 18 months.
  2. Every one of these eleven accounts had at least one point of overlap with another user in that group. That is, for each plug-in or theme interacted with by one of the accounts, at least one of the other accounts also interacted with that plug-in or theme.
  3. Multiple accounts had submitted one-star reviews on another plug-in, and in a quick assessment of other one-star reviews on that plug-in, I quickly found another account that had also submitted a five-star review on AccessiBe.

Approximately 33 reviews were removed from the AccessiBe plugin’s page after the report. Plugin team member Mika Epstein said that the team “passes the reports to a volunteer who is amazing at hunting down VPNs and IPs for that.” She also recognized Dolson’s legwork and reporting as being instrumental in this particular case.

Dolson allowed me to view his spreadsheet, where he logged URLs for each suspected fake review, along with dates and reviews left on other plugins. These were not saved to the Internet Archive, but Dolson said they were all “pretty generic,” and that each one was a one-sentence review. The user profiles still appear to be there but do not have any activity listed.

“As a WordPress plugin author myself, I find the investment in falsifying positive reviews irritating,” Dolson said. “What some of us work for, they are simply buying – the appearance of a good product without the labor of winning customer opinion.

“I found the evidence of a hatchet job conducted systematically against another plugin chilling, however.”

The AccessiBe plugin is active on approximately 3,000 sites. Accessibility advocates have long held a certain amount of animosity towards the way its creators market the plugin as a quick fix solution, claiming it helps “mitigate the risk of lawsuits.” AccessiBe also has a well-documented history of paying for positive press. Dolson and others deeply involved in WordPress accessibility keep tabs on the plugin, which is how he came across the suspicious activity.

Soliciting paid or fake reviews is not a new infraction, and it has been explicitly forbidden in the directory’s guidelines for years. This falls under guideline #9: Developers and their plugins must not do anything illegal, dishonest, or morally offensive, which includes “Creating accounts to generate fake reviews or support tickets (i.e. sockpuppeting).”

Fake and paid reviews are a blight on any marketplace, and pop up now and then on the theme and plugin directories due to the power of WordPress.org as a distributions channel for freemium products. It makes it more difficult for the consumer to get an accurate understanding of the quality of the the product, but it’s not always easy to identify who commissioned the fake reviews.

Any user can help ensure the plugin directory has fair and honest reviews by flagging those that look suspicious. In the sidebar of individual review posts, logged-in users can flag a post for consideration. WordPress.org doesn’t often announce when it takes action to remove reviews but should confirm having received the report. In a rare case like this, Dolson’s writeup gives the wider community a glimpse into what it takes to track down fake reviews and get them cleaned up.

by Sarah Gooding at February 18, 2021 11:10 PM under Plugins

WPTavern: GermanThemes Releases Block-Ready GT Basic WordPress Theme With Custom Patterns

Today, GT Basic became the second theme from GermanThemes to go live in the WordPress theme directory. Like the company’s previous theme, GT Ambition, it is built around the block editor. It also introduces several custom block patterns.

The theme will not knock anyone’s socks off with its artistic merit. GT Basic is very much business in the front and business in the back, so it will not immediately appeal to everyone. However, it has everything you need and none of the things you don’t for setting up a WordPress website.

Out of the box, it is an architecturally-sound business theme. Its layout, structure, and typography make for a well-rounded design applicable to nearly any site. With a few modifications via the customizer, users can personalize it.

Its open-canvas feel gives ample room for using the entire content area for building custom page layouts, which is what business site owners should be looking for. The theme’s typography is on-point, creating a comfortable reading atmosphere for long-form content. It could serve well for a general blogging theme.

The theme is ripe for the possibility of child themes. These types of well-designed themes from a purely structural standpoint leave plenty of room for customization. GT Basic has just the right amount of visual options for users to put their unique spins on it. However, there is a lot of room for design-savvy people to do more.

About the Theme

GT Basic is, well, a basic theme. It is kind of there in the name. However, it includes enough options to make it more visually palatable. A few color and font changes could spice things up — the theme offers a range of system and Google font-family choices.

Modifying the theme’s typography and colors.

The theme also manages to not make a complete and utter mess of the customizer. GT Basic neatly tucks all of its options under a custom panel named Theme Options. Even its “theme links” section is in there. It is refreshing to see a theme not regurgitate pro links and single-use sections across the entire customizer controls frame. You will rarely see me use emoji, but the theme author deserves one on this point alone: 👏.

Where the theme gets things right is its support of the block editor. It does not try to do too much, relying on the core block styles as a foundation. It then tacks on a mere 46kb of additional CSS, unminifed, which is almost unheard of in today’s theme market.

Block design in the cafe demo for the theme.

GT Basic is one of the few themes I have seen that adds a custom block editor sidebar panel. Instead of going the page template route, it adds a full-width option, a method I have preferred over the years. It also has settings for users to disable the title and remove white space at the end of the content area.

The biggest downside to the theme is that the blog/posts page and archives display the full post instead of excerpts. It is one of my pet-peeves with theme design. Users should at least have the option to switch to an excerpt view.

The other cringe-worthy feature is the automatic output of the featured image alongside the full post content. This creates the dreaded double featured-image effect if the user also uses the same image within their post content. Again, a simple option to disable this would suffice.

Block Patterns

Inserting GT Basic’s portfolio block pattern.

I am a sucker for block patterns. Throw a few in any theme, and I will install it and see what I can build. The pattern system remains one of my favorite features of WordPress. It is also one of the areas where business themes can make their mark.

GT Basic includes four patterns for users:

  • Hero Section
  • Services
  • Call to Action
  • Portfolio

It does not take much to create unique layouts by mixing and matching two or more of them.

Thomas Weichselbaumer, the founder of GermanThemes, announced the adoption of block patterns in August 2020. He introduced block patterns across GermanThemes’ product line shortly after WordPress 5.5 introduced the feature.

GT Basic’s patterns would be more appealing if they included imagery and a spectrum of colors. The pattern layouts are designed well, but they lack the visual umph that inspires users. This is a missed opportunity to showcase how useful the patterns are. However, the theme author has built a few demos that could serve as inspiration.

by Justin Tadlock at February 18, 2021 10:52 PM under Reviews

February 17, 2021

WPTavern: Ask the Bartender: Frustrations and Finding the Right WordPress Block Plugins

Hello. I always supported the idea of a WordPress block editor as a whole, but lately, I’m a bit frustrated in that there are some blocks I need with urgency to work on a (non-visitor editable) wiki-like site (mostly a Tabs block, a Countdown block, an Accordion/Toggle block, a Table of contents block and a Footnotes block) and have not had luck finding appropriate plugins. I can name a long list of the specific problems I have with the ones available right now…

Andrés

Andrés’ question spanned another 400 words or so. The following summarizes the problems he has run into:

  • Block collection plugins cover some but not all use cases.
  • Seemingly suitable blocks have too few or too many options.
  • Few blocks can be converted to other block types.
  • Many block plugins have not been updated in a while, causing fear of abandonment.
  • No way to batch convert blocks if a better plugin is found.
  • Need a footnotes block.

I do not necessarily see most of these as block-related problems. It can be tough to find that sweet spot, fine-tuning your WordPress site with just the right tools.

When I first began using WordPress in 2005, I hit these same sorts of problems. And they were problems throughout my career as a developer. I would find a plugin that would do almost what I wanted. I would find another that would add way too many unnecessary features. Often, nothing seemed to exist that was perfect for my needs. This was the sole reason I jumped into development — if you want something done right, do it yourself. I wanted my WordPress site to work according to my own strict specifications. No one else would do it for me, and I was a starving college student who could not afford to hire a developer. It left me little choice other than putting in the time and effort to make it happen.

While I am not suggesting that you must go down the path that I once did, it is always an option worth exploring. Many great developers began with this same type of frustration. They had a problem and needed a fix for it.

Open-source is about giving and taking. When you cannot pay it forward in terms of code, feedback is always welcome. That is one reason I like to highlight these questions. Even when I do not have the answer, maybe someone else will. Perhaps your requests will spark an idea for one of the many developers who read WP Tavern.

I definitely do not have all the answers to this laundry-list of questions. It is a broad subject that will take a community to solve.

Many of your issues might be handled by nothing more than having a conversation with the developers behind the block collection plugins you are using. Step one is to start a dialogue with them. I bet most are willing to listen to your ideas on how they can improve their products as long as you address them constructively.

Try One-Off Block plugins

Installing a single-use block from the editor.

The future of using blocks is going to be far more about finding and installing individual blocks rather than collections. WordPress has done its users a disservice by not actively promoting these one-off block plugins. We are over two years into the block editor and still do not have a block directory and management screen built directly into the software. Sure, users can search via the block inserter directly from the editor, but it does not replace a full management experience.

This missing feature has helped spur massive library plugins, which have become the de facto method that most users find new blocks. Far too many plugin developers are following the Jetpack model of packaging them all together. Without full block management baked into core, this trend will only continue. At this point, it may be hard to break from the mold.

However, you can still find a listing of available single-use blocks from the block directory on WordPress.org, at least the ones that plugin authors have appropriately tagged.

WordPress block directory.

I recommend testing these blocks before diving into a library-type plugin. There is always the risk of developer abandonment — there is nothing you can really do about that when it comes to any type of plugin other than supporting the authors.

The block directory’s problem is that it has only a little over 120 blocks — like I said, WordPress has not done enough to promote it. This means there is not enough competition to drive innovation and bring clear winners to the forefront. Some of the blocks are hit-or-miss projects. I know this does not breed confidence, but I can say from experience that I always loved user feedback as a developer. It is the lifeblood of any project. Give the plugins a test. Even if you do not like or use them, send your feedback over to the developers.

The following is a short, not comprehensive, list of some single-use blocks that may be appropriate for you:

Footnotes Block Plugin

I feel your frustration about footnotes. WordPress lacks this feature that any decent desktop-level writing software has. From past experience earning my B.A. in English, footnotes were a core part of the experience. It baffles me that the most-used CMS in the world has yet to add even a basic version of footnotes to its toolset.

Fortunately, other like-minded people want to see footnotes in WordPress. Ella van Durpe has a draft of a footnotes feature on the Gutenberg repository. This is an ongoing, three-year discussion. There is no reason to believe it will be baked into core soon, but it is reason enough to be hopeful.

The Academic Blogger’s Toolkit plugin supports footnotes. It has not been updated in a year and could be overkill for what you need. However, it would not hurt to give it a test run.

Several footnote plugins in the directory should work fine with the block editor. The standard method employed by many of them uses a ((double-parentheses)) to add footnotes from within the editor. Those notes are then parsed before being displayed on the front end.

That is not my style. I prefer the visual separation of the references and the footnotes in both the editor and the front end. The great thing about the block editor is that you can manually build footnotes without a plugin. Or, at least you can create almost-footnotes.

Cathy Meder-Dempsey, a genealogist and blogger for Opening Doors in Brick Walls, has an exhaustive tutorial on manually adding references and a footnotes section with the block editor. It is not a perfect solution and works best when you have only a few footnotes. This is because the reference links jump to the overall footnotes section rather than the individual notes. It is a quick solution in a pinch.

This post is a part of the Ask the Bartender series. If you have a question about WordPress, feel free to shoot it over. Your question could be featured next.

by Justin Tadlock at February 17, 2021 10:34 PM under gutenberg

WPTavern: Gutenberg Plugin Marks 100th Release with 10.0

Gutenberg 10.0 was released today as the 100th iteration of the block editor since the project began four years ago. Although 10.0 may seem like a big number, it’s just another incremental step forward in terms of new features, improvements, and bug fixes.

Version 10.0 introduces a new dynamic pages block for building navigation menus. It can be added inside a Navigation block or used on its own.

Sometimes when you’re clicking around inside block editor content, it’s hard to select the parent block with nested blocks. This release makes the parent block selector visible and offset in the block toolbar. An easier way to select the parent block will become even more important as the quote block is on track to get nesting support with paragraph, heading, list, and code blocks allowed as children.

Version 10.0 adds a darker social links state for dark themes, brings block patterns to the inserter for template parts and other non-root level positions, and improves keyboard navigation in the block patterns inserter. The plugin also introduced dozens of improvements and new features to the experiments in progress for the site editor, full-site editing architecture and blocks, as well as the navigation and block-based widgets screens.

Riad Benguella marked the 100th release milestone with a few reflections from his unique vantage point as a technical lead on the project. He commented on the friction and pushback that contributors had to navigate in Gutenberg’s earlier days:

With all the attention that the project received, it became difficult to discern constructive debate from mere opposition. We each come with our own context, and some people had a fixed idea about what they wanted for the project. Some wanted to just reuse an existing page builder, others wanted to revive the Fields API project, some wanted it to be front-end-first, others wanted it to just replace the content area of the classic editor, some wanted it to be in Vue.JS, others wanted no change at all. With a product used by 40% of the web, we need to find consensus, and when we make compromises it can be so difficult for those involved to avoid the feeling that their voice is being ignored.

He admits that the project made a few mistakes along the way with sub-par stability on some releases, and performance and accessibility issues. In spite of all the difficulties contributors encountered, they have been able to win over many users who were initially not excited about the block editor.

“It’s a delight to see some people who had very strongly disagreed with the initial vision or approach to Gutenberg gradually come to enjoy using the editor and join the project to carry on its vision,” Benguella said. “Others might still not like it, some won’t ever use it. One thing is certain though, we’ll continue doing our best to push forward, improve what’s already shipped and ship new exciting features; we’ll continue making mistakes and hopefully continue learning from them.”

The block editor has opened up a whole new category of tools for people building WordPress sites, even before full-site editing makes its debut. In the comments of the release post, Gutenberg users mentioned the themes and plugins that have helped them ramp up into delivering sites built 100% with the block editor.

“When I first looked at Gutenberg I hated it,” web developer John Brown said. “Now, two years on, do a mix of Gutenberg and Kadence Theme and blocks and you can build virtually anything.

“The sites we have converted from other page builders to Gutenberg work just fine and we get great statistics on GTMetrix, Pingdom and Google Page Speeds.

“I will say, you need to learn how to use it, but when you get your head around it, you can make anything that a client needs.”

Another user who adopted the editor in the early stages said he has reached the point where he can build sites without having to use a lot of extra tools.

“I started using Gutenberg at 2.0 and never looked back since then,” software engineer Orlando Alonzo said. “Now I’m starting to produce full sites with nothing more than GeneratePress Premium and Gutenberg.”

Version 10.0 marches forward with the same pioneering experimentation in the full-site editing (FSE) project that has brought the editor to the stable state it’s in today. Contributors are aiming for an MVP for FSE in April, with version 1 in core in WordPress 5.8, expected June 2021. Check out the 10.0 release post for the full details on FSE progress and other improvements to the editor.

by Sarah Gooding at February 17, 2021 09:43 PM under gutenberg

BuddyPress: BuddyPress 7.2.0 Maintenance Release

Immediately available is BuddyPress 7.2.0. This maintenance release fixes six bugs mainly related to issues when the BP Nouveau Template Pack is used with the Twenty Twenty-One WordPress theme. For details on the changes, please read the 7.2.0 release notes.

Update to BuddyPress 7.2.0 today in your WordPress Dashboard, or by downloading from the WordPress.org plugin repository.

Many thanks to 7.2.0 contributors 

iamthewebbvapvarun & imath

by Mathieu Viet at February 17, 2021 08:01 PM under releases

Follow our RSS feed: 

WordPress Planet

This is an aggregation of blogs talking about WordPress from around the world. If you think your blog should be part of this site, send an email to Matt.

Official Blog

For official WordPress development news, check out the WordPress Core Blog.

Subscriptions

Last updated:

March 06, 2021 08:30 AM
All times are UTC.