Introducing 5.8 “Tatum”, our latest and greatest release now available for download or update in your dashboard. Named in honor of Art Tatum, the legendary Jazz pianist. His formidable technique and willingness to push boundaries inspired musicians and changed what people thought could be done.
So fire up your music service of choice and enjoy Tatum’s famous recordings of ‘Tea for Two’, ‘Tiger Rag’, ‘Begin the Beguine’, and ‘Night and Day’ as you read about what the latest WordPress version brings to you.
Three Essential Powerhouses
Manage Widgets with Blocks
After months of hard work, the power of blocks has come to both the Block Widgets Editor and the Customizer. Now you can add blocks both in widget areas across your site and with live preview through the Customizer. This opens up new possibilities to create content: from no-code mini layouts to the vast library of core and third-party blocks. For our developers, you can find more details in the Widgets dev note.
Display Posts with New Blocks and Patterns
The Query Loop Block makes it possible to display posts based on specified parameters; like a PHP loop without the code. Easily display posts from a specific category, to do things like create a portfolio or a page full of your favorite recipes. Think of it as a more complex and powerful Latest Posts Block! Plus, pattern suggestions make it easier than ever to create a list of posts with the design you want.
Edit the Templates Around Posts
You can use the familiar block editor to edit templates that hold your content—simply activate a block theme or a theme that has opted in for this feature. Switch from editing your posts to editing your pages and back again, all while using a familiar block editor. There are more than 20 new blocks available within compatible themes. Read more about this feature and how to experiment with it in the release notes.
Three Workflow Helpers
Overview of the Page Structure
Sometimes you need a simple landing page, but sometimes you need something a little more robust. As blocks increase, patterns emerge, and content creation gets easier, new solutions are needed to make complex content easy to navigate. List View is the best way to jump between layers of content and nested blocks. Since the List View gives you an overview of all the blocks in your content, you can now navigate quickly to the precise block you need. Ready to focus completely on your content? Toggle it on or off to suit your workflow.
Suggested Patterns for Blocks
Starting in this release the Pattern Transformations tool will suggest block patterns based on the block you are using. Right now, you can give it a try in the Query Block and Social Icon Block. As more patterns are added, you will be able to get inspiration for how to style your site without ever leaving the editor!
Style and Colorize Images
Colorize your image and cover blocks with duotone filters! Duotone can add a pop of color to your designs and style your images (or videos in the cover block) to integrate well with your themes. You can think of the duotone effect as a black and white filter, but instead of the shadows being black and the highlights being white, you pick your own colors for the shadows and highlights. There’s more to learn about how it works in the documentation.
For Developers to Explore
Theme.json
Introducing the Global Styles and Global Settings APIs: control the editor settings, available customization tools, and style blocks using a theme.json file in the active theme. This configuration file enables or disables features and sets default styles for both a website and blocks. If you build themes, you can experiment with this early iteration of a useful new feature. For more about what is currently available and how it works, check out this dev note.
Dropping support for IE11
Support for Internet Explorer 11 has been dropped as of this release. This means you may have issues managing your site that will not be fixed in the future. If you are currently using IE11, it is strongly recommended that you switch to a more modern browser.
Adding support for WebP
WebP is a modern image format that provides improved lossless and lossy compression for images on the web. WebP images are around 30% smaller on average than their JPEG or PNG equivalents, resulting in sites that are faster and use less bandwidth.
Adding Additional Block Supports
Expanding on previously implemented block supports in WordPress 5.6 and 5.7, WordPress 5.8 introduces several new block support flags and new options to customize your registered blocks. More information is available in the block supports dev note.
Check the Field Guide for more!
Check out the latest version of the WordPress Field Guide. It highlights developer notes for each change you may want to be aware of: WordPress 5.8 Field Guide.
The Squad
The WordPress 5.8 release was lead by Matt Mullenweg, and supported by this highly enthusiastic release squad:
In addition to these contributors, many thanks to all of the community volunteers who contribute in the support forums. They answer questions from people across the world, whether they are using WordPress for the first time, or they’ve been around since the first release all the way back in 2003. These releases are as successful as they are because of their efforts!
Finally, thanks to all the community translators who help make WordPress available in over 200 languages for every release. 80 languages have translated 80% or more WordPress 5.8 and our community translators are hard at work ensuring more languages are on their way. If contributing to WordPress appeals to you, it’s easy to learn more. Check out Make WordPress or the core development blog.
Added alpine 3.13 and 3.14 into building test (#4309) (@limingxinleo)
xlswriter 1.4.0
- Fix disable reader build failed.
- Fix insertDate use curtom format segmentation fault.
- Feat custom free resource.
- Feat writer validation.
- Feat writer data validation can be applied to a single cell or a range of cells.
- Feat reader add file path in open file exception message.
- Feat exit worksheet.
- Feat set paper.
- Feat set margins.
- Build read module is enabled by default.
- Perfect exception message.
- Compatible PHP 8.1 API.
- Destructive rename method setPrintedLandscape to setLandscape
- Destructive rename method setPrintedPortrait to setPortrait
runkit7 4.0.0a3
- Fix edge case copying internal functions in runkit7_function_redefine
- Avoid conflicts with other extensions that use reserved memory slots for internal function definitions.
- Fix compilation and test errors in php 8.1
- Allow using objects in global constants and class constants in php 8.1+ (https://wiki.php.net/rfc/new_in_initializers)
- Make runkit_constant_redefine fail if the constant does not already exist
- Make runkit_constant_remove/redefine fail on enum cases (support for modifying enum cases is not implemented)
mongodb 1.10.0
** Bug
* [PHPC-1420] - Using replicaSet triggers __fortify_fail() from /lib64/libc.so.6
* [PHPC-1529] - Reset libmongocrypt's key vault client after forking
* [PHPC-1720] - Move mongoc_client_set_error_api after check for null client pointer
* [PHPC-1721] - Fix argument order for some ecalloc function calls
* [PHPC-1722] - Persistent clients and their HashTable should be destroyed in GSHUTDOWN
* [PHPC-1870] - Fix zSeries build failure due to redefinition of WORDS_BIGENDIAN
* [PHPC-1879] - Session::getTransactionOptions() leaks mongoc_transaction_opt_t
** Epic
* [PHPC-1666] - Allow per-client event subscribers
* [PHPC-1731] - Versioned MongoDB API for Drivers
* [PHPC-1756] - Remove all oppressive and unnecessarily gendered language from driver projects
** New Feature
* [PHPC-1645] - Allow disabling of libmongoc client persistence
* [PHPC-1684] - Support Azure and GCP keystores in FLE
* [PHPC-1716] - Allow configuring ServerApi in Manager class
* [PHPC-1804] - Implement Manager::addSubscriber and removeSubscriber
** Task
* [PHPC-1513] - Remove php_phongo_cursor_to_zval
* [PHPC-1685] - Drop support for PHP 7.0
* [PHPC-1782] - Support Removal of Several Platform Builds
* [PHPC-1792] - Update copyright years in file headers
* [PHPC-1835] - Rotate credentials and environment vars for Atlas connectivity tests
* [PHPC-1841] - Remove oppressive language from the documentation
* [PHPC-1842] - Remove oppressive language from the source code
* [PHPC-1848] - Test against 5.0 servers
* [PHPC-1864] - Cut 5.0 Compat. GA Release
* [PHPC-1866] - Specify 5.0 cursor behaviour
* [PHPC-1872] - Fix server-executeQuery-008.phpt for RS config with arbiter
* [PHPC-1877] - MongoDB 5.0.0-rc2 cannot be downloaded on rhel71-power8
** Improvement
* [PHPC-1366] - Declare libbson vtable in MINIT instead of using a global
* [PHPC-1367] - Move libmongoc init/cleanup within scope of custom libbson vtable
* [PHPC-1474] - Expose transaction information in debug info for session
* [PHPC-1490] - Add support for var_export() and __set_state() in CursorId.c
* [PHPC-1681] - Support parsing $uuid as extended JSON representation for subtype 4 binary
* [PHPC-1737] - Use zend_hash_graceful_reverse_destroy to free persistent client HashTable
* [PHPC-1753] - Define error handling behavior of writeErrors and writeConcernError on Mongos
* [PHPC-1754] - Drivers should not inspect error messages for "not master" or "node is recovering"
* [PHPC-1762] - Expose the Reason an Operation Fails Document Validation
* [PHPC-1765] - Mitigate pain of using field names with dots and dollars
* [PHPC-1791] - Specify correct return type in __set_state protos
* [PHPC-1798] - Update serverSelectionTimeoutMS of MongoClient to mongocryptd
* [PHPC-1803] - Use "hello" command when API Version is declared
* [PHPC-1813] - Unpin session after aborting a transaction
* [PHPC-1821] - Driver Handling of DBRefs
* [PHPC-1836] - Remove slaveOK connection string option from URI parsing
* [PHPC-1840] - Use "hello" command for monitoring if supported
* [PHPC-1855] - Bump maxWireVersion for MongoDB 5.0
datadog_trace 0.61.0
### Added
- Add DDTraceget_current_context #1227
- Create property ZAI seam for PHP 8 #1246
- Create exceptions ZAI seam for PHP 8 #1248
- Run mongodb-driver testsuite in CI with and without the tracer #1255
### Changed
- Move mapping-settings to be deserialized as a zend_array * #1253
### Fixed
- Remove TSRMLS_C from DDTracecurrent_context #1249
Today, we have put together a collection of high-quality free floral vector packs for you. No matter what the medium of creation be, floral designs have always enjoyed a special position in the world of art.
Right from the days of cave paintings, passing through to Oriental calligraphy impressions and all the way down to the present day, everyone has loved floral designs and backgrounds.
WordPress is known for its incredible versatility. The content management system (CMS) provides developers with many ways to customize both the front and back ends.
This opens a whole world of possibilities when it comes to form and function. The ability to create fully-custom themes and plugins offers a path to building virtually any type of website. But it doesn’t end there.
Features like custom post types and taxonomies, along with custom fields allow for highly-specialized content. It can be organized in a way that fits your needs like a glove.
In addition, there are an endless array of smaller customizations. Code snippets targeting hooks and filters let you tweak existing functionality even further. And we’re only scratching the surface of what’s possible.
However, with all of this power comes some responsibility. Customizing WordPress requires some planning. And there are several important factors to consider. So, before you fire up that code editor, here are some things you should know about the process.
A Staging Site is a Must-Have Feature for Testing
Creating some custom functionality for your WordPress website? Avoid building it directly on your production site if at all possible. There are simply too many things that can go wrong.
One false move can lead to usability/performance problems or even downtime. Perhaps it’s not as big of a deal on a small site with few visitors. But a busy eCommerce or membership website? That could cost you both sales and customer loyalty.
This underscores the importance of having a staging site. It provides a playground of sorts where customizations can be tested before being made public. The idea is to hopefully catch and repair any issues before they impact users.
What’s more, there are a number of ways to set up a staging environment. Some web hosts offer them as part of their services. But you can also create your own either online or on your local machine.
Testing this way is very much worth the extra effort.
The Method for Implementing Customizations Matters
Part of the beauty of WordPress is that you can implement custom code in a number of ways. But it also has the potential to become problematic.
For example, a custom code snippet can easily be placed into your theme’s functions.php file. That is fine for the short term. But what happens when you change themes down the road?
Launching a redesign with a new theme will result in a loss of those customizations. And while moving any snippets to the new theme is possible, they could well get lost in the shuffle. Depending on the nature of the custom code, some key functionality may end up missing. In this type of situation, creating a custom plugin would be the more future-friendly solution.
When it comes to making changes to a third-party theme, there are similar considerations. Adding or editing code directly within the theme means potentially overwriting changes during an update. The best way around that issue is by utilizing a child theme.
The universal point is that, regardless of what you’re trying to achieve, it’s important to implement customizations in a way that will stand the test of time. Keeping things well-organized is also recommended so that you won’t have to search around in several different places to find what you need.
There Will Be Future Maintenance Requirements
Neither WordPress nor its ecosystem of themes and plugins remain static. They evolve with the times. That means the code we write today will likely need to be maintained on a regular basis.
This follows the evolution of WordPress itself, but also of the variety of languages and libraries it depends on. PHP, JavaScript libraries such as jQuery and React, and CSS are prime examples. A change to these dependencies can impact performance and whether or not a particular feature still works.
Not only that, but plugins and themes also have their own agendas to implement. New features are added at a breakneck speed in this competitive environment. The ever-shifting Gutenberg block editor is also a moving target. This can lead to more compatibility issues as new versions continually roll out.
Therefore, you’ll want to pay close attention to what’s happening in these areas. Changes to WordPress core, themes, plugins, or dependencies could directly impact your existing customizations.
Customizing WordPress Is Serious Business
The mere act of customizing WordPress is one thing. But going about it the right way is another. It’s not something to dive into without some serious thought.
It’s important to consider what you want to accomplish, how it will be implemented, and how to keep it running smoothly into the future. The answers often come down to planning ahead and following best practices.
If you’re extending the functionality of WordPress itself or a plugin, read up on the documentation. There are likely some established methods built-in for getting the results you need.
The other side of the coin involves staying within coding standards. For example, eschewing any deprecated PHP or JavaScript and opting for the latest stable techniques. This will keep your code compliant and hopefully easier to maintain over time.
Keeping these things in mind will lead to more complete and sustainable results. That’s something that will benefit every WordPress developer.
In March, news broke that two malicious commits were introduced onto the in-development PHP 8.1 branch by perpetrators pretending to be Rasmus Lerdorf and Nikita Popov. The response by the PHP community to this attack was a shining example of the openness and transparency of the open-source world.
We’re going to take a closer look at the PHP 8.1 story to uncover what lessons there are to be learned on the value of visibility in coding.
In this episode, Josepha Haden Chomphosy discusses the importance of Diversity, Equity, and Inclusion to the fabric of the WordPress project and how we can move from a place of welcoming it to cherishing it.
Have a question you’d like answered? You can submit them to wpbriefing@wordpress.org, either written or as a voice recording.
Hello, everyone, and welcome to the WordPress Briefing, the podcast where you can catch quick explanations of the ideas behind the WordPress open source project, some insight into the community that supports it, and get a small list of big things coming up in the next two weeks. I’m your host, Joseph Haden Chomphosy. And before we get started, I have to be honest with you all, this episode and the next one have made me feel really anxious. This one is about Diversity, Equity, and Inclusion in open source, and especially in WordPress. And the next one is about accessibility in WordPress. And I feel like there’s just so much to do, and we don’t do enough, but we do what we can. And still, we will never be done with that work. And if you don’t know what I mean by Diversity, Equity, and Inclusion, you can kind of think of it this way. Diversity is bringing in people with different viewpoints and lived experiences. Equity is making sure everyone has what they need to get a fair chance of success, which is different from equality. And Inclusion is making sure that the environment is built to not only tolerate diverse groups but to celebrate them as well. So remember this as you listen to what I have to say here. We are never where we want to be in either of those spaces. But that shouldn’t stop us from looking at the things we have done to get us in the right direction. All right. Here we go.
Josepha Haden Chomphosy 01:54
I say a lot that we are a project that serves a majority collection of minority voices. WordPress is global in reach and open source in nature. And you would assume that what allows the software to be used by anyone would also enable it to be built by anyone. After all, your location doesn’t matter, and who employs you also doesn’t matter. And your relative social standing certainly shouldn’t matter. As long as you can communicate with the others contributing to the project, there should be no obstacle to your participation. The mission of the WordPress project is to democratize publishing, right? It’s to get the ability to have a website tap into passive income on your web presence. I mean, the job is to level the playing field for everyone. However, it’s my experience that bringing in new voices takes a lot of proactive work on behalf of leaders and contributors. It’s not enough to say, “Hey, I’m having a party,” you also have to say, “I’m having a party, and I’d like you to be there.” It’s not enough to think people will make their own space at this table. You have to make sure that you have table settings for everyone. And even beyond the basics of directing people to you.
Josepha Haden Chomphosy 03:12
And on toward the next steps, you have to be honest about the fact that open source contribution requires a fair amount of privilege. By privilege, I mean the luxury of extra time or extra funding or just an understanding employer. WordPress supports 41% of the web. I think it’s 42% of the web right now. But less than 1% of people who use WordPress show up to help maintain it. And that 1% that does show up skews toward people who already have a pretty high level of representation and technology. And so, when you look at who is building it versus who is using it, it doesn’t always match. And since what we build so frequently reflects who we are, sometimes what we build doesn’t match the needs of the people who are using what we have.
Josepha Haden Chomphosy 04:10
So what has WordPress done to be proactive on the question of Diversity, Equity, and Inclusion? There are quite a few unseen things that have gone into this over the years and a few pretty visible things. This is a very long list. And it has a whole lot of just reference material. And so the show notes today will come in handy for people, and there will be just a laundry list of linked resources for everyone.
Josepha Haden Chomphosy 04:39
But the first thing that WordPress has done is that we have accepted the burden of proof. I’m going to share a post about this in the show notes. That means we accept that it’s not the job of underrepresented folks to figure out if they are welcome. It’s up to us to make it clear that they are. So, there are three big little things that the community has done over the years. One is that many teams open their text-based meetings with an explanation of what is done in the meeting, who comes to the meetings, where to find help if you’re lost in the meeting, and for teams that have a specific type of requests that comes into those channels that aren’t handled in those channels. They also will share where people can go to get those requests taken care of. Many teams have also updated their team handbooks to have good beginner docs, limited use of inside jokes or jargon, and good first bugs. And also, there is a code of conduct in the community declaring that everyone is welcome and clarifies what to do if you see folks being unwelcoming.
Josepha Haden Chomphosy 05:51
A second big thing that folks in the WordPress community have done is written down what was unwritten. Having things clearly documented unlocks institutional knowledge that you’d otherwise have to know someone to get. Clarity and process and the structure help anyone engage with your organization, not just the people who have extra time to figure things out. What that looks like in the WordPress project is that many teams have documented their workflows and their working spaces and just their general team norms. Many teams have also started defining what it means to be a team rep and holding open processes to choose those team reps. Many other community leaders and I have written down countless unspoken rules, guidelines, and philosophical underpinnings so that people don’t have to guess what we’re doing or why we’re doing things, or where we want to do them.
Josepha Haden Chomphosy 06:46
And the more visible thing that the WordPress project has been doing is that we found ways to invite people in, and they’re not failsafe; they’re not foolproof, but it is certainly a step in the right direction. The first one is an ongoing, diverse speaker training initiative. And I’ll include a link to that in the show notes as well. It is run by Jill Binder and a fantastic group of contributors that collaborate with her. And I really have loved watching that particular program grow and flourish and help WordPress make a difference where we absolutely can.
Josepha Haden Chomphosy 07:27
The second thing that was pretty visible about how we invited people in was at the end of 2020, and we had an all-women and nonbinary release squad for our biggest release of the year; WordPress 5.6. I had a group of probably 70 women and nonbinary identifying folx who joined in the process and joined in learning more about the process. Some of them have continued in the project. Others have stepped away for various reasons. But all of them are welcome to return. And I encourage everyone to return to contribution when time and resources make that possible for you.
Josepha Haden Chomphosy 08:09
And then the third thing that we’ve done, which I have talked about a lot, is the revival of the testing and triage practices. That has been work that’s been ongoing for a number of years. And it happens across multiple teams. It is not always immediately clear to people why the testing work. And the triage work is identifiable for me as a way to invite people into this process. And so I’ll be briefly clear about it right now. So testing as a practice brings in the users that otherwise don’t have a lot of spare time and that extra privilege to like, figure out what’s going on with WordPress, and contribute their own fixes to problems. They can give back to this project by being co-developers with us, co-creators with our entire process of making WordPress real and usable for the largest number of people that we can because we now support 42% of the web. And then, the triage practice invites in a diverse voice of people. Because you don’t necessarily always need to know everything about a project to help with triage. And when you’re helping with triage, you get active learning through participating in the process. But you also get passive learning from the people who already know huge amounts about the project and the process and everything that goes into it. And so it’s a low key low stress way to get your feet wet and start building that knowledge that sometimes is hard to come by unless you are actively working in it. So the testing practices, the triage practices, I really to the core of my being believe that those are active and ongoing ways for us to invite people who otherwise wouldn’t have a chance to get their voices heard in an open source project. And y’all, as I said at the start, y’all, there’s nothing about this list that I just shared, which makes me feel like our work on this is done. Just like any muscle, you don’t fight to peak fitness, and then hit the big stop button on time and say, “Now, I never have to work out again.” If we did, the world would be a very different place probably. But it does then lead us to the next steps for fostering a community culture that’s as broad as the people who use this software. If you believe in leadership at any level, as I do, there are a ton of things that you can do right now. But I’ll boil them down into three big chunks of things.
Josepha Haden Chomphosy 10:54
First, check your community area, or whatever community you want to apply this to, for things that need a little more proactive work. I will share a post called Building A Culture of Safety that will take you through a list of good first steps. And it is not as hard as it looks. When you say build a culture of safety, there are many really clear-cut minor changes that you can ask people to make and, in like, four or five different areas that can help your community be more welcoming and more open.
Josepha Haden Chomphosy 11:30
The second thing that you can do is know that small changes add up over time and commit to making those changes where you can. If you are elite at any level, you know that supporting people and processes is the responsibility of everyone in the group. And if you can make your own autonomous decisions and commit to making small changes that make a big difference over time, you will be part of that solution. And that is not specific to any one group that we have in our communities. You can be an ally for anyone, whether they look like you, whether they have your same experiences, or not. And sometimes, it’s as easy as just holding space for the people who haven’t had a chance to talk yet. And on the subject of holding space and the way that we communicate.
Josepha Haden Chomphosy 12:22
The third thing that I think is incredibly important is that you can take on as a foundational personal practice the concept of ethical communication. I’ll share a post about that as well in the show notes, but the core of it is that you have to know that what you say and don’t say what you do and don’t do has an impact on others and embrace that responsibility. All right, so you made it all the way through, and I am so proud of you. I’m sure you have questions about this. And I encourage you to share those. You can email them to me at wp briefing@wordpress.org.
Josepha Haden Chomphosy 13:10
This brings us to our small list of big things. I’ve got two things for you today. First and foremost, WordPress 5.8 gets released tomorrow. It’s a big release, and lots of people have been working on it. So get your update processes ready and keep an eye on wordpress.org/news for the announcement post. Second, and still pretty important, team reps have been working on their quarterly check-ins so that all other teams can get an idea of what’s happening around the WordPress office. Keep an eye out for that post on make.wordpress.org/updates. And that is your smallest of big things. Thank you for tuning in today for the WordPress Briefing. I’m your host Joseph Hayden Chomphosy, and I’ll see you again in a couple of weeks.