WordPress.org

WordPress Planet

August 01, 2020

WPTavern: Big Orange Heart Opens 2020 Remote Work Wellbeing and Mental Health Survey

A Big Orange Heart, formerly known as WP&UP, has opened its 2020 Remote Work Wellbeing and Mental Health Survey. The charity organization focuses on supporting remote working communities with education and resources for mental and physical health. It is also home to a community of more than 4,700 members who support each other in growing their businesses and building new skills.

The survey asks fairly broad questions about your mental health and the mental health support in your work environment. It takes approximately three minutes and is completely anonymous.

Results from the 2019 survey showed that the majority of people in the WordPress community work alone and a significant percentage are dealing with anxiety and suicidal thoughts:

  • 8% of the WordPress community have had suicidal thoughts in the last 12 months
  • 47% stated their workplace makes them feel anxious
  • 56% of the WordPress community works alone

Big Orange Heart founder Dan Maby believes these results are helping his team save lives. The charity is actively creating and maintaining services and a peer support network that encourage people to stay connected to their community, in order to reduce the isolation they experience.

“Our 2019 results identified that almost 8% of all respondents had been dealing with sustained periods of feeling suicidal over the previous 12-months, twice the national US average,” Maby said. “This finding led to more training being provided in suicide prevention and support for our team, which enabled us to support multiple individuals that have contacted us requiring suicidal support, all of whom are still with us today.”  

There are more people working alone remotely now than ever before due to the pandemic. Spend a short time on any social media network and you will likely hear several people say they are not doing okay. This survey helps the team at Big Orange Heart understand the extent of mental health related issues within the remote working community and informs various initiatives the organization plans throughout the year.

“As a charity, like so many others at this time, we have been heavily impacted by the COVID-19 global crisis,” Maby said. “Now more than ever we need to ensure our limited resources are used in the most effective way possible. Your anonymous data will allow us to best understand how we can help improve the lives of others within our community.”

The Remote Work Wellbeing and Mental Health Survey runs for one month and will close on August 31st. Take the survey and check out Big Orange Heart’s blog for several helpful posts on how to maintain your mental health while working during this crisis.

by Sarah Gooding at August 01, 2020 03:04 AM under mental health

July 31, 2020

WPTavern: WordPress 5.6 Wish List: Homepage Post Type Selection and Block Management

With the WordPress 5.5 development cycle coming to a close, it is time to begin mapping out what features should land in WordPress 5.6 later this year. Earlier today, Chloe Bringmann asked the community to chime in with its wish list on the Make Core blog.

As usual, I have a few thoughts. I tend to lean toward addressing some of the long-standing developer-friendly tickets because these features allow plugin authors to build better products for end-users in the long run.

A complete custom post status API tops my usual list of most-wanted features. I have already opined over this for my WordPress 5.5 wish list. It may be time for more realistic dreams. Maybe we will revisit it another year or two down the road. However, if any core leads want to give the feature a green light, I will gladly be the evangelist and get others excited about it.

Homepage Post Type Selection

For this release, I want to call out one of my other years-long wishes. WordPress should allow end-users to select any custom post type for display on the homepage.

Imagine a WordPress where users can head to their Reading Settings screen in the admin and select something other than their normal posts list or a page to appear on the homepage. Have a forum plugin installed? Maybe users want to list their latest topics or forums list. Running an eCommerce plugin? Users should be able to display their products. Setting up a web design portfolio? Display the most recent projects by simply selecting this choice in the admin.

This is an area where the software has always catered to bloggers and has avoided throwing a little love to other types of sites.

Currently, plugin authors must perform some crazy hacks to make this work. The WooCommerce custom query class is enough to make any developer give up. Not all of the code in that file is for the front page, but it has a frustrating amount to make something work that should be far simpler for plugin authors.

The reason this needs to be in core WordPress is so that each and every plugin does not need to roll a custom solution. Plugins should be able to flag their post types during registration as “allowed on homepage” — not all post types are meant for this type of display. Then, WordPress should handle all the dirty work behind the scenes if a particular post type is selected by the end-user. The addition to the API for plugin authors would be simple, and plugins that are already hacking this feature together can drop a lot of unnecessary code.

There is an existing 8-year-old ticket for the feature. It has a few old and likely outdated patches and has not seen any real activity in the past four years. Nevertheless, it would be nice to see this feature in core WordPress and finally close the ticket.

Block System Wish List

Like most releases, the block system will be getting the most attention. The things that will land in WordPress 5.6 are mostly already set in stone, assuming a particular feature does not fall behind in development like widgets and nav menus did for the 5.5 release.

On the whole, I like the general direction the block system has been headed. If anything, I have been impatient with some things, such as awaiting the integrated block management screen in the admin. For other features, such as full-site editing, I am still wondering whether they are realistic goals for the WordPress 5.6 release.

I would take a release and focus on tightening up and polishing the existing system. Take stock of the pain points — and there are many — that users are mentioning. Spend time working on smoothing out the editing experience before tacking on new features.

That is not going to happen. New features are what get developers up in the morning and excited about the project. Therefore, my fallback request is to bring on the block management screen.

What’s on your wish list?

by Justin Tadlock at July 31, 2020 09:15 PM under WordPress

WPTavern: WordCamp US 2020 Canceled Due to Pandemic Stress and Online Event Fatigue

WordCamp US 2020, which was originally scheduled for October 27-29, was officially canceled today. In April, organizers transitioned to planning for it to be held as a virtual event, but the tenuous situation with the pandemic in the United States and the stress on the event’s large crew of volunteers has precipitated a full cancellation. The decision was announced on the WCUS website:

It is with heavy hearts that we have made the decision to cancel this year’s WordCamp US event. In light of the continued pandemic, online event fatigue for attendees, organizers, and volunteers, and the desire for WordCamp experiences to be traditional WordCamp experiences, we have made the difficult decision to stop this year’s planning, and cancel WordCamp US 2020.

After the pandemic started forcing WordCamps and meetups to go online, many community team members seemed to put on a brave face about adapting WordCamps to virtual events, but WCUS organizers are publicly recognizing the reality of online event fatigue.

Angela Jin, one of the lead organizers, said her team discussed how recent online WordCamps have struggled to meet traditional goals of connecting people and encouraging contribution. In light of attendees’ increasing online conference fatigue, WCUS organizers considered the cost of volunteers’ time.

“The Lead Organizers also took into consideration how many volunteers we have on this team, and how much time we were asking them to invest in an event that didn’t seem to be able to offer the same level of joy or satisfaction that an in-person WordCamp would, Jin said.

“As you might imagine, this was a very upsetting realization, but the whole team spent time discussing together, and we believe that we made the right decision.” 

The U.S. passed more than 150,000 Coronavirus deaths this week and outbreaks are worsening right as schools are supposed to be opening. As COVID-19 cases continue to rise sharply in many states, renewed lockdowns and political tensions have put people on edge. Every day brings a fresh injection of bad news and the country is deeply mired in division ahead of one of the most contentious presidential elections in history. Late October is not an ideal time to try to host WordPress’ flagship WordCamp online.

One WCUS organizer, who requested to remain anonymous, said he was angry that he invested more than 100 hours across various organizing teams and wished it had come sooner. He described how multiple personal stressors were impacting daily life and draining the team’s energy.

“I feel everyone is tired and worn out,” he said. “They are stressed – we are all losing friends [to COVID-19]. Everyone is fighting about politics and the work suffered.”

He reported that many organizers were not doing their parts and all tasks were delayed. Although he experienced a high level of frustration with how it was handled, he was relieved when the decision was announced. Many of the event’s 50 organizers are also involved in coordinating local meetups and leading other WordCamps, and their energies are spread thin.

“This will pave the way for something new and better,” he said. “We have to evolve as a community and one more zoom meeting is not it.”

Not all organizers considered the time invested as a loss. Cate DeRosia, who has also helped organize WordCamp Grand Rapids in the past, said the lead WCUS organizers consulted with the entire team through a multi-step process and gave opportunities for their opinions to be heard.

“It’s easy to imagine that as an organizer I’d be disappointed by this decision, but that couldn’t be further from the truth,” Cate DeRosia said. “None of this is what I’d hoped for, but the time I’ve invested in WCUS has helped me grow relationships and learn new skills that ultimately help me further my career goals and make me a better volunteer in the future.

“COVID-19 has been unpredictable and made everything about life harder. By making this difficult decision now, we all get back a little of our time to invest in other areas instead of using up more energy and risking volunteer burnout for an event that ran the risk of getting lost amid other online events.”

State of the Word May be Hosted as a Separate, Focused Event

WCUS is encouraging speakers to apply again next year. Although all regular sessions on the program were canceled, some organizers will be shifting their focus to hosting a 24-hour contributor day along with producing some workshops and youth programming content.

Matt Mullenweg’s annual State of the Word address is also expected to happen but will likely take a different format this year.

“Discussions about the State of the Word are still active; our understanding is that it will still happen, but possibly not in association with any other event,” Jin said.

“I’m really excited about the potential for lots of smaller, focused, and educational ways for the community to connect online this year,” Matt Mullenweg said. “For the State of the Word I don’t have a plan yet, I think there’s less value to us watching the same thing at the same time if we can’t hang out afterward, but it still would be fun to celebrate the great progress we’ve been making with some sort of video. Stay tuned November-ish.”

Cancellation costs for WCUS are still being finalized. Prior to making it a virtual event, the original budget was close to $1 million, with the largest costs being the venue and catering. Jin said the team will publish a full accounting of expenses on the Community Team blog or the event site after the last round of discussions with vendors are complete.

It’s too soon to know if the WordCamp will be an in-person event in 2021. When asked if they will be hosting in St. Louis again, Jin said that any decisions regarding WCUS 2021 are paused for now.

“The WCUS team did invest a lot of time and energy into this event, but in a year when it is incredibly hard to plan anything, we did the best we could and adapted quickly,” she said. “I’m sad, of course, as I miss seeing everyone at WordCamps, but even if it was time and energy invested in something that didn’t happen, I spent time doing it with brilliant people who care just as much about WordPress as I do. It’s been an immensely challenging year, and I’m humbled to have been a part of this team, which has consistently supported each other and grown together in the face of adversity.”

by Sarah Gooding at July 31, 2020 01:04 AM under wordcamps

July 30, 2020

WPTavern: Post a Lot of Code? Try the Code Syntax Block Plugin for WordPress

I am always on the lookout for interesting syntax-highlighting plugins, particularly for those occasions when I write tutorials or other articles that lean heavily on code. Far too many plugins use shortcodes, custom blocks, or other odd solutions. However, there is one option that I intentionally overlooked when it was released over a year ago: Code Syntax Block by Marcus Kazmierczak.

Based on the name, I assumed it was yet another standalone block. However, I have since given it another look and realized that this was note the case. It integrates directly with the core WordPress block. There are times when a new block is necessary, but this is not one of those times. Sometimes it is better to extend the existing blocks in core.

Code Syntax Block uses the Prism JavaScript library to add syntax highlighting on the front end of the site. The plugin is designed well. It loads its scripts and styles only when the code block is in use.

Front end PHP code example.

The plugin does not load Prism in the editor, so the code output will use the default editor or theme styling. This may not appeal to those who want a one-to-one match between the back and front end. I am comfortable with the non-highlighted version in the admin while having the pretty output on the front end. However, it would be nice to see an option or filter to enable highlighting in the editor.

Out of the box, the plugin uses the One Dark theme, which was created for the Atom editor and ported to Prism. Developers can overwrite the theme with either a custom assets/prism/prism.css file in their theme or by filtering the path or URL that gets loaded. The Prism project has a variety of themes available that are plug-and-play. Other themes exist outside of the official list too.

On the admin side, the plugin creates a new “Settings” tab for the code block and adds a few options that users can choose from:

  • Language
  • Show line numbers
  • Title for code block
Editor view of Code Syntax Highlighter

By default, the plugin does not support the full list of over 200 languages. Instead, it lists just over 40 of the most popular. The list is filterable, so anyone can add or remove languages with a few lines of code. There is also a filter hook for setting the default languages, which would be particularly useful for those who routinely post code snippets in the same coding language.

After a few days of testing, I can safely say that Code Syntax Block is being added to my WordPress toolbox. I wish I had only given it a shot much sooner.

by Justin Tadlock at July 30, 2020 05:30 PM under Plugins

July 29, 2020

WPTavern: Bing Launches URL Submissions Plugin for WordPress

