Looks like this is an effort to get devs together to help all the plugin and theme authors port their code to be Gutenberg-ready
What is Getting Ready for Gutenberg? Getting Ready for Gutenberg is an initiative to help the WordPress community prepare for launch of Gutenberg. While Gutenberg aims to revolutionise the publishing in WordPress ecosystem, this ecosystem is not complete without the plugins and themes that extend the capabilities of WordPress.
There are many theme and plugin shops who have in-house teams or outsourced vendors who will do the heavy lifting of converting their theme/plugin code to work with Gutenberg. But there are many shops, developers who do not have teams to help them with this task. There are many plugins that are not updated and are dormant since quite sometime but are installed and active on hundreds of WordPress sites.
Getting Ready for Gutenberg is an effort to bring the big happy family of WordPress developers and designers together to help these people to help prepare their code, themes, plugins for Gutenberg.
Who Getting Ready for Gutenberg is meant for?
Your theme/plugin is listed on official WordPress directory
The theme/plugin is more than 6 months old
You have atleast 500 active installs
Starting Thursday, Dec. 14th, 2017, you can apply to get help for your themes/plugins.
“Browserify lets you require(‘modules’) in the browser by bundling up all of your dependencies.”
I pretty much didn’t understand any word in this sentence, and struggled to make sense of how this would be helpful for me as a developer.
This is a security release adds hardening to an issue related to $wpdb->prepare() and a change in behaviour for the esc_sql() function. Update now!
WordPress 4.8.3 is now available. This is a security release for all previous versions and we strongly encourage you to update your sites immediately. WordPress versions 4.8.2 and earlier are affected by an issue where $wpdb->prepare() can create unexpected and unsafe queries leading to potential SQL injection (SQLi). WordPress core is not directly vulnerable to this issue, but we’ve added hardening to prevent plugins and themes from accidentally causing a vulnerability. Reported by Anthony Ferrara.
This release includes a change in behaviour for the esc_sql() function. Most developers will not be affected by this change, you can read more details in the developer note.
Thank you to the reporter of this issue for practicing responsible disclosure.
Download WordPress 4.8.3 or venture over to Dashboard → Updates and simply click “Update Now.” Sites that support automatic background updates are already beginning to update to WordPress 4.8.3.
Learnings from the Automattic Theme Team meetup in December where they focused on several Gutenberg-related projects. It's interesting that they approached theme development with CSS-only, which may become more common in a Gutenberg world.
At the Automattic Theme Team meetup in December, we focused on several Gutenberg-related projects. The first one we’re sharing is a set of Gutenberg-friendly themes based on Underscores. The project’s goal was to help us think about our themes differently, dig into adding theme support for Gutenberg, and as a byproduct, do some testing of Gutenberg itself.
Six team members participated in this project, and it resulted in three themes which are still in progress, and currently available on GitHub.
What is Gutenberg?
Gutenberg is the new block-based content editor currently being developed in GitHub for WordPress 5.0. Until it’s merged into core, it’s available as a plugin.
It’s really going to change the WordPress publishing experience! From the WordPress.org Gutenberg page:
The Gutenberg editor uses blocks to create all types of content, replacing a half-dozen inconsistent ways of customizing WordPress, bringing it in line with modern coding standards, and aligning with open web initiatives. These content blocks transform how users, developers, and hosts interact with WordPress to make building rich web content easier and more intuitive, democratizing publishing
This is an interesting post where Greg Schoppe tested Gutenberg with a benchmarking plugin. The results are probably not what you would have expected as the tests have shown an increase of the overall rendering time by up to 500%.
As the release of WordPress 5.0 comes closer, I was curious about performance of sites running Gutenberg (the proposed replacement for the WordPress post editor). To answer the question, I wrote a lightweight benchmarking mu-plugin, that I’ll write more about in a future post, once I’ve given it a little more polish. As a test, I generated two identical pages, one with the Gutenberg editor, and the other with the Gutenberg plugin disabled, and ran my benchmarking script on each.
The results were a huge surprise to me. I had expected that the `the_content` filter (the number that isn’t highlighted in the above screenshot) would take significantly longer to run with Gutenberg, due to all the processing done on the post. In fact, it seems to take significantly less time than the original editor does, over an average of 20 page loads. This may be because Gutenberg doesn’t run wpautop on the_content.
However, the overall rendering time for a simple text-only post increased by almost 500%, when Gutenberg was enabled. There is certainly some level of optimization that will occur when Gutenberg is merged to the WordPress core, but in general, it seems like WordPress’s
Gutenberg, Components, a new committer and more. Lots of people have been asking about the future of _s, and the Theme Team is finally publishing a status update.
The title may strike you as a bit ominous, but fear not. Underscores, our popular starter theme for WordPress theme development, isn’t going anywhere. As we continue to push for consistency in themes and imagine what they might become with Gutenberg, we’re bringing our attention back to Underscores. For the last year and a half, we’ve experimented with a new starter-theme generator called Components. It was a way to make a few different theme “types” comprised of different components. The starter themes born from it brought with them more code and styles, and gave theme authors a bigger head start in their work. The generator we built to piece the different components together got complex quickly, though. We created a plugin to test builds locally and struggled with a seamless way to make many starter themes from one code base.
We learned a lot, though. We worked on Components at two team meetups, made almost 900 commits to the project and launched dozens of themes with it. However, we hit a point where we realized we had over-engineered parts of the project. The original idea is still solid: make starter themes do more by crafting them out of building
Thanks to John Blackbourn, we have a list of all the situations where WordPress sends an email, along with how to filter or disable. The plan is to get this into the developer.wordpress.org site.
WordPress Emails This document lists all the situations where WordPress sends an email, along with how to filter or disable each email.
This is accurate as of WordPress 4.8, and includes some upcoming changes in WordPress 4.9.
There are a few TODOs left. Please bear with me.
Change of Admin Email
Change of User Email or Password
Comment is awaiting moderation
To: Site Admin, plus post author if they can edit comments
From: WordPress <wordpress@host>
Subject: [%s] Please moderate: "%s"
Disable: Filter notify_moderator
Remove comment_post:wp_new_comment_notify_moderator action
"Email me whenever" on Settings -> Discussion
Overwrite the pluggable function
Comment has been published
To: Post author
From: WordPress <wordpress@host>
Subject: [%s] Comment: "%s"
[%s] Pingback: "%s"
[%s] Trackback: "%s"
Bob shares two big reasons these widgets are a welcome addition to the collection of default widgets in WordPress 4.8.
This is likely not the only post you are going to see about WordPress 4.8, but I wanted to take it from a different approach. And that is why this widgets are so freaking cool with this release. What Widgets You May Ask?
Well, before I get into my two big reasons these widgets are a welcome addition to the collection of default widgets in WordPress 4.8, let’s take a quick look at them.
Text Widget – Improved
Finally, a simple way to format you text widget. In the past, to do this you needed to add some HTML. I had written posts in the past that showed you how to get around that if you didn’t know HTML. Those posts will now be outdated except for one reason I will mention shortly.
Now it is obvious this is a good start and of course they couldn’t fit in all the other options in the editor. So you may have your missing favorite one that, who knows, may or may not end up there in the future. I particularly would like to see the headings and also the ability to insert an image easily here. So maybe after all, my old posts on making it easy to format your text widget will continue to be useful.
Image Widget – New
This is yet another widget that I have share
Written by Keith Adams, Chief Architect at Slack. Slack uses PHP for most of its server-side application logic.
Soyuz rocket delivered to the launchpad by train. Public domain photo by NASA Slack uses PHP for most of its server-side application logic, which is an unusual choice these days. Why did we choose to build a new project in this language? Should you?
Most programmers who have only casually used PHP know two things about it: that it is a bad language, which they would never use if given the choice; and that some of the most extraordinarily successful projects in history use it. This is not quite a contradiction, but it should make us curious. Did Facebook, Wikipedia, Wordpress, Etsy, Baidu, Box, and more recently Slack all succeed in spite of using PHP? Would they all have been better off expressing their application in Ruby? Erlang? Haskell?
Perhaps not. PHP-the-language has many flaws, which undoubtedly have slowed these efforts down, but PHP-the-environment has virtues which more than compensate for those flaws. And the options for improving on PHP’s language-level flaws are pretty impressive. On the balance, PHP provides better support for building, changing, and operating a successful project than competing environments. I would start a new project in PHP today, with a reservation
A long awaited feature of adding images to WordPress sidebars may be ready in time for WordPress 4.7.4
Adding images to sidebars in WordPress is a cumbersome task that requires users to upload an image to the Media Library, find the URL, copy it, and paste it into a Text widget along with additional HTML. Nearly two years ago, Mel Choyce opened a ticket on WordPress Trac proposing that a media widget be added to core. This widget would allow users to easily add images to sidebars. Throughout the discussion, the idea of creating a catch-all media widget was brought up that would allow users to add images, audio, or video to a sidebar. After developers spoke to Matt Mullenweg about the direction of the project, the team decided to create three separate widgets to handle each media type. Choyce outlined the benefits this approach provides:
We can focus on creating more tailored experiences for each widget.
We’ll be able to launch new widgets without having to worry about constantly updating one central widget, or potentially breaking anything.
It’ll be easier for people to discover new media types since they won’t be buried within one widget.
This will more closely mimic the approach we’re taking to content blocks in the future, which should provide an easier transition.
This advanced tutorial shows how developers can get the most from the new WordPress default theme.
With the release of WordPress 4.7, also came the new Twenty Seventeen theme. More than all its predecessors, the new default theme is highly customizable for both users and developers, it’s easy to use, and perfectly suitable for both personal and professional purposes. Moreover, it is great when it comes to site performance, as Brian explains in How to Score 100/100 in Google PageSpeed Insights with WordPress. The Twenty Seventeen theme provides the perfect dress for new amazing WordPress features like the customizable video header. Moreover, it provides theme specific features like front-page sections, SVG icons support, visible edit icons in the Customizer.
Much has already been written about Twenty Seventeen theme, so in this post I won’t make a new list of its cool features and functionalities. Rather, I will propose five small tutorials aiming to help developers and advanced users to get the most from the new WordPress default theme. Thanks to a child theme, we will:
A Child Theme to Enhance Twenty Seventeen Theme Functionalities
I will assume you are familiar with child theming in WordPress. If you’d need a refresher, take the time to have a read at our WordPress
Former Headway Themes Employee Goes Public: Staff Has Not Been Paid and Customers Are Not Receiving Support
Time to abandon ship and look for a more stable solution. The ship is sinking.
Former Headway Themes Employee Goes Public: Staff Has Not Been Paid and Customers Are Not Receiving Support
As of last week, Headway Themes customers are still not receiving support for the products they purchased and co-founders Grant and Clay Griffiths have yet to communicate via email or the company’s blog. Support is frozen and customers and employees have been jilted, while Headway Themes continues to keep the product available for purchase. The founders have remained silent on why Headway support has dropped off. Gary Bairead, former “Support Guru” at the company from March 2011 until June 2016, has published a post to inform the Headway Themes community about the situation that has developed over the last few months.
“Clay and Grant allowed the team to work for multiple months at a time when they knew they wouldn’t be able to pay us,” Bairead said. “At no point did they inform us about this while we were working for them. When we tried to contact them about payment, they wouldn’t reply.”
Bairead also said that third-party developers who sold add-ons in the Headway marketplace have not been paid for their products for several months and have received no explanation from the Griffiths.
“After a lot of persistent pressure, the
Ok, i think i'm tired of this GPL stuff already but figure share this. Daniel hits home the point of what uses any code from GPL means for developers and companies.
Matt Mullenweg, the founder of Automattic, downloaded his competitor Wix’s iOS app. It looked eerily familiar, and he confirmed it contains source code stolen from WordPress. He called them out on his blog, getting right to the point in addressing the problem: Your app’s editor is built with stolen code, so your whole app is now in violation of the license.
Wix’s CEO, Avishai Abrahami, responded with a round of non-sequiturs that carefully evade the point that his product is built from source code for which they have not paid. One of his engineers equally misses the point, focusing on the circumstances surrounding the violation, rather than taking responsibility for the theft.
Some will take issue with the use of strong words like “stolen code,” and “theft,” with respect to a GPL violation. But that’s exactly what it is: software has been taken and deployed in Wix’s product, but the price for doing so has not been paid.
Many developers (and CEOs) seem to prefer remaining willfully oblivious to the consequences of using GPL code. They loosely interpret the terms of GPL to suit their own wishes for what they implied:
If you've ever wanted to learn HTML and CSS to manage your website a little better, make small tweaks, or start a career in web design, this is a great opportunity. On March 6th I will be hosting a live webinar where I go over the basics, and we'll make our own web page. If you can't make it, don't worry! Anyone registered will get the recording.
HTML and CSS are the basis of any website; they are the absolute minimum you need to know to build things on the web. In this 90 minute webinar, I will introduce both HTML and CSS to you by going over the basics and building out a basic web page complete with color scheme, font choices, images, and more.
Even better: the first 21 people to register will get in for just $24.00! That's 50% off the full price.
A well-detailed post by Josh Pollock about Type Hinting. Whether to use it or not.
PHP started out as a simple language without a lot of the conventions of other C-like programming languages that make them challenging to learn and more difficult to write. Over time, as PHP matured, many of those features have been added as optional syntax. One example of this type of feature is type hinting. Type hinting gives you the ability to define the type of values that can be passed for each argument of a function or method. Type hinting is optional, but when used it forces parameters to be a certain type or an error is thrown. Doing so makes it more obvious what type of input a function expects but can also lead to more errors.
Type hinting is a feature of PHP that has only matured recently. In PHP 5 (as of 5.4) there are only four types of type hints that can be used, and these do not include scalar values — bool, float, int, and string. Scalar type hinting was introduced in PHP 7.
What Is A Type?
All variables have a type. For example, look at this variable declaration:
We can now say that $x has the type “int,” which is short for integer. If we pass $x through var_dump() it will show us its type.
Some languages are “strongly typed,” which means
All the links, tutorials, resources and tools you need to learn and start using Gutenberg.
WordPress Gutenberg All the tutorials, examples and tools you need to start using Gutenberg.
In 2018, WordPress aims at modernizing and simplifying the content creation experience with Gutenberg. Its name comes from Johannes Gutenberg, the founder of the printing press. This is considered to be one of the biggest changes for the WordPress user experience and the theme development workflow.
What is Gutenberg?
Most of us think that Gutenberg is just a new editor, but it’s not just that. While the editor is on focus right now, the project will ultimately impact the entire publishing experience including customization.
Up until now, editing a page meant tweaking its title, body and custom fields. With Gutenberg, this logic changes completely and it introduces the concept of blocks. Blocks are standalone, isolated and dynamic user interface components that are added dynamically through the wp-admin. I won’t elaborate on this, since the following video explains everything in detail.
A tutorial from Carl on starting to use Continuous Integration.
I gave an introduction to continuous integration with WordPress at WordCamp San Diego 2018. This is the companion article that I wrote for it. If you’re just looking for the slides, click here. Writing high-quality WordPress code is hard to do. It requires constant effort on our part and good self-awareness to know when we slipped up. But, if your business has any sort of success (which we all want!), you’re going to work with more and more people. And many of them are likely to touch with your code.
This is going to put a strain on your development processes. It becomes harder to maintain a certain level of code quality. And you’re no longer the only person making code changes. You’re now part of a team, and you need a way to standardize all of the things you once did on your own.
That’s goal of continuous integration. It lets you automate your different development workflows. This ensures that the quality of your code stays consistent.
Continuous integration is a bit of weird term to define. That’s because it’s a term used to group a whole bunch of different development processes. That said, the idea behind them is pretty simple.
The WordPress Plugin Directory had a recent policy change regarding the notice displayed for old / un-updated plugins. Instead of a time-based warning, it is now a version-based warning.
If you are a plugin developer, then you should know that the Plugin Directory had a recent policy change regarding the notice displayed for old / un-updated plugins. Instead of a time-based warning, it is now a version-based warning. Old WordPress Plugins
WordPress Plugin Directory has several mechanisms to ensure compatibility with newer WordPress versions and to encourage developers to upgrade and maintain their plugins. Old plugins are excluded from search results — this way only plugins that have been updated recently get displayed and promoted in the Plugin Directory.
In addition, when navigating directly to a plugin page, there is a notice saying that the plugin hasn’t been updated for a while and it may no longer be maintained or supported. This way the user can choose whether to use the plugin at his risk or try to find better alternatives.
From a plugin developer’s point-of-view, the plugin needs to be maintained and updated constantly and regularly to be presented on the Plugin Directory. Otherwise, the plugin will be displayed with a warning and excluded from the search results.
Policy Change — Time-Based Notice vs. Version-Based Notice
In the old
Very important stuff. I do wish it wasn't all so last minute, but happy to see it happening.
Stronger rules on data protection from May 2018 mean citizens have more control over their data. GDPR is coming, and we’re working hard to get new tools in WooCommerce core to help store owners comply. If you’re not familiar with GDPR yet, Hannah wrote a great introduction to GDPR on the main WooCommerce blog which you can read to get caught up.
It’s important to note that this new law doesn’t just apply to stores in the EU – this applies globally to stores that sell products to EU residents.
We’re currently building new tools into our upcoming 3.4 release to help store owners deal with GDPR requests and surface things such as privacy policies on the checkout. Some of the tools are built already, or are in progress, notably:
Improvements to the checkout in https://github.com/woocommerce/woocommerce/pull/19637, which include:
Better formatting for inline descriptions should someone which to include just in time privacy text next to fields, and some simple tools to toggle non-critical fields off to avoid unnecessary data collection.
Custom terms and conditions text, and control over the checkbox + label itself.
In progress personal data export and bulk
Visual Studio Code is a source code editor developed by Microsoft for Windows, Linux and macOS. It includes support for debugging, embedded Git control, syntax highlighting, intelligent code completion, snippets, and code refactoring. It is free and open-source, although the official download is under a proprietary license. Today we will explore free WordPress Visual Studio Code extensions.
Visual Studio Code by Microsoft is the new kid in the block and it is gaining popularity everyday. Today we will explore free WordPress Visual Studio Code extensions. Visual Studio Code is a source code editor developed by Microsoft for Windows, Linux and macOS. It includes support for debugging, embedded Git control, syntax highlighting, intelligent code completion, snippets, and code refactoring. It is also customizable, so users can change the editor’s theme, keyboard shortcuts, and preferences. It is free and open-source, although the official download is under a proprietary license So, without further ado let’s dive in!
Auto completes WordPress snippets for Visual Studio Code. A very handy extension when you code in WordPress way. Although this doesn’t cover every snippets of WordPress but sometimes makes WordPress coding easier. Some of the auto complete snippets are –
Comment form template
Plugin base singleton
Register nav menu
Average Ratings: 4.9
Last Updated: 2/2/17
Supported WP version: 4.6.1
Local Sync is a new development tool that lets you sync DB & Files for your Local & Remote WordPress sites.
Supports Works great with
Who are we?
Which is used by 600,000+ WordPress sites. We love WordPress and we work hard for you to save
time with your workflow.
Is it FREE?
Yes, we love freemium. That is the only way to take our products to every users. We will have Pull and Push free for life with unlimited sites. And these pro features will be paid. It will help us to maintain and build cool features.
• Pull and Push changes from local to server and from server to local
Touches on some of the current problems that Gutenberg has at the moment.
Since September, when I have written about the Gutenberg 1.1 version, this plugin soon to be part of the WordPress core, has come a long way and it has reached version 2.4. A lot has changed with Gutenberg since my first article, and it is not really possible to list all the changes, I will try in this article to revisit the problems discussed in the previous article, talk about the editing workflow, metaboxes support and the state of the Gutenberg for the merge into the WordPress.
For the most part, metaboxes do work. But, I am sure that a lot of plugins will still get broken because they might be doing something with the metaboxes that simply can’t work with Gutenberg. Here is the overview of issues and problems I have noticed:
Styling for the form elements on in the Gutenberg editor is quite different from the Classic editor, so most of the metabox forms that depend on this styling will look bad. This is an easy fix for plugin authors to add more styling to own plugins to make metaboxes look nice.
Metaboxes are not full width, no matter how big screen you have. Metaboxes are the same width as the editor area, and this will also be a problem for some metaboxes that
Pippin is discontinuing memberships on Pippin’s Plugins, and now they are freely available for anyone.
Six years ago I announced the launch of premium memberships to Pippin’s Plugins for access to advanced tutorials, code reviews, and other member-only benefits. I have been continually humbled by the response and support my memberships received from the WordPress community and I would like to sincerely thank everyone that signed up. Today, however, I have discontinued memberships to this site. My ability to consistently produce new material and to provide code reviews like I used to has continually waned as the product side of my business has grown. For a long time I held onto the hope that I could find a way to get back to consistently producing new content for this site but a small part of me has known that is unlikely to ever happen, and so I have made the only right decision available: close down memberships.
Effective today, memberships have been discontinued on this site and all existing memberships have been cancelled to ensure no existing members are billed again. If you are a member and signed up within the last 30 days, contact me and I will be more than happy to provide a full refund.
All previously restricted tutorials are now open to everyone. Please learn, grow, and
In this week's article Matt took a break from writing about the millions of alternatives to WordPress to take a look at the latest IDE that everyone seems to be falling in love with, VS Code.
If you keep up with the many different text editors and developer tools available, you may have heard of a newer IDE called Visual Studio Code. VS Code is a free, open source code editor that is lightweight like Sublime Text, but offers many of the same features as bigger IDEs like PhpStorm or WebStorm. In this article I’ll review some features and extensions of VS Code that I really appreciate, and show you how to make the most out of it for WordPress and general web development.
Out-of-the-box, VS Code doesn’t support WordPress and PHP in general as well as some other development environments like PhpStorm. Luckily, that’s easy to change by installing some extensions. I recommend installing the PHP Intelephense extension, which adds PHP auto-completions, symbol navigation support, and a much better way to find references in your workspace.
While that will add autocompletions for PHP core functions and any functions that you have defined in your project, it won’t pick up on any WordPress core functions. For that I recommend installing the WordPress Snippet extension, which adds helpful autocompletions for most WordPress core functions,