Bing has launched its first official plugin for WordPress aimed at helping site owners get their content indexed immediately. Instead of waiting for a bingbot to crawl the site, the plugin notifies Bing of any new or updated content automatically using its Submit URL API.

“Bing believes that the future for search engines is less about crawling to discover content and more about sharing new and updated content across the web, a fundamental shift in the way that search engines handle web sites,” Bing Product Manager Fabrice Canel said. “Instead of monitoring RSS, sitemaps and HTML pages to check for new pages, discover content changes and/or new outbound links, websites will notify search engines directly about relevant URLs changing on their website.”

Search engines can take anywhere from several hours to a few weeks to crawl a website. Bing’s API allows site owners to get content indexed immediately, while eventually reducing the crawling frequency for sites where there are no changes. Users will need to generate an API key in order to configure the plugin for access to the Bing Webmaster Tools API.


The new plugin also introduces a few other options for managing URL submissions:

  • Toggle the automatic submission feature
  • Manually submit a URL to Bing Index
  • View list of recent URL submissions from the plugin
  • Retry any failed submissions from the recent submissions list
  • Download recent URL submissions for analysis

Canel said the Bing Webmaster Team recommends using the new URL Submissions plugin as a complement to existing plugins that connect sites to Bing, such as Jetpack’s site verification tool, and SEO plugins that add XML sitemaps. Bing’s plugin is different in that it focuses on enabling Bing to discover immediate changes on WordPress sites.

“Sitemaps are a great complementary solution to our plugin to discover all URLs on WordPress sites, but we cannot monitor each sitemap all the time,” Canel said. “Only a small percentage of WordPress sites are publishing content every day. Most are nearly static and this is preferable to be notified instead of pulling content every so often for them. Same for sites publishing often, it helps to get the content quickly indexed instead of having to wait a long time.”

Bing doesn’t usually get as much airtime as Google and its supporting tools, since Google continues to dominate the search market. Bing’s market share is currently hovering at 2.75% of searches globally on all platforms as of June 2020.

Source: StatCounter Global Stats – Search Engine Market Share

The search engine has seen slow but steady growth in certain regions and platforms. Bing performs higher globally across desktop searches (6.08%). In the United Sates, Bing’s market share is sitting at 6.99% and is even higher on US desktop searches (13.35%):

Google87.71%
bing6.99%
Yahoo!3.44%
Search Engine Market Share in US – June 2020

Bing may not boast a big slice of the search market pie, but the search engine served close to 936.5 million unique global visitors during the month of May 2020. More than half of Bing users have a bachelor’s or post graduate degree and 38% of Bing users have an income of $100,000 USD or higher. Depending on the demographic you are targeting, being found by Bing users may be one small factor in your site’s overall success.

The search engine recently updated its webmaster guidelines for the first time since 2012. If you’re looking to optimize for Bing’s audience, this document contains a detailed break down of how the search engine ranks content.

by Sarah Gooding at July 29, 2020 11:49 PM under seo

WPTavern: Upcoming in WordPress 5.5: Features and Changes Theme Authors Should Know About

August 11, the target release date for WordPress 5.5, is just shy of two weeks away. For developers who have not been completely on top of the upcoming release, now is a good time to start looking at how changes might affect their projects. Theme authors in particular can expect several new features and some breaking changes.

For the most part, WordPress 5.5 will introduce new features that theme developers can begin to add to their themes. However, the two biggest changes that could negatively impact their themes will be automatic updates and direct HTML changes to the custom logo output.

Outside of the new features and changes, theme authors should catch up on our coverage of the Gutenberg plugin and test against its updates that are being merged into core WordPress.

Auto Updates

WordPress 5.5 will finally introduce automatic updates for plugins and themes. It is a long-awaited feature and should be a good thing in terms of keeping end-users updated and running what is usually the most secure version of their extensions. However, the big downside to automatic updates is that most themes and plugins will not have the same level of quality control as core WordPress receives. Even the best development companies might have only a few people looking over the code.

On the flip-side, the automatic updates feature means that theme authors can push fixes out to end-users much more quickly.

The big thing is that theme developers need to be aware that users will be enabling automatic updates. For some, this might not mean changing anything with their release cycles. For others, it might mean tacking on some extra time to ensure that extra quality control is in place. The success of automatic updates lies directly on the shoulders of the plugin and theme authors. It is a huge responsibility that should not be taken lightly. WordPress is placing a lot of trust in its development community to get this right.

HTML Change for Custom Logos

As part of an accessibility-related ticket for WordPress 5.5, the core get_custom_logo() and the_custom_logo() functions will no longer output a link around the logo image when viewing the site homepage. This change was made because the link itself points to the homepage by default and is unnecessary in that context.

Right now, there are 183 themes in the official theme directory that target the link in their CSS. This does not necessarily mean that all 183 themes will be broken upon update. However, it likely means that some of them will need a tweak or two.

Theme authors are encouraged to target the .custom-logo-link class instead of any particular HTML element. The new change will add a <span> element rather than an <a> element on the homepage. Both will use the same class.

Block Patterns Have Arrived

It is no secret that I am downright giddy about the prospect of theme designers being loosed upon the world, allowing their talents to shine via block patterns. Patterns have been one of the missing features since the initial launch of the Gutenberg project. For theme authors, they represent that missing link between designing unique “templates” or “sections” and providing end-users a means to add them to their sites.

Block patterns are essentially groups of pre-configured blocks that users can insert into their posts or pages at the click of a button. The beauty of the system is that theme authors can design whatever patterns their hearts desire and make them easily available to their users. No need for complicated theme settings. No lengthy tutorials explaining how to recreate the demo. Design something in the block editor. Register it as a pattern. Let users insert it into a post and rejoice.

This is an opportunity that theme authors have never had before. It is an opportunity to create beautiful designs without having to worry about overcomplicating it for the average user. It is a pivotal moment in WordPress theme design history. Theme authors have the chance to push the system and see what WordPress and its block editor are truly capable of.

Building a restaurant theme? Provide users with multiple food menu patterns. Creating something for novelists or other book authors? Give users some layout options for showcasing their books.

The block patterns API removes many prior limits to what theme authors could realistically do. Now, it’s time for those theme authors to take charge.

Line Heights and Custom Units

The block editor has two new tools for end-users to take advantage of: custom line-heights and custom units. Theme authors can opt into allowing users to edit the line-height of paragraphs and headings with the custom-line-heights theme support flag. They can also allow users to switch between various units, such as when defining the Cover block’s height, with the custom-units flag. In addition to pixels, themes can define which units are supported.

Allowing users to customize the line-height value for text can be tricky business. There are some situations where it is warranted. However, for theme authors who prefer to maintain a strict vertical rhythm, this could lead to disaster. This will likely come down to a personal choice for developers based on what type of theme they are building.

Accessible Widgets Navigation

Starting with WordPress 5.5, theme authors will be able to opt into outputting more accessible widgets. By default, widgets that display unordered lists do so without any context. This can make it difficult for those using assistive technologies to navigate the site.

Theme authors can now add navigation-widgets to the HTML5 theme supports array to add the new markup. WordPress will then wrap all core widgets with a <nav> element and an aria-label based on the widget title.

This will not affect widgets from third-party plugins. Plugin authors should reevaluate their widgets to determine if they want to support this feature.

Template Functions Updates

WordPress is tacking on some nice features for its templating functions in the upcoming release. The first major change is that theme authors can pass data to template files. We have previously covered this story on the Tavern. This feature, while years late, should still be useful for more complex theming setups and allow developers to bypass odd workarounds or in-house solutions.

Template-loading functions, such as get_template_part() and others, will also return a value in WordPress 5.5. If the template is not found, the function will return a false value. Otherwise, it will return void. This will be helpful in situations where theme authors need to run a conditional to check if a template exists.

by Justin Tadlock at July 29, 2020 10:05 PM under News

July 28, 2020

WPTavern: Gutenberg 8.6 Adds Cover Block Video Positioning and Updates Block Patterns

Gutenberg 8.6 landed quietly last week. Much of the focus right now is ironing out the remaining bugs for WordPress 5.5 during its beta cycle. However, that does not mean the Gutenberg project has come to a complete halt in terms of new features. The team is marching forward with extra goodies for those who use the plugin.

The latest update of the plugin did not cover as much ground as normal, but it does include an enhancement for the Cover block when using a video background and several updates to block patterns.

The primary focus for version 8.6 was squashing bugs. The development team addressed over three dozen of them while correcting a handful of performance issues. While new features and enhancements from 8.6 onward are not expected in the upcoming WordPress 5.5, most bug fixes should be included.

Focal Point Selector for Video Covers

Selecting a focal point for a video background.

The Cover block has long allowed users to pick a focal point for background images. However, this feature was missing when users added a background video to the block. As of version 8.6, that is no longer the case. Both image and video backgrounds should work in much the same way.

Gutenberg now has a new “Focal point picker” option located under the “Media settings” tab when adding a video background. Users can select the focal point by dragging the circle icon in the video box or hardcode left and top percentage values in the input fields below it.

This is not a particularly exciting development for most Gutenberg users. Self-hosting video is not cheap and remains unused for most. However, for those who do use video backgrounds, it is one of those nice-to-have features that is there when needed.

Updated Block Patterns

Inserting the updated quote block pattern.

The Gutenberg team updated several of the existing block patterns. For the most part, the pattern updates were minor cosmetic changes, tweaks that improve the overall design. The button-related patterns received simple changes, such as new text labels and colors. The developers also changed the colors and text of the large header patterns.

The team moved the header above the columns in the two columns text pattern and changed the text to make the columns appear equal height by default. It is a poor use of textual columns, which would ideally be handled with CSS instead so that it works appropriately across screen sizes. Perhaps it would be better to have a “Text Columns” block in the long run.

The nicest block pattern update was for the quote pattern. It now has an image at the top and a separator at the bottom. It is akin to a single testimonial, which is more of a pattern than a basic quote.

Theme authors can also remove support for the core block patterns with a single line of code: remove_theme_support( 'core-block-patterns' ). This does not drop support for patterns altogether. For example, patterns added by plugins or the theme will still appear in the inserter.

Site Icon Used in Fullscreen Mode

Site icon appears in top left in fullscreen mode.

When writing in fullscreen mode, the “back to posts” link has utilized the WordPress logo in the past. In version 8.6, the user’s custom site icon will take its place. However, this will only happen if the user has uploaded an icon via the customizer.

I am unsure how I feel about this change. In practice, it almost feels like clicking the icon should take me to the front end of the site instead of the post management screen. At least with the WordPress icon, it felt like it was pointing toward an admin-side screen instead. For my workflow, I would rather see this link/icon replaced with a button that toggles between fullscreen and normal mode, popping the admin menu back into place rather than departing the editing screen altogether.

by Justin Tadlock at July 28, 2020 08:59 PM under gutenberg

WordPress.org blog: WordPress 5.5 Release Candidate

The first release candidate for WordPress 5.5 is now available!

This is an important milestone in the community’s progress toward the final release of WordPress 5.5.

“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.5 is slated for release on August 11, 2020, but we need your help to get there—if you haven’t tried 5.5 yet, now is the time!

You can test the WordPress 5.5 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.5?

WordPress 5.5 has lots of refinements to polish the developer experience. To keep up, subscribe to the Make WordPress Core blog and pay special attention to the developer notes tag for updates on those and other changes that could affect your products.

Plugin and Theme Developers

Please test your plugins and themes against WordPress 5.5 and update the Tested up to version in the readme file to 5.5. 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.5 Field Guide, due very shortly, 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.5 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, fill one on WordPress Trac, where you can also find a list of known bugs.

by Jb Audras at July 28, 2020 07:08 PM under Development

WPTavern: WordPress to Stick with Online-Only Meetups and WordCamps for Remainder of 2020

photo credit: Burst

The WordPress Community Team has officially updated its guidelines for WordCamps to be online-only events for the remainder of 2020. The six WordCamps on the schedule through the end of the year were already planning on using an online format but the guidelines also include local meetups.

“The team acknowledges that this is not easy for the community that has been heavily based on in-person events and encounters,” Timi Wahalahti said in the announcement. “Unfortunately, the global coronavirus situation does not seem to be slowing down to a level that would allow us organizing in-person events safely at this time.”

The guidelines will be re-evaluated in the first quarter of 2021, but some organizers are already planning for online events next year. WordCamp Europe 2021 is the first WordPress event to go virtual for the coming year, with the in-person event resuming in 2022.

Moving what was once a vibrant in-person gathering to a two-dimensional online format is a challenging endeavor, especially when the world is suddenly awash in online events competing for attention. Making virtual events stand out from the crowd is a new marketing challenge.

There is something about the magic of WordCamps that gives momentum to ideas and collaboration. While you cannot replicate the chance meetings in the hallway and the priceless conversations over long dinners, online events have the benefit of being more geographically inclusive. The constraints of the pandemic are also challenging our assumptions about how online gatherings are supposed to work.

WordPress Community Team to Explore New Event Formats, Redefine Relationships with Sponsors, Temporarily Cancel Swag Spending

The necessity for virtual events has inspired discussion around some new event formats, including a new proposal that decouples online events from geography. WordPress Community manager Hugh Lashbrooke described how events might explore combining synchronous discussions with previously recorded workshops:

What if we blended those two elements into a program that provides the flexibility of online content, with the value and sense of community that comes with learning together?

We could publish workshops in a central location (on wordpress.org, for better visibility and reach) and then invite learners to join live discussion groups that cater to different timezones. This “flipped classroom” model allows people to learn at their convenience, and then come together for additional development. 

Lashbrooke suggested the workshops could be designed by people who would otherwise be speaking WordCamps and could possibly source content from WordPress.tv or talks that have been given at online meetups.

“There is also potential for longer courses, composed of multiple workshops, and a group that meets repeatedly over time,” Lashbrooke said.

So far the suggestions in the comments include introductory workshops for WordPress. These would be timely for newcomers who have recently lost work and are looking to improve their online resumes or portfolios, or start up a new business. Beginner workshops have strong outreach potential if promoted outside of the WordPress community.

During the first half of the year, the Community Team began transitioning to facilitating the needs of online events and have continued to work tirelessly to find ways for people to connect. In a recent update, WordPress community organizer Andrea Middleton explained that changes are coming for future online events, which may adopt another name instead of using “WordCamp.”

Due to the financial position of WordPress Community Support PBC (WPCS), the community team is ending programmatic support for online AV vendor expenses. WordCamps that are not yet on the schedule will be encouraged to get sponsorships if they require the use of a professional AV vendor.

“Likewise, we have paused plans to spend money on sending swag, T-shirts, or other typical WordCamp collateral,” Middleton said. “It’s important to change our frame of reference for what’s necessary to make online events, away from the WordCamp model. Just because we did things a certain way for WordCamps, doesn’t mean it’s a high priority for online events.”

Sponsorships are also being re-examined, as online events haven’t quite been able to deliver the same value to sponsors that traditional events did.

“The value proposition of online sponsor booths is shaky, and we’ve always prided ourselves in partnering with our sponsors,” Middleton said. “Looking ahead, we must examine how much funding we need to create events that meet the goals of the team, and let that determine how to best coordinate with our community sponsors to deliver value and further our mission.”

The potential for in-person events for the coming year is still uncertain at this point, in the absence of a vaccine ready for commercial distribution. WordPress’ global sponsorship program has been temporarily suspended and the Community Team plans to work with global sponsors later this year to make a plan for 2021.

by Sarah Gooding at July 28, 2020 01:06 AM under News

July 27, 2020

WPTavern: Are Plugin Authors to Blame for the Poor Admin Notices Experience?

Last Thursday, Vova Feldman published an article asking that we stop blaming plugin authors for the plethora of admin notices that users are bombarded with each day. The real culprit? The lack of a notifications mechanism in WordPress core.

Feldman’s post was prompted by a tweet in which Scott Bolinger called out plugin authors for letting admin notices get out of control:

Feldman argues that laying the blame on plugin authors is the wrong way to look at the issue. While I agree that the underlying problem lies with WordPress, plugin authors have played their part in creating an atmosphere where they have become the scapegoat for everything wrong with the system.

I have developed plugins since a fateful day in April 2007 in which I released a plugin that simply listed the current page’s subpages. I have worked on 100s of plugins for clients and public release since then. In that time, I have maybe added a custom admin notice two times and only when the plugin had a major change, such as a database update. I reserved such notices for the OMGBBQ-very-important-you-need-to-read-this type of stuff. I considered it my duty to create an experience in which the user did not have to dismiss a notice every time one of my plugins received an update.

This was not because I was cognizant of the growing issue of dozens of notices on some sites or how often users were being overwhelmed with them. For many years, I worked within a bubble where I simply focused on creating what I considered an ideal experience for my users. I always thought the admin notices system created an abysmal experience. It did not make sense to use it more than necessary.

On the other hand, there were likely a few times over the years where I should have added some sort of notices for changes. Instead, I avoided doing so altogether because WordPress lacked a notifications system. I missed some good opportunities for communication.

To a large extent, the issue stems from this lack of a proper notification system. However, plugin authors have perpetuated this broken system by continuing to use it when unnecessary. They have used it as a billboard to place their holiday ads. They have used it to upsell commercial versions of their products and services while prompting users for a five-star rating. There is plenty of blame to go around.

Instead of placing blame, we should start asking what tools would solve problems for developers.

The Need for a Better System

Technically, WordPress simply has a hook and a set of common classes that developers can use in their HTML to provide some different colors for notices. There is no API, and without an API, it is impossible for even third-party plugin developers to even try their hands at creating various solutions.

The closest thing WordPress has to an API is a little-known project from the Themes Team that provides a standardized method for theme authors to add notices. However, the project covers only one aspect of admin notices, which is to create a consistent UI.

The admin notice issue cannot be properly addressed without identifying the problems that plugin authors have tried to solve within the system, which at least includes the following:

  • User-oriented notifications, generally appearing after a user action.
  • Advertising commercial products and services.
  • Calls for plugin feedback or star ratings.

One of the primary issues with the current notification system is that it was created for the first item in that list. The other two items are not necessarily bad things. They are just poor usages of the system in place. However, there is no other standard method to handle those scenarios.

Advertising is something we all must deal with in some form or fashion. I am unsure if there could or even should be a standard API for advertising. An outright ban of ads in the admin notice area could create a beast of its own, forcing plugin authors to come up with more obtrusive forms of advertising in other areas of the admin. I want to support advertising but not when that advertising wiggles its way to the top of every admin screen.

WordPress provides no easy way for end-users to rate or review plugins from their admin interfaces. Having an easy way to provide direct feedback would be immensely helpful for both users and developers. While I am certain many people would argue against such integration with the WordPress.org site (there are arguments against any external integration out of the box), ratings and reviews would require an explicit opt-in from end-users because they would need an account on WordPress.org.

Advertising and plugin feedback should not be a part of a discussion on admin notices. However, reality dictates that they are integral to the conversation.

The first order of business must be to create a new notification system from the ground up. It should provide a standard API for plugin authors while handing over full management capabilities to the site owners. Users should be able to disable notices altogether or even enable/disable notices on a per-plugin basis. Notice that a particular plugin author provides useless notices? Well, just disable notices from that plugin. The author lost their privileges.

From that point, we can let the progress drive the discussion on what to do about advertising and calls for feedback. A new system may shift them to a new screen — out of sight out of mind — but not make those problems disappear.

More than anything, it is time for a champion. The project does not get done without someone who will pave the path forward and earn the green light for a new notifications system in WordPress.

by Justin Tadlock at July 27, 2020 09:40 PM under Opinion

WordPress.org blog: WordPress 5.5 Beta 4

WordPress 5.5 Beta 4 is now available!

This software is still in development, so it’s not recommended to run this version on a production site. Consider setting up a test site to play with the new version.

You can test WordPress 5.5 Beta 4 in two ways:

WordPress 5.5 is slated for release on August 11th, 2020, and we need your help to get there!

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

Some highlights

Since beta 3, 43 bugs have been fixed. Here are a few changes in beta 4:

  • Add "loading" as an allowed kses image attribute (see #50731).
  • Add filter for the plugin/theme auto-update message in the Info tab of Site health (see #50663).
  • $_SERVER['SERVER_NAME'] not a reliable when generating email host names (see #25239)
  • Several backported fixes from Gutenberg are included in WordPress 5.5 Beta 4 (See PR #24218)

Developer notes

WordPress 5.5 has lots of refinements to polish the developer experience. To keep up, subscribe to the Make WordPress Core blog and pay special attention to the developers’ notes for updates on those and other changes that could affect your products.

How to Help

Do you speak a language other than English? Help 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.

by David Baumwald at July 27, 2020 08:56 PM under Releases

Donncha: Crowdsignal Polls in your Block Editor

The Crowdsignal team at Automattic have been quietly working on a new poll block for the last few weeks. We finally made it public today on WordPress.org!

We set out with the task of creating a block that would allow the writer to quickly insert a poll in their posts using the block editor. More than that, it had to be simple to use. It also needed to be themed to match the look and feel of the website it would appear on.

We’ve created a block that does that. It also records the votes collected on the Crowdsignal website where you can analyse the results using reports Crowdsignal users have always used.

Search for “Crowdsignal Forms” on your plugins page to install it in the usual way.

A free Crowdsignal account is required to use the block. We made it really easy to connect your site to your Crowdsignal account. If you don’t have one then creating a new account is simple too.

The first 2,500 responses you collect are included in your free account, and further votes are recorded but free users are encouraged to upgrade if they want to do further analysis of all the data they collect.

Related Posts

Source

by Donncha at July 27, 2020 07:17 PM under polls

HeroPress: HeroPress Gets A Surprise

Topher wearing his cape.

A couple of months ago Michelle Frechette approached me about being on a podcast for Sentree.io. I didn’t realize at the time I was going to be their inaugural guest! We had a great time, and things got back to normal.

Several weeks later Michelle said they sent me a thanks gift, which was very thoughtful, and that I should have someone video the unboxing. I never once imagined what they actually sent me. Here’s the video.

My family already has all sorts of ideas about how to use it at WordCamps. I just hope it survives being worn ALL DAY EVERY DAY.

It’s super well made, I snooped a little and found the etsy shop it came from. Really great embroidery and seaming. Really classy.

Thanks Sentree, and thanks Michelle. :)

The post HeroPress Gets A Surprise appeared first on HeroPress.

July 27, 2020 01:31 PM under WordCamp

July 24, 2020

WPTavern: Develop, Test, and Showcase Blocks in Isolation With BlockBook

Riad Benguella released BlockBook, a project that promises to overhaul how developers build blocks and more, on Tuesday. It is a development environment that allows creators to work with blocks in isolation, outside of WordPress. Developers can view individual block properties and test output from a defined block library.

BlockBook is available as an npm package. Developers can also contribute to the project through its GitHub repository.

Benguella got the idea from Storybook, which is an open-source tool for developing UI components for React, Vue, Angular, and other JavaScript libraries in isolation. It is an environment that makes development and testing more efficient for individual components. It also allows end-users the opportunity to test those components before they are brought into a project. The goal for BlockBook is to bring a similar system to WordPress block development.

“If we think about it a little bit, blocks are reusable units that can live on their own outside of any context, they can be edited visually, and they produce markup,” wrote Benguella in the announcement post. “They have in fact a lot in common with React Components. They are super-powered React Components.”

He believes that BlockBook will be able to solve many of the issues around block development by taking the principles of the Storybook application and employing them into an environment specifically for building, testing, documenting, and sharing blocks.

Benguella has a full demo available as a GitHub page. Developers can do the same with their plugins or simply host it as a static site on their own server.

BlockBook example output of the Gallery block.

In his post, he identified three major challenges that his project is meeting head-on. The first, and most obvious for anyone who has delved into block development, is creating blocks within the WordPress environment. It is a tedious and inefficient process to develop and test blocks in the WordPress admin. By isolating the block code, developers can bypass many of the routine tasks every time they make a code change to a block.

The second challenge was to figure out a way to make theme testing much easier. For theme authors with one or two themes, testing block styling is relatively easy. However, for businesses, agencies, and others who maintain many themes, there is no good way to quickly see how individual blocks behave for each of the themes. BlockBook allows theme authors to register any number of themes. Essentially, developers add a few lines of code and point to the appropriate stylesheet. Once set up, testing is as simple as switching themes via a dropdown select and moving between individual blocks. All of this happens almost instantly.

The third part of the equation involves end-users. Currently, users have no good way to test blocks without installing a block plugin, heading to their editor, and tinkering around with it. If they do not like the block, they must start the process all over again. With BlockBook, developers can make their blocks available for testing beforehand. They can even allow end-users to beta test blocks and provide feedback without installing a plugin at all.

However, that is still not quite as efficient as Benguella would like. It would rely on individual developers. For the long-term, he hopes the project becomes an official WordPress package. This creates the possibility of WordPress.org automatically building and hosting a BlockBook for plugins and themes, giving users a chance to test before installing.

This is something that could be revolutionary for users if the official WordPress project could take it on and create a solid user experience around it.

by Justin Tadlock at July 24, 2020 07:00 PM under gutenberg

WPTavern: Unsplash Responds to Image Licensing Concerns, Clarifies Reasons for Hotlinking and Tracking

Concerns are mounting regarding Unsplash’s terms and image licensing after the site launched its official WordPress plugin this week. Several people commented on the restrictions and lack of clarity in the license.

“The irony here is that this goes against Unsplash’s own licensing for images,” Aris Stathopoulos commented. “It’s vague and restrictive to the point where one doesn’t even know if they can actually use the images they import.”

Matt Mullenweg responded to Stathopoulos’ comment, saying, “I agree, not sure if this should be allowed in the directory.”

The last time the site made a major splash in WordPress news was in 2017 after revising its license to prohibit the compilation of photos for the creation of a similar or competing service. Its new branded license made the library’s images incompatible with the GPL and unable to distributed with WordPress themes and plugins.

Unsplash co-founder Luke Chesser believes these comments are due to a misunderstanding about the license change.

“As you know, themes have a requirement that themes and their content be GPL compatible,” Chesser said. “Outside of themes, WordPress’s application of GPL doesn’t apply to content in plugins. That’s why you can have a YouTube plugin, a Getty Images plugin, a Giphy plugin, etc. — none of this content is licensed under GPL. In most cases plugins serve content that has a very narrow usage license, much, much more restrictive than the Unsplash License.”

Why Unsplash Abandoned Creative Commons Zero Licensing

To understand the sensitivity to Unsplash’s licensing change, one must dust off a bit of web history. When the site first started in 2013, the images were licensed under the very permissive Creative Commons Zero license. It quickly grew from a Tumblr-hosted photo blog that shared “10 new photos every 10 days” for free, to one of the most popular photo libraries on the web.

Chesser said the real life problems the Unsplash community encountered caused his team to change the licensing to protect photo authors.

“People were downloading the images and reselling them on Getty and Shutterstock,” he said. “Even if the people doing this made no money, it was such a negative experience for Unsplash contributors that they would remove their images from Unsplash, removing content that was previously available to openly be created with.

“Scraping of the site and the library had a similar effect as contributors would see their photos copied over to thousands of free image sites they never signed up for, or worse, their photos being made available to other sites with no attribution.”

Unsplash contributors were likely not fully aware of the freedoms that the CC0 license affords. These problems may be undesirable applications of the license but they were not outright misuses. When Unsplash changed its license, approximately 200,000 images were no longer identified on the site as being part of the public domain.

Creative Commons got involved after the organization started receiving questions from users in the open content and free software movements. Ryan Merkley, CEO of Creative Commons at that time, penned an update on Unsplash’s licensing change to the CC community, expressing the organization’s concerns.

“Our intention is to ensure that CC community members understand what has happened to a service they have been using that incorporated CC tools, and to protect the content that was dedicated to the public domain,” Merkley said.

Creative Commons called on Unsplash to properly differentiate the works that were previously shared under the irrevocable CC0 license so that they would not disappear from the public domain:

Following the switch to the new Unsplash-branded license, there is no marking of works that were previously shared in the public domain using CC0. The Unsplash API restricts/obscures the full CC0 collection, which we believe to be about 200,000 images, but it isn’t possible to access the complete archive. In order to ensure that the commons is maintained, we hope that Unsplash will either a) properly mark all the works shared using CC0 and/or b) make available a full archive of the CC0 works so they can be shared on a platform that supports open licensing and public domain tools. Previous platforms that have gone under or abandoned open license tools have shared their CC archives for this purpose. We hope Unsplash will follow the same path.

Unsplash declined to identify these images at that time. When I asked Chesser if the company is willing to update their API to differentiate these works, he said they discovered the images were never CC0 to begin with because of Unsplash’s terms:

The 2017 license clarification I described was also brought about because the team from Creative Commons told us that the photos were not licensed under CC0 if there were additional terms stipulated on the terms page. Therefore, the photos were not actually under CC0, as they had been submitted with additional terms attached to them and we could not and can not distribute the photos under the CC0 license. As part of this, we renamed the license to the Unsplash License and clarified the main parts of the terms in the form of the Unsplash License.

The controversy over the license change struck a nerve with those who perceived the move to be unfair to the community of creators who had been convinced to put their works in the public domain. Unsplash had become a household name on the backs of Creative Commons Zero licensing, with the images fetching more than 29 billion views in 2017, only to abandon the license when it was no longer expedient for the growth of their community.

That body of work that had been originally shared to the public domain was then deftly hidden away (and remains so) with no differentiation in the site’s API to identify these images. This is what Mullenweg seemed to be referencing when he commented on the plugin launch.

“Encouraging hotlinking is also pretty suspicious, especially after the previous bait and switch,” Mullenweg said. “Maybe if there was a way again to find just the CC0 licensed images, which the Creative Commons also requested, this could be okay to promote.”

Chesser contends that the Unsplash community had no complaints with the decision and that the only people who were dissatisfied were those who were not contributors.

“For anyone who feels that we somehow ‘tricked’ our community, again, I’d point back to the reaction from our actual contributor community — the people who generously submit their images to Unsplash for others to create with,” Chesser said. “We heard no complaints from this community when we clarified the License in 2017. Had there been an issue, had we somehow been taking advantage of their contributions, we would have certainly heard about it then, as our community are very passionate and vocal.

“The only complaints we heard were from people from outside of the Unsplash community — including Matt — who have never submitted an image to Unsplash and aren’t part of our community. On the internet, there will always be people who disagree with you — we focus on our community and expanding the number of people who have access to create with images.”

This particular licensing conflict seems to have inspired a bit of lasting apprehension regarding Unsplash’s willingness to change its license and terms in the future. Allowing a plugin to efficiently pump out thousands of images to WordPress sites could potentially make the platform’s user base a vector for disseminating works that someday may not be available with the same freedoms.

“Could the terms or licensing of that hotlinking change in the future, as the licensing did in 2017?” Mullenweg asked in the comments.

“I forsee no future scenario where our terms will ever meaningfully change,” Chesser said. “They will of course occasionally be refined, as all terms are—like when we added clarifications around GDPR compliance or when we add new features that require a legal definition. But our mission and goal are the same as they have always been: to enable anyone to create with visuals, and our terms will continue to reflect that.”

After a few in the WordPress community expressed that the license was not clear in terms of what users can do with the images, Chesser said he would be open to making a separate clarification document to address any legitimate concerns.

When the 2017 licensing controversy happened, Richard Best, a technology and public lawyer based in New Zealand, said the new Unsplash license could use some clarification regarding freedoms for downstream recipients. He suggested changes that rephrase it as follows: “Unsplash grants you and every person who comes into possession of the photos a nonexclusive copyright license to…”

“These changes are intended to ensure that downstream recipients of the photos receive the same licence from Unsplash,” Best said. “Both the GPL and the Creative Commons licences are structured in this way. Without these changes, distributors of products like website themes may be concerned that the end users of their products will not receive the rights they need to use the photos for their own purposes.”

Chesser said the Unsplash License and terms were created by the same legal team that created the Creative Commons licenses. Any major differences regarding the freedoms for downstream recipients were likely considered and intentional. It may still be an important clarification, as the block editor continues to make it easier for users to create and share their own designs with images.

Unsplash Clarifies the Purpose of Hotlinking to the CDN and Tracking Views

The official Unsplash plugin is different from other plugins created to connect users to the free image library in that it hotlinks images to the Unsplash CDN, ostensibly to reduce the site’s bandwidth usage and speed up delivery.

“The plugin uses the Unsplash CDN to serve Unsplash images while the plugin is installed and enabled,” Chesser said. “At the same time, every image used in a post will also be copied over to the local server and stored there. We store a copy of every image on the local WordPress install so that if the plugin is disabled or removed by the site owner, their posts can continue to serve the local images and don’t break, however they lose the features of the Unsplash CDN.”

The CDN also supports dynamic resizing, compression, cropping, automatic file format conversion, and a number of performance improvements that Chesser said the service has implemented based on what the team as learned from serving tens of billions of images every month for 8+ years.

“When we talked to publishers, these features were extremely important to them,” he said. “Rather than try to rebuild the wheel in WordPress, we wanted to offer these features to publishers as they aren’t supported natively by WordPress and are table stakes for modern image serving.”

The Unsplash CDN exists to serve the needs of Buzzfeed, Trello, Adobe, Dropbox, Notion, and 2,200+ official API integrations. It also gives Unsplash contributors a better idea of the real number of views of the content they post.

“This outsized distribution of their images is one of the main reasons that photographers post on Unsplash,” Chesser said. “A quick search on twitter gives you a good idea for how important this phenomenon is to our contributors.”

One commenter said that she was put off by the official plugin’s requirement to authenticate, since competing plugins don’t add this extra layer.

“They can now force user sign ups to inflate their user base even though other plugins just serve images without any sort of authentication,” she said. “What is the point in a user authenticating to only receive an API key? It’s not like you can access Likes or your collection with only the API key.

“Serving images from their CDN also allows them to track image views and URLs which helps inflate the download and view counts for their contributors. These other plugins like Instant Images downloads the file to your media library which would only count as a single download. I’m going to stick with Instant Images as I don’t feel like feeding the advertising machine.”

Responses to the plugin’s approach were mixed, but overall it seemed that most users were delighted to cut a few steps out of their workflow for posting images to WordPress. The plugin has more than 300 downloads in 48 hours.

Is Unsplash in Violation of the WordPress Plugin Directory’s Guidelines?

After Matt Mullenweg raised concerns about the plugin’s suitability for the directory, commenters called in similar concerns about the Pexels library, which Automattic uses in Jetpack.

Unsplash does not appear to be in violation of the official WordPress.org plugin directory guidelines. Earlier this year when asked about a different plugin that imports an Unsplash image, Plugin Team member Samuel Otto Wood responded using an Unsplash-specific example:

Let’s simplify this right down to basics: Lets say you made a plugin that imports images from Unsplash into your site. That plugin is fine. It has no images in it, the purpose of it is to access a library of images and allow you to pull them into your site. You have to take actions to pull in those images. That is perfectly acceptable for being hosted on w.org. So, you can’t use Unsplash images in your plugin hosted here. But if it pulls them from somewhere else via user action and intention, fine.

Chesser sees the concerns regarding the clarity of Unsplash’s licensing as unwarranted, given Automattic’s use of the Pexels library.

“Pexels made a clone of the Unsplash License with the exact same restrictions shortly after we updated it in 2017,” Chesser said. “At no point has WordPress expressed any skepticism that the Pexels License is legally vague. Given that they have instead created multiple official partnerships with Pexels, including adding it to Jetpack, then I would expect that they consider the license to be legally clear.”

Both Pexels and Unsplash licenses share similar restrictions but Pexels has more restrictions on how images can be used. Chesser believes the renewed concerns are entirely founded on Unsplash’s controversial 2017 licensing change.

“Before 2017, we had a strong relationship with WordPress,” Chesser said. “Since then, WordPress has essentially cut off all ties with Unsplash and instead made partnerships with Pexels to integrate into WordPress features. What’s strange though is that shortly after we clarified our license in 2017, Pexels did the same thing, adding the same restrictions plus a few additional ones.

“Specifically, you can see that they have the same restriction around reselling of content and the same restriction around recompiling and scraping of the site. (Note: they use the word redistribute on the license page, but use the word compile in their terms.)”

XWP, the agency that Unsplash partnered with to build the plugin, said the license is “significantly less restrictive than Pexels, Youtube, Getty, Spotify and many other examples you’ll find throughout the plugin directory.” If this plugin is in violation, then many others would be called into question along with it.

“As rule 6 on the WordPress.org plugin guidelines clearly state: ‘Plugins that act as an interface to some external third party service (e.g. a video hosting site) are allowed, even for paid services,” XWP CTO Derek Herman said.

“As their high quality images are available as an API, we built a community plugin up to WordPress VIP coding standards so that Unsplash would work on a variety of use cases, from WordPress versions 4.9 to 5.4. Integration with APIs has been key to WordPress’ growth over the past few years.”

Herman also cited several prominent examples of content integrations with varying licenses and terms that govern the content:

  • A leading enterprise publishing plugin is Getty Images, which is a WordPress VIP partner plugin and has long been used by larger organizations. It primarily sells “restricted-usage” images connected to a network of media sources like newspapers and freelancers.
  • WordPress core has extensive oembed support for third parties, which takes third-party URLs and parses them in a way to link to the site. While Amazon Kindle, Spotify and Youtube’s content licensing rules are quite restrictive, the goal of these integrations are to encourage content creators to tell stories with what they find across the internet.
  • In its most recent release Jetpack included two exciting new media integrations—Google Photos and Pexels—which are certainly relevant here. Pexels actually has a “political views” clause in their license. As they do not define what is a “political policy or viewpoint” it could be viewed as too restrictive as nearly any post could be construed as being political.
  • There are a few other plugins using Unsplash in the WordPress ecosystem, such as Instant Images (which has been in the directory for over three years). In fact, WordPress Release lead Riad Benguella wrote a great prototype plugin called “Drop It,” which integrates with both GIPHY and Unsplash, and served as inspiration for us on this project. 

At the moment, it seems Unsplash is within WordPress.org’s plugin directory guidelines, but if its terms and licensing are deemed incompatible, many media integrations in the plugin ecosystem will also be called into question. Users who object to Unsplash’s method of delivery can always opt to use a plugin with a different approach. Those who want to support libraries that serve images with GPL-compatible licensing can check out the Theme Team’s list of recommended sources and look for plugins that integrate those.

by Sarah Gooding at July 24, 2020 05:24 PM under unsplash

July 23, 2020

WPTavern: Revised Block Directory Guidelines Proposal Updates Wording but Changes Little Else

Yesterday, Alex Shiels posted an update to the proposed guidelines for the WordPress block directory. The document adds eight rules for plugin authors to follow if they plan to add their one-off blocks to the directory. The guidelines are additional requirements on top of the existing plugin directory guidelines.

While the wording and organization of the block guidelines received a revamp in comparison to the original proposal, the overall sentiment is unchanged. Shiels thanks community developers for the feedback on the original guidelines but does not go into detail about the things that changed as a result.

The primary guidelines are mostly expected, run-of-the-mill requirements for blocks. Developers need a block.json file. They should name stuff appropriately. Plugins should contain only a single block. Plugins should only touch the block editor. Blocks should work seamlessly once activated.

The remaining guidelines are certain to be a disappointment or point of contention for some developers.

Monetization Still Not Allowed

The largest feedback on the guidelines we received here at the Tavern surrounded what is essentially a blanket ban on commercial interests for block developers. Blocks still cannot hook into a paid service or advertise within the admin. This limitation will obviously turn away many businesses that may have been looking forward to the block directory as a potential avenue for profit. Right now, one-off blocks will need to be built by those with altruistic interests, giving back to the community simply out of the kindness of their hearts.

While there is nothing inherently wrong with wanting to do that, it is not attractive to developers who are primarily focused on putting food on the table. Hobbyists and larger businesses with the resources to give back will be well-suited to add blocks to the directory. However, it will give a lot of developers pause because it is unlikely a good return on investment. Instead, those developers are more likely to submit their blocks to the normal plugin directory with their normal upsell methods. This will only serve to make block discoverability harder for end-users.

This is a missed opportunity to build a well-rounded system that is fair to both users and developers who need to make a living. Whether it is through the plugin tag system or specific guidelines on monetization, we could have built something that made everyone a little happy and a little mad, a compromise that merged a good user interface and experience.

It is not like there have been no proposals. In January, Luke Carbis wrote a detailed outline of how WordPress could provide a middle ground between sustainability (business models) and accessibility (free options) with the upcoming block directory. His fear was that the block directory would be full of blocks without updates in a few years because the completely free model is unsustainable. His proposal was a badge-based system that let users know if a block contained ads, used a freemium model, or required a sign-in to a third-party service.

The current guideline is not set in stone. This is the first version of the block directory. It is not out of the question that the team could change things as the directory grows over time.

No Love for Server-Side Blocks

The block directory guidelines are still heavily geared toward static blocks. PHP must be kept at a minimum and primarily be used to load any necessary scripts and stylesheets. Server-side blocks are not getting much attention at the moment, which may be a limitation of the software.

It would be great to see a way for some server-side blocks to be included in the block directory. For example, a breadcrumbs block would need to rely heavily on PHP to render its output. It is a dynamic block rather than static. This particular block would not be useful until full-site editing lands in WordPress, which is still several months away. However, I am getting the itch to turn an old breadcrumbs plugin of mine into a block. It would be neat to see it listed in the block directory.

There are countless other scenarios. Post lists, product grids, and data pulled from external APIs are all good use cases for one-off blocks.

Dependencies Are Not Allowed

Given the way that WordPress works, it makes sense to ban dependencies on other plugins for any particular block to function. This is an old limitation that is rearing its head again. Every other modern framework uses some sort of dependency management to address this problem.

The block directory has the potential to exacerbate the problem even further. Because plugins coming from this directory will be single blocks, it will often mean that developers are using the same bits of code across multiple projects. For example, an end-user may activate multiple block plugins that rely on the same JavaScript library. Because there is no 100%, sure-fire way to make sure only one instance of this library is loaded, users may be running multiple instances of it on their sites. It is not a new problem, but smaller block plugins mean that users are more likely to install more plugins. It increases the probability of running into this issue.

If there was any sort of basic dependency management for plugin authors to use in WordPress, it would solve a world of problems. Over the years, developers have created methods to minimize the issues stemming from the lack of such a system. However, nothing is foolproof without a standard to follow.

This has also held developers back from building libraries, scripts, and tools that could benefit the entire development community as a whole. Everyone builds their own things in-house, and the block directory is making a promise for more of the same.

by Justin Tadlock at July 23, 2020 08:38 PM under block directory

BuddyPress: BuddyPress 6.2.0 beta

Hi BuddyPress contributors!

We will soon publish a maintenance release (6.2.0) to prepare BuddyPress to some changes that will introduce WordPress next major release (5.5.0). WordPress 5.5.0 is slated for August 11, and we’d love you to help us use the coming days to make sure your favorite community engine is ready to fully enjoy this new version of WordPress.

BuddyPress 6.2.0 will make sure our BP Email feature is using the 6.0 version of PHPMailer when WordPress 5.5.0 is installed on your site and will carry on using its version 5.2 when your WordPress version is lower (4.8 to 5.4 for the supported versions of our 6.0 branch). For more information about it, please have a look to this ticket.

If you’re a plugin or a theme developer and are extending our BP Email feature, we strongly advise you to test your code with the latest pre-release of WordPress 5.5.0 (eg: 5.5.0-beta3) and BuddyPress 6.2.0-beta1.

WordPress 5.5.0 will also remove the jQuery Migrate library, as BuddyPress uses a lot jQuery, we’ve been checking the impact of this removal. We haven’t found any issue so far, but if you do, please warn us about it commenting this ticket.

A detailed changelog will be part of our official release notes, but, until then, you can check out this report on Trac for the full list of fixes.

You can test the 6.2.0-beta1 pre-release in 2 ways :

Thanks in advance for your contributions.

by Mathieu Viet at July 23, 2020 12:45 AM under releases

July 22, 2020

WPTavern: Google Delays Mobile-First Indexing Deadline to March 2021

Google had set September 2020 as the deadline for when it would begin to fully switch over to crawling and indexing sites using mobile-first indexing but announced today that site owners will have more time to prepare. The deadline has been extended to March 2021.

Mobile-first indexing is a long-term plan that Google began rolling out in July 2019 by enabling it for new domains. The company cited “these uncertain times” as the reason for delaying the next phase of the rollout. The announcement also referenced further testing that showed a number of common issues sites are having in making the transition. Google urged site owners to pay close attention to several important issues:

  • Robots meta tags on mobile version should match the desktop version or Google may fail to index or follow links on the page.
  • Do not lazy-load primary content based on user interactions (like swiping, clicking, or typing), because the Googlebot doesn’t trigger these user interactions.
  • Avoid the bad practice of using smaller images on mobile to fit the smaller screen. Small and low quality image will not be favorably indexed.
  • Ensure content on the mobile version matches the desktop, since only the mobile version will be used for indexing and ranking in Search.
  • Include meaningful alt text for images.

Google also outlined several other tips for image and video markup and placement. The announcement is essentially a tutorial for how to improve common mistakes that can negatively impact mobile ranking and indexing.

Since mobile-first indexing is already enabled for most currently crawled sites, some speculated that the delayed deadline was due to hastily migrated mobile subdomain sites. John Mueller, Webmaster Trends Analyst at Google, confirmed this is the case and advised site owners to avoid this dated approach and update at the nearest opportunity.

Before the advent of responsive design, many WordPress site owners added plugins that would create a separate mobile site to provide a more mobile-friendly browsing experience. Website visitors soon expected the entire web to be available to them on the devices they carried around in their pockets. This is now the primary way that people interact with the web, and Google’s mobile-first indexing is a reflection of this new reality.

If your WordPress site is still relying on a plugin to create a separate mobile site, or if you are using a plugin for lazy loading, make sure that the solution you have in place is following Google’s mobile-first indexing best practices. There are still 9 months remaining before Google makes mobile-first indexing and ranking the default for the entire web.

by Sarah Gooding at July 22, 2020 11:20 PM under google

WPTavern: Zero BS CRM Rebrands and Relaunches as Jetpack CRM

Jetpack CRM welcome screen.

Mike Stott, co-creator of Zero BS CRM, announced the launch of Jetpack CRM on Monday. The news was the seemingly inevitable rebranding of the original plugin that he and Woody Hayday had built. Automattic, the owner of the Jetpack plugin, acquired the project almost a year ago. While Jetpack CRM carries the “Jetpack” name, it is still a standalone project and has a dedicated website.

CRM stands for “customer relationship management.” Such systems allow businesses to manage relationships through an interface but can vary extensively in user experience. The goal is to manage contacts, sales, and productivity through the software.

The duo of Stott and Hayday have had a bit of a journey in the past year. In August 2019, Automattic acquired the project and provided the resources for the team to continue working on Zero BS CRM. The 3.0 launch in December 2019 was a massive undertaking that included a major database change and UI improvements. Since then, they have worked toward rebranding the project. Stott also did this with a newborn in his family.

When version 3.0 of Zero BS CRM launched, Stott said they were still discussing whether to rebrand and bring the plugin under the Jetpack umbrella. They were gathering user feedback at the time, but his primary focus was on developing features. The name was not the foremost thing on his mind. However, branding can make or break even a good project, and Jetpack is as close to a household name as any product coming out of the WordPress ecosystem. It made sense to lean on that branding.

“Jetpack’s mission is to help entrepreneurs and small businesses succeed by providing tools that keep their sites fast and secure,” said Stott. “We felt that from within the Automattic family, this was a great match. We created ZBS CRM with the same end goal in mind — helping you succeed through better customer relationships, so it just made sense.”

After nearly a year beyond the acquisition, Stott feels like things are going great within the new environment at Automattic. “We’ve found the right product fit within Automattic,” he said. “In Jetpack, we’re happy that we can really push the CRM, and it’s exciting to be part of the bigger WordPress family and being able to integrate with WooCommerce, etc.”

Version 4.0 of the plugin primarily changes the branding in the admin and lightens the UI background. The team has also continued to add small changes.

“Looking ahead, we’re excited to continue developing the CRM following user feedback,” said Stott. “We’ll be working on our roadmap and, of course, how we can best integrate with the Jetpack family.”

Growing and the Future

Jetpack CRM currently has 3,000+ active installs. This is up from 2,000 since the launch of version 3.0 last December. It has been a slow road thus far. However, there is room for growth. The leading CRM plugin, Hubspot, has 100,000+ active installs. There should be plenty of room for competing plugins in the CRM market.

“There’s a massive opportunity for CRM in the WordPress space,” said Stott. “A CRM is not like installing an SEO plugin on every website you own — generally you’d only have a single CRM for your business — but it’s the core of your business. The fact that 3,000+ users and counting are choosing WordPress to run their CRM is a great start.”

The Jetpack brand should help spur some of the growth, particularly if Automattic pushes it as an add-on within the primary Jetpack plugin.

“[Jetpack] has substantial reach among website owners who would benefit from a CRM but may not know what a CRM is,” said Stott. “While we’re happy that the plugin is still growing organically, we are just about set up to really push Jetpack CRM with full force.”

Stott believes the Hubspot comparison isn’t apples-to-apples. Unlike Jetpack CRM, the Hubspot plugin pushes users to an app that is hosted off-site.

“While this makes sense for some users, it doesn’t really take advantage of the huge benefits that native WordPress plugins offer,” he said. “Jetpack CRM sits on the user’s servers. Users manage and control their own data — a huge win under the GDPR whereas a site owner you’re legally required to know where your data is held. Not to mention that the plugin is also extendable.”

Stott said he has always loved the WordPress community’s open-source approach and the freedoms that it provides to build something custom or extend what is already there. There should be ample opportunity for developers to extend Jetpack CRM’s codebase.

“To my mind, there has never been a more exciting time for plugins like Jetpack CRM, which we envision as the ‘business layer’ for modern entrepreneurs, much like WooCommerce has democratized eCommerce,” he said.

by Justin Tadlock at July 22, 2020 07:21 PM under jetpack

July 21, 2020

WPTavern: Unsplash Launches Official Plugin for WordPress

Unsplash has released its own official plugin for WordPress, co-developed with the team at XWP. The plugin seamlessly connects Unsplash’s 1 million+ free high-resolution image library with the WordPress editor.

Post usage 1

Users can easily search Unsplash directly inside the custom block and insert images with attribution and alt description info automatically filled in. The selected images are download and added to the WordPress media library, saving users the trouble of having to leave their dashboards to search, download, and upload images.

Unsplash co-founder Luke Chesser described the project as “bringing the internet’s image library to the internet’s publishing platform.” Although the plugin is useful for any type of website – from small blogs to businesses, it was large publishing organizations that provided the impetus for Unsplash to develop an official integration for WordPress.

“We’ve been working with a lot of publishers as they integrate Unsplash into their publishing flows to replace legacy solutions,” Chesser said. “With so many publishers being powered by WordPress, we saw a repeated need for a high quality integration that could be shared by all of the publishers. In order to best serve them, we needed to offer something that we could ensure met their needs both now and in the future.”

Instant Images, a plugin that boasts one-click Unsplash uploads, is currently the largest competitor to the adoption of the official plugin with more than 50,000 active installs. Many other plugins have also added some form of Unsplash integration in the past. Chesser said his team has loved seeing the variety of applications developers have created with their API and they were hesitant to create their own plugin.

“We saw a gap between the things big and small publishers were telling us, and the way the existing plugins had been developed,” he said. “Most existing plugins reupload the image to the WordPress library and then treat it as a standard image, which breaks a handful of things:

  • Image attribution to the original photographer is usually lost (or is no longer supported past the first usage)
  • The time it takes for the server to download the image and then reupload it can be slow
  • Out of the box, WordPress’s current support for dynamic image URLs that adapt to the device connection and screen size is limited and by using the Unsplash CDN, we could ensure that the right size image is served to better optimize for performance.”

When developing the official plugin, Unsplash and XWP took feedback from publishers and aimed to improve on how existing plugins handled images. After testing it, I found the search feature was fast and setup was a breeze. The plugin handles everything for the user invisibly in the background and its integration with the block editor makes it feel like a natural part of WordPress.

Unsplash Aims to Increase Its Audience by Enhancing the Publishing Workflow for WordPress Publishers

As Unsplash looks to define a new economic model around photography, WordPress-powered sites are a major consideration, since the platform powers more than 37% of Alexa’s top 10 million websites.

Seven years after it started as a Tumblr blog, Unsplash is moving to directly monetize the site by working with brands to create photos that will appear in search results. “Unsplash for Brands” launched in December 2019 as an answer to the question of how Unsplash will make money. Companies pay to have their branded images show up prominently in search results alongside other organically ranking images that match users’ queries.

“While they serve completely different purposes, I think a lot of brands are growing tired of the state of digital advertising today, with Facebook and Google having a host of problems around privacy, targeting, and negative consequences for culture,” Chesser said. “Unsplash allows brands to influence the visual mindshare of the internet while having an authentic and positive impact on their audience.” 

Launching an official WordPress plugin is a strategic move for Unsplash as it puts those branded images in front of a larger audience with users searching directly within the editor. Although the company continues to push out new features to the Unsplash API, many publishers did not have the resources to create their own integrations.

“After so many conversations with publishers, both big and small, that want to integrate the Unsplash library but can’t due to resources, we felt that we needed to offer something more ready to use than the raw API or SDKs,” Chesser said.

“We built the current version of the Unsplash for WordPress plugin so that it meets those needs of publishers now, but we know that we can push it a lot further in the future.”

The first iteration of the plugin mirrors the flow and features that a user would have while navigating unsplash.com, while keeping the writer inside the editor. Now that Unsplash is integrated into the WordPress publishing flow, Chesser sees the opportunity to add more interesting features. Open sourcing the plugin also has the potential to increase Unsplash’s audience as developers extend its core features for use in other plugins.

“Using the context of the post, we can help suggest images or prefill a search using natural language processing,” Chesser said. “We can link together Unsplash images with other WordPress tools to help publishers edit and process images directly in their posts. And with a lot of the work from the plugin being focused on making Unsplash images work natively inside of the WordPress Media Library, we can even open-source the core in such a way that developers can extend and reuse the functionality, avoiding duplication across all of our third party WordPress plugins.”

by Sarah Gooding at July 21, 2020 11:33 PM under unsplash

WPTavern: Why Accessibility Matters for WordPress Themes and Their Users

“Do you ever read the subtitles on a video so you didn’t need to unmute it?” asked William Patton, a representative from the WordPress Themes Team. “Used the ‘beep’ from a crosswalk to know when to cross the road? Found yourself reading the info panel at an airport? Those things are considered features, but in reality, they are aids for people with additional needs.”

As I talked with Patton and other reps from the Themes Team, it was clear they believed accessibility was a vital piece of the theme-building puzzle. The team has made small moves in the last year to bring more themes up to standards. However, it has been a slow-going process.

Last July, the team initiated a plan to add a new guideline every two months or so that would address a single accessibility issue. It would become every theme author’s responsibility to make sure they were meeting the new guidelines. It would be every reviewer’s responsibility to understand how to test guidelines as they were implemented. Thus far, the team has required only that themes have a working skip-to-content link and keyboard-capable navigation menus.

Not every theme author was excited about the move. Some have still shown resistance a year later.

Last week, we covered the Astra theme’s news of hitting 1 million active installs. A commenter made a point that the data shows that end-users do not care about accessibility — the Astra theme makes no mention of being accessibility-ready. The conclusion was that the Themes Team should not be implementing such guidelines based on the success of one of the directory’s most popular themes.

While there are several things we could do to pick apart the original comment and the limited view of the situation, we can instead use it as a catalyst to discuss why accessibility is something that should be at the forefront of every theme author’s mind. Patton, along with Themes Team representatives Carolina Nymark and Denis Žoljom, had a lot to say on the subject.

The overarching theme was that awareness is vital and that theme developers play a crucial role in making the web more accessible.

Awareness Is Key

Žoljom likened the awareness of accessibility to that of a cisgender person looking at the world from the perspective of a transgender person. Once he became aware of larger issues, he made sure to address gender-specific pronouns in his code comments, such as replacing instances of “he” with “they.” He hopes such small changes spark similar changes from others.

He said the situation was the same with accessibility. “It might not mean much to a person who doesn’t have any disabilities, but putting yourself in somebody else’s shoes changes one’s perspective. This is why we started to include things like skip links, keyboard nav, etc.”

The team does not hope theme authors will merely become technically proficient at addressing accessibility issues in their themes. While that would be a help from a review standpoint, it addresses only the symptoms rather than root causes of the issues. Instead, by making more developers aware, they will begin to look at development from multiple perspectives. They will ask how a screen-readers will handle their theme. They will ask whether their colors have enough contrast for low-vision users to read. They will wonder if non-mouse users can navigate their users’ sites.

The technical stuff is the easy part. Changing perspectives and becoming more empathetic toward those who are different is much more difficult. But not impossible.

“A lot of us who build for the web are lacking some basic insights into what it is like to have additional needs beyond what is our own normal,” said Patton. “There is a saying: ‘if you could see it through my eyes, you would see it differently.’ If you could see through the eyes of someone with color blindness or impaired vision, you quite literally would see things differently.”

The trouble with humans, in general, is that it can sometimes be hard to see things through someone else’s eyes. Of course, there are tools to simulate accessibility issues for developers, so that helps. However, these tools do not replicate what it is like to walk through life with a particular impairment or disability. Some of us can only partially glimpse the difficulties that others may have when navigating the web. This does not mean that we cannot address the downfalls of the software we build and become more inclusive to all people, especially if we are proactive when issues are raised.

Nymark identified a few areas where the community can improve awareness:

  • Make sure that all contributors are aware of the WordPress accessibility requirements so that all new features are accessible.
  • Highlight accessibility improvements when WordPress is updated.
  • Feature more diverse use cases and highlight areas where the accessibility that is built into WordPress has helped people share and access important content.

“The themes team hopes that by making theme authors aware of accessibility issues, authors will learn that even small changes to their code and design can have a great positive impact,” she said.

Is Accessibility Important to End-Users?

Certainly, accessibility is important for some users. It certainly mattered to Guillermo Robles, a blind man who sued pizza chain Domino’s in 2016 for an inaccessible website. The court case was important enough that it moved through the system all the way to the U.S. Supreme Court. Ultimately, the higher court denied Domino’s appeal of an earlier ruling. The U.S. 9th Circuit court had previously ruled that business websites fall under Title III of the American with Disabilities Act (ADA) and must meet accessibility standards.

This was a landmark case in the U.S. for accessibility advocates last October. It is also worth remembering as we near the upcoming 30th anniversary of the ADA on July 26.

Domino’s is a billion-dollar business. The company has enough money to fight such battles for years. They also have the money to hire world-class web developers to correct any accessibility issues.

However, for small business owners, hiring a single developer, much less an entire agency or team, is often a non-starter. Many small businesses are fortunate to break even. WordPress and its ecosystem of free or low-cost solutions have democratized eCommerce on a scale previously unwitnessed. It means that mom-and-pop stores can have an online presence. It means teens can begin selling their custom art and a multitude of others can make money online without the backing of wads of cash.

For these small business owners, many are unaware of accessibility concerns. They pick up a few plugins and find a theme that suitably matches their branding. The possibility of an impending accessibility-related lawsuit is the furthest thing from their mind. This is a major reason that WordPress needs to be a leader in meeting accessibility standards. Themes, which are the part of the site that visitors will interact with, are possibly the most important part of that equation.

Some would argue that small business owners should understand the laws of their jurisdiction. That is true. However, it is also partly the responsibility of the software creators, says the Theme Team representatives.

“Yes, the technology should account for additional needs,” said Patton. “Yes, the tooling should enable people to make good choices with regards to this. Yes, it should be easy to meet a minimum level of accessibility in the things we create with ease. Yes, it should be a fair assumption that the choices available to pick from are accessible.”

The web is inherently accessible out of the box. Raw HTML is read and output by web browsers in such a way that the content can be accessed by anyone. Patton says that it is the things that developers do from that point forward that makes that experience better or worse.

“Trade-offs are made that are well-intentioned but not always helpful,” he said. “Design trade-offs are the easiest to point out. Taking text and embedding it into an image means that some of its value is lost in exchange for it looking pretty. Using closely matching colors for text and background might create an interesting effect to some people but for others, it makes it impossible to read. Sometimes it’s about balancing those trade-offs with the needs of others, but it is those kinds of trade-offs that most people struggle to give up.”

Nymark described some more technical issues that the average end-user should expect to simply be a non-issue. For example, it is reasonable to assume that a theme installed from the official WordPress directory would be free from HTML, PHP, and JavaScript errors. These are items that users should not have to worry about checking before activating the theme on their site. The errors should simply not exist.

It is that level of quality control that end-users should expect in terms of accessibility, an assurance that the theme does all the things it is supposed to do. It is not about whether end-users “care” about accessibility.

“If a form on a shop checkout page is not working, this can lead to loss of income,” she said. “Users rely on the technical solution provided by plugins and themes and expect everyone to be able to use their shop. Whether or not the site owner recognizes this as an accessibility issue is irrelevant because their page just needs to work.”

Why Theme Authors Should Care

“If those who choose themes don’t consider accessibility and the theme author did not consider it, then the [visitors] of the sites built with those themes are the ones that lose out,” said Patton. “It’s not a huge leap to realize that low accessibility on your site directly equates to a reduction of potential users.”

He said that end-users would naturally assume the themes they are picking from do not have accessibility issues. However, that assumption is typically far from accurate.

“Theme authors should care about the accessibility of their creations so that the people picking their themes don’t need to use it as a deciding factor,” he said.

My go-to response is that developers should concern themselves with accessibility because it is for the collective good. Humans should care about making sure that all other humans have the same freedoms that they enjoy, which are often take for granted.

Even those who cannot view it from that perspective should be able to appreciate that it is a smart business decision. It makes little sense to leave money on the table, especially if you are a developer who is selling a theme or upselling additional features on top of a free theme. There is an entire segment of users that represents money lost.

Additionally, more and more countries are implementing laws around web accessibility. Over time, such laws will be commonplace, particularly in the business sector. Inaccessible themes will lose users as such laws are enforced. Now is a good time to get ahead of impending change.

More Guidelines Ahead

The WordPress Themes Team has been slow about adopting additional guidelines surrounding accessibility. However, more are expected to land at some point. Team reps want to work with authors and reviewers alike to make the transition as painless as possible.

“We have not added anything else because theme authors are still not releasing themes with working implementations of skip links and usable keyboard navigation,” said Patton. “When those two things become habitual, it will be time to introduce another aspect as a requirement.”

The next guideline in line is expected to be underlined links in the post content. This would be an easy win if the team can get past the current stage. Right now, the team reps are unsure when that will happen.

“The fact that this has taken so long for authors to get this right probably indicates that we need to do better at guiding them to resources to learn how to do it and why it is important,” said Patton. “Perhaps that is a better avenue to pursue than looking to implement additional asks of them.”

by Justin Tadlock at July 21, 2020 07:48 PM under accessibility

WordPress.org blog: WordPress 5.5 Beta 3

WordPress 5.5 Beta 3 is now available!

This software is still in development,so it’s not recommended to run this version on a production site. Consider setting up a test site to play with the new version.

You can test WordPress 5.5 Beta 3 in two ways:

WordPress 5.5 is slated for release on August 11th, 2020, and we need your help to get there!

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

Some highlights

Since beta 2, 43 bugs have been fixed. Here are a few changes in beta 3:

  • Plugin and theme versions are now shared in the emails when automatically updated (see #50350).
  • REST API routes without a permission_callback now trigger a _doing_it_wrong() warning (see #50075).
  • Over 23 Gutenberg changes and updates (see #24068 and #50712).
  • A bug with the new import and export database Dashicons has been fixed (see #49913).

Developer notes

WordPress 5.5 has lots of refinements to polish the developer experience. To keep up, subscribe to the Make WordPress Core blog and pay special attention to the developers’ notes for updates on those and other changes that could affect your products.

How to Help

Do you speak a language other than English? Help 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.

by Jake Spurlock at July 21, 2020 05:51 PM under Releases

July 20, 2020

WPTavern: WordPress 5.5 to Remove Hulu from List of Supported oEmbed Providers

WordPress 5.5 will be dropping Hulu oEmbed support after Hulu silently disabled its oEmbed API. This is the API that allows users to copy and paste a link into the editor and have it automatically embed the content, as opposed to copying a chunk of embed code. Documentation contributors discovered that it wasn’t working while attempting to document the Hulu Embed block.

Birgit Pauli-Haack confirmed with Hulu that embedding is not currently an option. Hulu support did not elaborate on why it was removed.

The block currently displays an error when attempting to embed a Hulu link, stating “Sorry, this content could not be embedded.” As a result, WordPress contributors have removed both the block from the editor and the provider from core.

WordPress has included Hulu oEmbed support for the past 11 years, since it was first added in WordPress 2.9 (December 2009). Services are logged on WordPress.org as they are added or removed. Hulu was removed as soon as it was discovered that oEmbed support no longer worked, similar to other previously unsupported providers – most recently FunnyOrDie and Photobucket. This is a major loss of convenience for users who are trying to embed Hulu links but it lies outside of WordPress’ control.

by Sarah Gooding at July 20, 2020 10:48 PM under oembed

WPTavern: Theme Authors Can Pass Data to Template Files in WordPress 5.5

Theme developers can finally rejoice. For the first time, it is now possible to pass data to templates via the various core template-loading functions. Enrico Sorcinelli announced the change on the Make Core blog this past Friday.

The feature was originally proposed by Scott Kingsley Clark in 2012. Over the years, the ticket has received a dozen patches. It has survived a closure and arguments over why the feature should not go into core. Sorcinelli was a primary driver that kept the ticket alive for the last few years.

WordPress developers have been cleaning up some old-but-useful feature requests for the 5.5 release cycle. A couple of weeks ago, an 11-year-old ticket to allow users to update themes and plugins via a ZIP file made the cut. Core developers even closed a 9-year-old ticket related to an Internet Explorer 6 hackprogress. However, for theme authors, one of the most important additions is control over passing data from one template to another.

Typically, in PHP, variables can be passed from file to file because they remain in the same scope. However, that is not the case if the inclusion of the file is taken out of that scope by including the file from inside of a function. The scope is then limited to the function. That is how the template system works in WordPress. This is not necessarily a bad thing. However, it has meant that theme developers have had no built-in method of passing data from one template to the next.

Imagine creating a variable in one template but needing to access that same variable in a sub-template. There is no shortage of methods to accomplish this, but many are inelegant.

“For years, theme developers wishing to pass data to template files have had to use less than ideal workarounds,” wrote Sorcinelli in the announcement. The worst solutions typically involved creating a global variable. Others created custom template-loading functions on top of WordPress’s existing system. The problem with all methods, regardless of which was ideal, was that no standard existed. Each theme would need to build its own solution, and plugins that touched the front end would often have a competing solution.

All of the WordPress template-loading functions now support an additional parameter of $args, which allows theme authors to pass along an associative array of data to the loaded template. The functions that support this new parameter are:

  • get_header()
  • get_footer()
  • get_sidebar()
  • get_template_part()
  • locate_template()
  • load_template()

Any hooks associated with the functions also pass along the data.

The get_search_form() function has supported a similar parameter since WordPress 5.2. In practice, it should work mostly the same, but the function has a couple of default values it sets.

An additional benefit of having a standard method of passing data to templates is that the feature can be built upon in the future. For example, WordPress could eventually offer a hook for filtering the data, which could come in handy with child themes.

The WordPress template system still lacks the robustness of more modern frameworks, but this simple change will allow for a variety of applications.

One question remains: is the arrival of this feature too late? With WordPress on track to revamp the entire theme system to integrate with the upcoming full-site editing feature, will this feature be useful for only the next few months?

Even if most theme developers don’t immediately jump on board the block-based themes bandwagon for another year, the feature could come in handy until they do. Perhaps it will also have some usefulness beyond the current theming paradigm.

Developers still do not have a clear picture of what theming with blocks will look like in the next few years. There may be situations where passing dynamic data is still necessary in the next system. Even if not, it will likely be a long while before there is mass adoption of block-based themes from the existing theme development community. In the meantime, many will be able to drop in-house solutions and use standard functions.

by Justin Tadlock at July 20, 2020 07:44 PM under News

July 19, 2020

Matt: Corner Office Interview

If you pick up a print edition of the Sunday New York Times today you’ll see the Corner Office interview with David Gelles in the business section.

(Hat tip to Mary Conrad for the picture, I haven’t seen it in person yet.)

A quote that seems to be resonating with people,

This column is called Corner Office, and most people who choose to have offices are usually the bosses. And I’ve been to the offices of billionaire C.E.O.s that have their own private bathroom, beautiful art and couches. But these are all things that you can have in your house. What I love about distributed organizations is every single employee can have a corner office.

Sometimes my corner office has been the corner of an airport floor next to a power outlet! I’ve also heard from colleagues that feel like their office feels like an unsupervised day care center since the quarantine started. The point I want to make is there’s a world of possibility that opens up when you move from the finite space of a shared office, and all the politics of dividing up the scarce resource of desirable space, to the infinite game where people can define their own “office” as the place where they will be most productive, and do so however they like with no penalties or restraints.

If you had the best space in the legacy office, you probably liked it and may even have had motivated reasoning around ineffable things that happened in the office like “culture” that would be impossible without it, but the average experience of an entry-level worker was not as positive. Now there can be a much more even playing field. At Automattic we have a home office allowance people can use to buy equipment they need to make their home work area comfortable and productive, and it’s the same if you’re leading a team of hundreds or if it’s your first job.

If you’d like to hear the entire conversation they’ve posted the original audio and interview that was distilled into the print version.

by Matt at July 19, 2020 09:13 PM under Future of Work

July 17, 2020

WPTavern: All in One SEO Pack Plugin Patches XSS Vulnerability

All in One SEO Pack patched an XSS vulnerability this week that was discovered by the security researchers at Wordfence on July 10. The popular plugin has more than 2 million active installs, according to WordPress.org.

Wordfence researchers categorized it as “a medium severity security issue” that could result in “a complete site takeover and other severe consequences:”

This flaw allowed authenticated users with contributor level access or above the ability to inject malicious scripts that would be executed if a victim accessed the wp-admin panel’s ‘all posts’ page.

Version 3.6.2, released on July 15, 2020, includes the following update in the changelog: “Improved the output of SEO meta fields + added additional sanitization for security hardening.”

All in One SEO Pack users are strongly recommended to update to the latest version. At the time of publishing, just 12% of the plugin’s user base is running versions 3.6.x, which includes the three most recent versions. This leaves more than 1.7 million installations (88% of the plugin’s users) vulnerable.

Many users don’t log into their WordPress sites often enough to learn about security updates in a timely fashion. Plugin authors often don’t advertise the importance of the update on their websites or social media. This is the type of situation that WordPress 5.5 should help to mitigate, as it introduces admin controls in the dashboard that allow users to enable automatic updates for themes and plugins.

by Sarah Gooding at July 17, 2020 09:48 PM under security

WPTavern: WPCampus Online 2020 Conference Features Accessibility and Higher Education Topics, July 29-30

WPCampus, a community focused on WordPress and higher education, will host its 5th annual in-person conference as a free, online event this year. The two-day event will feature sessions, lightning talks, sponsor demonstrations, and trivia, July 29-30, 2020.

Although the WPCampus community is no stranger to hosting online events (they usually host a virtual conference in January), current events have forced educational institutions to rely more heavily on those who maintain their digital infrastructure. Many WPCampus members fall into this category and are operating under a great deal more stress as compared to previous years. The community has more than 1,116 members representing 688 institutions.

“In higher ed, ‘wearer of many hats’ is a common saying,” WPCampus director Rachel Cherry said. “Per usual, most who work in our space are already going above and beyond to cover numerous job roles. For example, I was always a team of one: I designed the site, programmed the site, performed QA, and managed content editors. With the pandemic forcing many universities to increase their online presence, higher ed web professionals are busier than ever, working to help with the transition while bearing the stress of lowered budgets, working from home, and whether or not their physical campus will open for the fall semester.”

As many institutions are moving to make their courses available online, Cherry said ensuring that vital resources are accessible has become even more critical.

“The pandemic forced a vast majority of our society’s processes and interactions to go online, and it’s shining a spotlight on how inaccessible a lot of our systems are,” she said. “For example, online event platforms became a necessity for conferences. But the vast majority of these platforms are inaccessible. Crowdcast, for instance, is nearly impossible to use if you can’t use a mouse. Using inaccessible online platforms for your event is no different from denying attendee access at the door because the building doesn’t have a wheelchair ramp.”

WPCampus Online 2020 will include a selection of sessions from accessibility experts on topics such as justifying the budget for accessibility initiatives, accessibility for non-developers, Gutenberg accessibility, end-to-end accessibility testing, and mobile site and native app accessibility testing guidelines. If you are looking to deepen your knowledge of accessibility, this conference features more sessions on this topic than most WordCamps.

The event’s schedule also includes other topics of interest to those in higher education with sessions on managing multiple WordPress sites, building a self-publishing platform, extending the WP REST API, automation tools, data visualization for WordPress, and improving website performance.

In lieu of giving away swag for the event, WPCampus is coordinating a fundraising effort for the Black Lives Matter movement and those struggling with COVID-19. The organization will match donations to the following organizations:

  • Black Lives Matter
  • The American Civil Liberties Union (ACLU)
  • NAACP Legal Defense Fund
  • Black Girls Code
  • Feeding America

Cherry reports that more than 350 people have registered so far and she anticipates 500-600 attendees online this year. WPCampus will stream the session videos on YouTube and they will be recorded and available after the event. Registration is free, thanks the the event’s sponsors, which include many WordPress agencies, hosts, and contributing individuals.

Despite the disappointment at not being able to meet in-person in New Orleans this year, Cherry said she is grateful for the “more in-depth than usual” time the community will have to spend together during the virtual conference. WPCampus members have found camaraderie and encouragement in their community by sharing stories and asking each other for help during this profoundly challenging time.

“We’ve become a family,” Cherry said. “And not just with higher ed and other web professionals, but with the vendors that support us and want to invest in our growth. Because of our events and community, we were able to sponsor the Gutenberg accessibility audit and play a huge role in improving the accessibility of the WordPress platform. I am incredibly proud of the ever-increasing focus, education, and advocacy our community has placed on accessibility.”

by Sarah Gooding at July 17, 2020 08:44 PM under wpcampus

WPTavern: Should WordPress Themes Add a Top-Level Admin Menu Item?

WordPress has almost always provided a top-level admin menu item for themes. It is clearly labeled “Appearance.” It is the single location that all WordPress users know to visit to modify any appearance-related things for their WordPress site. However, there is a movement within the Themes Team to allow themes to place an additional top-level menu link in the admin. The big question: should this idea move forward?

When the Themes Team (originally called the Theme Review Team) was formed, its members created a set of guidelines that would be shaped and reshaped over the years. They were a set of living guidelines that could always be changed with the times.

One of the oldest guidelines required that themes must place any custom admin pages under the Appearance menu item. It made sense. WordPress provided a standard location for any theme-related pages. The custom header and background features lived under Appearance. Widgets, also defined by the current theme, were housed as a sub-page. Eventually, WordPress’s custom nav menu system came along and was — you guessed it — situated under Appearance. The core developers even put the customizer link in the same place.

For over a decade, there was a well-defined standard. Sure, commercial themes outside of the official directory would sometimes break the mold. However, themes from the directory followed the pattern.

Now, the Themes Team is proposing that themes should be able to break from tradition.

The discussion arose after a question of whether themes should be able to add a custom panel to the block editor sidebar, which is not allowed.

“To keep the editor free from clutter, advertising and upsell, with the customizer being used less, and no dashboard widgets being allowed, can we give theme authors a better place to include their information, and limit upsell to that area?” wrote Carolina Nymark in last week’s team meeting notes.

The proposal seems to settle on the idea that themes will lose visibility as WordPress moves toward full-site editing and the customizer becomes less important. The customizer is not an ideal place for anything but theme options, but that notion seems to have been overlooked in the discussion. Nevertheless, the original guideline that disallowed themes from creating top-level menu items preceded the advent of the customizer by several years. Advertising, documentation, plugin recommendations, and similar pages were always allowed under the existing Appearance menu. The usefulness of the customizer was never a necessary part of that conversation.

Ultimately, the question should be about what is best for users. There is no data to support making the change or sticking with the status quo. However, we do have a standard that has existed for years.

The Proposed Guidelines

The proposal would create several new guidelines for theme authors to follow and reviewers to check, assuming the theme created a top-level admin menu item:

  • No admin menu priority may be used.
  • No UI or color changes are allowed for the menu item.
  • The title must be kept short and not include spam.
  • No more than three sub-pages.
  • Child themes are limited to one sub-page or can remove the parent’s pages and add its own.

Some of these make sense and follow along with existing guidelines, such as not spamming or changing the admin UI. However, others could be problematic.

If moving forward with the proposal, setting a menu item priority should be required rather than not allowed. If anything, it would make sense to require a specific priority to place the custom menu item immediately after the existing Appearance item. This would at least group them together by default. If changing the place where users are accustomed to seeing theme-related pages, it is probably best not to break too far from the standard location.

No more than three sub-pages? Surely there will be a theme with a top-level admin menu item that needs four sub-pages at some point. If giving theme authors the freedom to take up valuable real estate in the admin, a limit of three sub-pages seems like a rule to fix the mistake of allowing the top-level item in the first place. It is an arbitrary number at best. There would be no reason to cap it once making the guideline change. It also adds one more item that the team will need to police.

The limitation of sub-pages for child themes seems just as arbitrary. No such limitation exists when placing sub-pages under the standard Appearance screen.

The entire proposal is little more than extra work on a team that is already strained for resources.

Instead of the simple rule that has existed for years, the proposal adds a new rule with several sub-rules. If the team desires the extra work, I suppose this point doesn’t matter.

The Elephant in the Room

There is one aspect of this discussion that everyone knows about but few are willing to broach. Underneath all the guidelines from the Themes Team and whether most theme authors support a particular decision is how this affects the financial bottom line. When we talk about visibility of a theme’s admin pages, we are primarily talking about providing another avenue for commercial upsells.

Some of this discussion on visibility is shrouded in concepts such as surfacing end-user documentation or adding a visible readme for the user’s benefit. These are legitimate concerns, especially when theme developers have watched tickets to address such downfalls seemingly dwindle into obscurity over the years. Whether a top-level admin menu item makes sense for exposing theme documentation might be worth discussing, but there is no world in which this would be the primary use case.

The topic of visibility rests on the idea of upselling the pro version of the theme, add-ons, or other services.

Far too many plugins already go overboard, creating a billboard of the WordPress admin. One of the things users could almost be assured of is that themes from the official directory were constrained enough that they were not the hot mess that plugins have become as of late. However, that could all change.

Do we really want an extra top-level admin menu item that will be, for all intents and purposes, to advertise?

Maybe it doesn’t matter in the end. Users are so accustomed to the clutter produced by the dozens of plugins on their sites. One more may not matter at this point.

Or, should we be having a different conversation altogether? If this ultimately boils down to advertising, are there ways we can open this up for theme authors while still creating a user experience that keeps the WordPress admin free of clutter?

by Justin Tadlock at July 17, 2020 08:03 PM under Themes

July 16, 2020

WPTavern: Astra Becomes the Only Non-Default WordPress Theme With 1 Million Installs

On Tuesday, Brainstorm Force announced its Astra theme passed 1 million active installations. It is the only non-default theme in the official WordPress theme directory to reach such a height.

Popularity breeds popularity. Once the theme broke 50,000 installs in January 2019, it was a quick hop and skip to 500,000 in October and 1 million less than a year later. With the winds of momentum at its back, the theme may become an unstoppable force. It is anyone’s guess when growth will begin to plateau.

“We recognize that this is not an ordinary feat,” wrote Sujay Pawar in the announcement post. He said the team has no plans of resting at this point. “1 million is just a milestone in our journey.”

Many WordPress plugins have long ago passed the million-install milestone. Several have multi-millions. However, this is a much tougher feat for themes. One of the limiting factors is that users can only activate one of them at a time. There is no limit when it comes to plugins, and users often have dozens running at once. One million active installs is a level of popularity that is almost unheard of in the theming world.

“There is a huge gap between Astra and all others,” said William Patton, a WordPress Themes Team representative. “Hitting 1 million is pretty astounding honestly.”

This is not simply a major milestone for the Astra theme. It is huge for WordPress. For a third-party theme creator to reach a number that only the default themes can boast is the sort of thing we should all rejoice in a bit. It is a testament to how much WordPress has grown over the years.

Aside from the default themes that ship with WordPress, there are currently five themes with more than 100,000 active installs:

Once that first theme passes the 1 million mark, it is only a matter of time before others start breaking the barrier. OceanWP has the shortest striking distance and could be next. However, Hello Elementor is moving fast and earned its install count in a year and a half.

Regardless of the next theme to hit the milestone, this is one of those moments we should look back on in a few years to see how far we have come. Perhaps 1 million active installs will merely be a stepping stone to even greater heights for large numbers of themes.

What Makes Astra Special?

The default Astra theme is not anything particularly revolutionary on the surface. Out of the box, users are given a nearly blank canvas. It seems little more than your run-of-the-mill WordPress theme that would not garner much attention. However, it has one of the easiest setup processes that I have ever experienced with any theme. At the click of a button, end-users can pick from a plethora of starter templates.

There are hundreds of starter templates for Elementor and Beaver Builder. The Brizy page builder gets a little love too. There is even a modest 20 starter templates for Gutenberg. The theme’s block editor styling leaves a lot to be desired, but I would wager that Brainstorm Force is serving a primary audience of Elementor users. The team probably won’t have a huge incentive to change that anytime soon. And, there is really no need to. Elementor passed 5 million active installs in May and is showing no signs of slowing down. Smart theme development businesses are making sure they support the plugin. Elementor support is where the money is right now.

Astra’s starter templates are not merely templates. The theme will install and activate plugins needed too.

Many of the templates are free, but some are available for purchase. The theme allows users to filter the search between free and “agency” templates, so there is no trickery going on as is often the case with similar themes from the directory. They clearly label any upsells in the admin. At a time when the WordPress Themes Team struggles with theme authors circumventing advertising guidelines, Astra seems to be hitting a sweet spot that is both user-friendly and within the directory rules.

While good marketing and business plans go a long way toward getting installation numbers up, you cannot keep those numbers without building a product that users will continue using. Its simple import process makes it an easy go-to choice for anyone who doesn’t relish the idea of spending hours trying to make their site look like the demo.

The theme’s users can probably best answer the question of Astra’s popularity. Brainstorm Force is clearly doing something right.

by Justin Tadlock at July 16, 2020 07:38 PM under astra

July 15, 2020

WPTavern: Blocksy Theme Adds New Charity Starter Site, Pro Version to Launch in 2020

Blocksy is one of the best free themes available for the block editor right now and is rapidly growing in popularity. CreativeThemes, the Romania-based company behind the theme, released an update to Blocksy this week, along with a new starter site for charities.

The concept of “starter sites” is an interesting new twist on “starter templates,” which essentially allow users to import the content from a demo. Theme makers for products like Blocksy, Astra, and Go use this approach to help users implement different types of websites by importing the content from a pre-built demo site. The demos use the same base theme but vary widely in how they are customized.

Blocksy’s starter sites are a one-click XML demo import that automatically brings in the pages, images, and theme options. This puts all the blocks in the right place so the user needs only to customize the demo, instead of trying to find the right settings to match the demo.

The new Charity starter site is built with the Stackable plugin’s page builder blocks. It joins four other free starter sites designed specifically for blogs, apps, travel, and e-commerce. The design can be imported under the Blocksy menu in the WordPress admin.

According to the theme’s beautifully designed and user friendly changelog, Blocksy can now automatically detect Custom Post Types and add their appropriate options. The update also adds a sizing option for related posts thumbnails, a new Twitch social icon, and improves compatibility with WooCommerce product display and miscellaneous extensions.

Blocksy Pro Version Coming Soon

When we first reviewed the theme in January 2020, it had 1,000 active installs and 58 five-star reviews. Over the past six months, the theme’s user base has grown to more than 4,000 active installs and a perfect five-star rating on WordPress.org from 191 reviewers. It is currently maintained by a team of two – Sergiu Radu and Andrei Glingeanu.

Blocksy’s creators have been working on custom projects and random jobs to support the time they spend developing the theme but they plan to launch a pro version as early as this summer.

“We plan to add more features in the premium version, more demos, and also offer better and faster support,” Radu said. “I hope after we release the premium version we will be able to take on a few more people in our team to help us, at least with support so we can concentrate better on development.”

Radu said the pro version will include some premium starter sites as well as additional functionality for the base theme. They are aiming to include the following features in the first release:

  • Multiple conditional headers
  • Multiple conditional footers
  • Multiple conditional sidebars
  • More header elements
  • More footer elements
  • White labeling
  • Custom fonts extension
  • Adobe Typekit extension
  • Hooks (conditional)
  • Sticky header

In a second round of updates for the pro version, Blocksy creators plan to include features like custom color palettes, AMP, LearnDash, and EDD integrations, along with extensions for ads, mega menus, and portfolios. In the meantime, Radu says they do not plan to add more features to the free version – only improvements and new starter sites.

by Sarah Gooding at July 15, 2020 10:32 PM under Themes

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:

August 03, 2020 12:30 PM
All times are UTC.