A new release doesn’t always have to bring incredible features, as it can silently set the stage for bigger things to come. Yoast SEO 5.9, released today, is such a release. While this release doesn’t contain groundbreaking new features, it does provide an important new piece of the Yoast SEO puzzle for the future: we’ve rebuilt the content analysis in React.

Optimize your site for search & social media and keep it optimized with Yoast SEO Premium »

Yoast SEO: the #1 WordPress SEO plugin Info

More accessible content analysis results

While the content analyses itself haven’t changed, the way we present the results has changed in Yoast SEO 5.9. To improve the user experience and accessibility of the results, we’ve decided to group these into several groups: Good, Considerations, Needs improvements and Problems. These follow roughly the colors of the bullets from green to red. This allows you to focus on your most important SEO issues first.

By grouping the results this way, colorblind users, for instance, can easily discern the difference between the results. Also, every header is collapsible. You can get the green bullets out of the way to focus on the red ones.

Thanks to this new grouping of the results you get a more structured overview of the SEO of the piece you’re working on. Before, it was one big list that became more cluttered with every added check. Now, we’ve added a new focus to the analysis, making it easier to use. You’ll fix your SEO in no time!

new content analysis yoast seo 5_9

Reactify all the things

Rebuilding stuff in React probably doesn’t mean much to you but is an important part of making Yoast SEO futureproof. React is a JavaScript library for building user interfaces. By using React, we can break up Yoast SEO into several parts so we can more easily maintain it and significantly improve it. Not only that, by dividing everything into blocks, we make it easier to adapt Yoast SEO to that new challenge called Gutenberg.

Gutenberg forces us to rethink our product and the way we build said product. It brings us loads of challenges, but also opportunities to bring Yoast SEO to new heights. But before we can do cool new stuff, we need to format our work in such a way that we can easily adapt it to the new Gutenberg editor environment. We’ve already rebuilt several parts of Yoast SEO, like the Configuration Wizard and the Help Center, in React. This process will continue for a little while until every visual aspect of Yoast SEO is ‘reactified.’

So, what else is new?

Besides fixing a load of bugs in Yoast SEO 5.9, we’ve also added several enhancements that make the plugin easier to use. We’re also adding a new focus on our onboarding wizard that has helped so many first-time users set up their Yoast SEO install in record time. We’re now showing a notice nudging users to open the onboarding wizard when the plugin is installed for the first time. We’ve also made the ‘Next’ and ‘Back’ buttons in the onboarding wizard focusable, to improve accessibility.

We’ve also introduced the wpseo_add_opengraph_additional_images filter so you can add additional OpenGraph Images with a lower priority. The order in which you place OpenGraph images determines which one  Facebook shows, which is usually the first one. This led to issues with WooCommerce SEO as their Gallery images always appeared on top. With the new filter, you can add additional images to the OpenGraph image list. These should not be shown as the default image, but you could use these for more advanced purposes. Some sites allow you to pick any image found in the list.

Update now!

That’s Yoast SEO 5.9 for you! With this new release, we’re continuing the renewal of our foundation to make sure we can build an awesome new house in the future. We’ve also fixed loads of bugs and enhanced some parts of the plugin to make sure you can do work in the best possible fashion. Happy updating!

Read on: ‘Why every website needs Yoast SEO’ »

The post Yoast SEO 5.9: A more accessible content analysis appeared first on Yoast.

In our plugin, you can connect Google Search Console to Yoast SEO. This verifies your website for your Google Search Console account and allows you to view your crawl errors. Especially when you have a large site, the number of crawl errors might scare you. In this post, I’ll explain a bit more about crawl errors and show you how to fix them, using Yoast SEO Premium.

Optimize your site for search & social media and keep it optimized with Yoast SEO Premium »

Yoast SEO: the #1 WordPress SEO plugin Info

What are crawl errors?

Google uses so-called Googlebots to crawl and index your page. Crawling, in layman’s language, is the process of Googlebot going over your pages, one link at a time. When crawling, its goal is to get to every important page on your site by following links on pages, in sitemaps, etc. Indexing, on the other hand, is what Googlebot does to take in all the content on your pages, to include it in its search result pages.

There are two types of crawl errors:

  • Site errors that affect your entire site. Think along the lines of connectivity issues with your web server, and problems fetching your robots.txt file.
  • URL errors that affect a specific page on your website. Googlebot tried to crawl the URL but did not succeed somehow. It was able to resolve your DNS, connect to your server, fetch/read your robots.txt file, and then request the URL. But after that, something went wrong.

Viewing crawl errors in Yoast SEO

In our Yoast SEO plugin (free and paid), you can view the crawl errors that Google came across on your website. All you have to do is connect Google Search Console to Yoast SEO. In our plugin, we guide you through that process. Let me explain the steps here as well.

Connect Google Search Console to Yoast SEO

To connect Google Search Console to the Yoast SEO plugin, all you have to do is navigate to this page in WordPress: SEO › Search Console.
Connect Google Search Console to Yoast SEO

The next step is to connect them. In our plugin, just click the ‘Get Google Authorization Code’ button:Search Console - Yoast SEO

It’ll take you to Google Search Console. There, you’ll be asked to confirm that you want to connect Google Search Console to Yoast SEO and let our plugin view and manage the data for your sites. Click ‘allow’:Search Console - Yoast SEO

Lastly, you’ll get a key to include in our plugin:GSC copy paste code

Now simply copy-paste that code and insert it into the box in our plugin, hit ‘Authenticate.’
Google Search Console pick profile

Choose the profile you’d like to connect and save it. Done! Now, you can continue in the first tab of that same section in our plugin (Desktop). Be sure to check the other tabs as well to find specific crawl errors.Yoast SEO crawl errors

Here, you will find the information we collected from your Google Search Console. In this table, you see the URL that gave an error, the date Google crawled it last, the date when Google detected the error first and the response code Google sent. In the screenshot, all response codes are 404 Not Found.

So, if you connect Google Search Console to Yoast SEO, you will have a great overview of how many crawl errors Google finds on your website. Now, you can go and create redirects for these 404s, or simply change them to 410s if that page is of absolutely no use to you anymore. More on status codes in this article. When you have ‘fixed’ the error, hover over the URL in Yoast SEO and click ‘mark as fixed’.

Is there an easy way to create that redirect?

Yes! There is an easier way to complete this process, and it is called Yoast SEO Premium. Besides a lot of extras that plugin has to offer, it allows you to immediately create your redirect in our plugin:create redirect in Yoast SEO Premium

Simply click ‘Create redirect,’ and, unlike in our free plugin (which will prompt that it’s only featured in our premium plugin), you’ll get this screen:
redirect and fix crawl errors in Yoast SEO

Our plugin will give you the option to create a redirect, or add another status code (301, 302, 307, 410, 451 are all possible). In case of a 301 redirect, like in the example, simply insert the URL you’d like that ‘old’ URL to redirect to. If you want to tell Google Search Console about this fix, simply leave the check ‘Mark as fixed’ as is and hit ‘Create Redirect.’ It’s as simple as that. In tomorrow’s article, we’ll shine a light on the redirects manager.

Now go and connect Google Search Console to Yoast SEO!

I hope this sheds some light on why you want to connect Google Search Console to Yoast SEO. You’ll be able to monitor crawl errors in our free plugin, and for a few bucks a year, our premium plugin will even help you fix them!

If you by any chance have already used this feature in our premium plugin, I’d love for you to share your thoughts and experiences in the comments!

Read more: ‘Which redirect should I use?’ »

The post How to connect Google Search Console to Yoast SEO and fix errors appeared first on Yoast.

For us, these last few weeks were mostly about our SEO conference YoastCon, but work on Yoast SEO went on as well. Today, we’re proud to present Yoast SEO 5.8. In this release, you’ll find a truckload of fixes and enhancements. I’ll share some of them in this release post and I’ll shine a light on all those smart community members who helped enhance this release.

Optimize your site for search & social media and keep it optimized with Yoast SEO Premium »

Yoast SEO: the #1 WordPress SEO plugin Info

Thanks to our community

If you read the full changelog, one thing becomes instantly clear: this is a community effort. And that is something we’re grateful for. In Yoast SEO 5.8, we’ve got fixes and enhancements from no less than ten GitHub developers. Let’s go over some of these additions, shall we?

Shane GreySaša Todorović and Damian Luszczymak all made suggestions to fix the layout of the Yoast SEO metabox. These fixes make sure that everything in the readability section now performs better on all screens.

Both Chris Wilcoxson and Eivin Landa suggested introducing the wpseo_breadcrumb_single_link_info filter for modifying breadcrumb data. Soulseekah introduced the wpseo_redirect_orphan_attachment action to allow unattached attachment pages to be redirected in tune with the relevant setting.

Tim Nolte suggested removing the max-width on alerts which leads to a better UI. Thanks to William Patton the default Twitter Card option in the social sharing settings of Yoast SEO is now set to ‘Summary with large image.’

SEO roles and capabilities

In Yoast SEO 5.5, we introduced SEO roles. These make it possible to give certain editors access to particular features of Yoast SEO, like the redirect manager. This gives site managers a more fine-grained way of access management. In Yoast SEO 5.8, we’ve enhanced this features, thanks in large part to Jory Hogeveen.

We now integrate better with most role/capability manager plugins using the `members_get_capabilities` filter. We’ve also added a Yoast group to the Members and User Role Editor plugins to find the Yoast SEO capabilities easily. This makes picking and setting the roles even easier.

Cleaning up

This release not only fixes some bugs, but it also contains an extensive clean up of the code base. We’ve removed the old Knowledge Base Search code and now solely rely on the new search feature that was added to the revamped Help Center. Also, we’ve improved the codebase to make it comply with the latest WordPress Coding Standards.

Checking Gutenberg content

While a full integration into Gutenberg is still months away, we did add the possibility to check the content you made in Gutenberg. If you use the Gutenberg plugin to create your content, you can now switch to the regular editor and fine-tune your content with Yoast SEO’s readability and SEO analyses. As you might know, we’re actively working on integrating Yoast SEO in Gutenberg and improving the new editor where we can.

Update!

Yoast SEO 5.8 is a great release chock-full of fixes and enhancements. In this release, we’re both cleaning up after us and looking forward to the future. We’d like to thank our community members that contributed to this and many other releases. We love your input. Now, update!

Read more: ‘Why every website needs Yoast SEO’ »

The post Yoast SEO 5.8 appeared first on Yoast.

Gutenberg is the new editing experience coming to WordPress. We’ve talked about it before. While we have some hesitations, we do see Gutenberg as a major step forward and are thinking about how we will integrate Yoast SEO into Gutenberg. In this post, we’ll share some of the ideas we’re excited about.

Gutenberg introduces new concepts, like blocks, and new places where we could potentially integrate. The premise behind our integration is that we need to give you feedback as soon as we can, in the right spot. Feedback is most helpful when you can actually do something with it immediately.

Inline is where it’s happening

We started by breaking down all our features, and seeing where we could integrate them into Gutenberg. We don’t think holding on to a single, massive box below the editor will best serve our customers. We’d much rather integrate right where the action happens, and Gutenberg offers us that chance. Let’s take a closer look at what we mean.

For instance, if you don’t fill out an alt text for an image you included, we don’t want to show that bullet point way down below in our metabox, in a long list of possible improvements. No, we want to show it to you right below the field where you can input the alt text.

Same for the featured image. Say you upload an image that is too small for Facebook to accept – you don’t want to have to find out about that when the whole post is finished, and you happen to wander into our social media preview editor. No, we tell you right then and there.

Connecting cause and effect

By working inline as much as we can, we’ll create a tighter connection between what you do and what effect that has on SEO. You’ll get actionable feedback in context. You don’t have to scroll down to a meta box to see the advice and scroll up again to the place where you should implement it. If we give feedback per block, you will get a better understanding of all the factors that influence SEO. And you’ll be able to anticipate them in advance once you’ve been working this way for a while.

Here’s another example: our primary category selection, of course, will be right there in the categories meta box.

The primary category, from Yoast SEO, integrated into Gutenberg

And another: the readability analysis, at the block level – just another section in the paragraph block settings, naturally.


The concept of blocks, in general, will allow us to give much more fine-grained feedback. For instance, you won’t have to look for the best place to add a link; we can scan all the blocks for you and let you know exactly which one is best for a certain link. Link suggestions don’t even have to live in a separate meta box. We can just insert them in the inline suggestions that the link UI offers.

Internal linking suggestion in the link popup

But what if we dream a little bigger?

Some people are working on bringing collaboration to Gutenberg. If it pans out, you won’t need Google Docs or something else to draft articles and leave editorial feedback; you can do it all from within WordPress. Of course, an essential part of a collaborative workflow is a commenting system. But we’d like to think that not all comments have to come from humans, per se.

Something we’ve been exploring is adding our SEO and readability feedback as comments to text. That would put our biggest feature inline as well, right where you need it. You can immediately identify problem areas, respond to feedback with your own comments, or dismiss the ones you don’t want to fix. It becomes an interactive and fun process. We won’t have to use sweeping statements like “50% of your sentences are too long”, no, we can break it down for you block per block.

We know you may not always want instant feedback on every word you type, so you could filter out the comments that Yoast SEO generates. This way, you can keep the writing and editing processes separate.

Working off of that idea, we might even build a full SEO mode into Gutenberg. What it will do exactly is something we are still thinking about, but it could take the shape of a site-wide wizard that guides you through all the relevant SEO optimization steps in an actionable and customizable way. More on that soon.

Yoast SEO + Gutenberg = ?

Gutenberg offers lots of opportunities to take our plugins to the next level. The great thing is: all WordPress plugin developers will be able to do that too. It’s a brave new frontier for all of us, and we’re very much looking forward to it!

What sort of features would you love to see us make for Gutenberg, or for an SEO mode in general? Let us know in the comments.

The post Gutenberg: Concepts for integrating Yoast SEO appeared first on Yoast.

The default WordPress search functionality is certainly lacking in areas. Although changes were made in 2013 to improve it, there are still a few areas where WordPress could use some help. It is, however, relatively easy to improve WordPress search by adding a few pieces of code. Here, I’ll list some of the methods you could use to make WordPress search better.

Optimize your site for search & social media and keep it optimized with Yoast SEO Premium »

Yoast SEO: the #1 WordPress SEO plugin Info

Sort by relevance

In older versions of WordPress, search results were sorted by date and not much else. Because this is (at the very least) annoying for websites with a lot of posts, WordPress core introduced a patch that would change the way search results are sorted.

The changes are as followed:

  • Results with a full sentence match in the post title are listed first.
  • Search results that include all search terms in the title, but not a full sentence match, are listed next.
  • Results including any search terms in the title, but not all search terms or a full sentence match, are listed next.
  • Finally, search results that include a full sentence match in the post content come last. Within each group, results are further sorted chronologically by publication date.

Improving the interface

Excerpts in search results by WordPress are not exactly great. Unlike Google, the WordPress search omits emphasis of the keyword if it found matches. Luckily, you can alter parts of the search results and add this feature.

Preparing your theme

In your theme, look for the file that outputs the search results. In this example, it’s a file that I’ve created manually, called /template-parts/post/content-search.php in a Twenty Seventeen child theme. This file is a copy of content-excerpt.php that exists in the same directory.

Next, look for the file called search.php in the theme’s main directory and look for the following line of code:

get_template_part( 'template-parts/post/content', 'excerpt' );

Change this to the following:

get_template_part( 'template-parts/post/content', 'search' );

By making these changes, you’ll ensure that WordPress will use your custom template instead of the default one. Time to add the actual code that will be doing the emphasizing!

Open up functions.php and add the following function:

/**
 * Adds emphasis to the parts passed in $content that are equal to $search_query.
 *
 * @param $content The content to alter.
 * @param $search_query The search query to match against.
 *
 * @return string The emphasized text.
 */
function emphasize( $content, $search_query ) {
    $keys = array_map( 'preg_quote', explode(" ", $search_query ) );
    return preg_replace( '/(' . implode('|', $keys ) .')/iu', '<strong class="search-excerpt">\0</strong>', $content );
}

What this function does, is taking the passed content and emphasize every occurrence of the word(s) passed in $search_query and return the text. The class that was added to the <strong> tag can be used to further style the end result (if you want to).

Adding emphasis in the title

Now that we’ve gone through the steps to setup your custom template parts adding emphasis in the title is relatively easy to do.

Go into your newly created content-search.php and find the line that looks like:

the_title( sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' );

and replace it with the following:

$title = emphasize( get_the_title(), get_search_query() );

echo sprintf( '<h2 class="entry-title"><a href="%s" rel="bookmark">%s', esc_url( get_permalink() ), $title ) . '</a></h2>';

That’s all there is to it!

Adding emphasis in the excerpt

You’d expect that adding emphasis to the excerpt can’t be much harder than adding it to the title. Sadly, this is not the case. With excerpts, WordPress automatically concatenates a “Continue reading” link to the end. You’d be fine as long as the search phrase doesn’t exist in the slug of the post, but most of the time if you’re looking for specific keywords, it will be present in the slug. This results in a broken “Continue reading” link.

To overcome this, you’ll have to temporarily overrule some default WordPress behavior.

First, add the following to your functions.php:

/**
 * Creates a custom read more link.
 *
 * @return string The read more link.
 */
function modify_read_more_link() {
    return ' <a class="more-link" href="' . get_permalink() . '">Continue reading</a>';
}

The above code will be called to ensure we have a workable “Read more” link.

This part hooks into the function that creates the actual excerpt and adds our emphasis and custom “Read more” link.

/**
 * Allows for excerpt generation outside the loop.
 *
 * @param string $text  The text to be trimmed
 * @return string       The trimmed text
 */
function custom_trim_excerpt( $text = '' ) {
    $text = strip_shortcodes( $text );
    $text = apply_filters('the_content', $text);
    $text = str_replace(']]>', ']]&gt;', $text);

    $excerpt_length = apply_filters('excerpt_length', 55);

    $trimmed = wp_trim_words( $text, $excerpt_length, '' );

    if ( is_search() ) {
        $trimmed = emphasize( $trimmed, get_search_query() );
    }

    return $trimmed . modify_read_more_link();
}
add_filter('wp_trim_excerpt', 'custom_trim_excerpt');

Sadly, there’s no elegant alternative for this. Hopefully, someday, a filter will be created that can be called instead of having to overrule large portions of the trim function.

Tracking searches

There are a few options to track the search queries that visitors have entered, but we recommend using Google Analytics for this. To get started with tracking searches, please go through the following steps:

  1. Login to Google Analytics.
  2. Click on Admin (gear on the bottom-left).
  3. Under View, click on View Settings
  4. Scroll down until you find the Site Search Tracking toggle and turn it on.
  5. In the Query Parameter field, enter s. This is the default query parameter that is added by WordPress when using the search function.
  6. Click Save

If your website is heavily dependent on categories and allows users to use them to refine their searches, Google Analytics gives you the ability to add tracking on this too. For more information on this subject, you can read Google’s documentation on search tracking in this article.

Alternatives

If your website has grown a lot and you want to supercharge your search, it might be wise to look at a few alternatives. One that we use at Yoast is Algolia. This platform contains a ton of features to make search even better. Some features are: Typo-tolerance, support for synonyms, filters and support for 100+ languages. It also includes integrations with WordPress!

Become a technical SEO expert with our Technical SEO 1 training! »

Technical SEO 1 training Info

Another alternative is Amazon CloudSearch. It offers similar features to Algolia, and you can enable autoscaling if you think your website needs it. However, ACS does not provide you with an integration out of the box, so you’ll have to write your implementation or look for a WordPress plugin in the Plugin Directory. At the time of writing, there are only two plugins present; CloudSearch and Lift.

Yes, you can improve WordPress search

As you could read, the WordPress search has improved over the years. Despite this, it still lacks in some aspects. Luckily you can improve it by adding some extra code in your child theme or take it to the next level by using external services such as Algolia and Amazon CloudSearch. Good luck!

Read more: ‘Internal search: why and how’ »

The post How to improve WordPress search appeared first on Yoast.

With the release of Yoast SEO 5.5 comes a great new feature: SEO roles. A site admin can now determine in the backend of WordPress who gets access to the various settings and features of Yoast SEO. This makes for a more fluid and flexible access protocol for different kinds of users on a site. It is no longer a one-size-fits-all solution, but a more tailored one. SEO roles make Yoast SEO even more powerful for every type of user. Here, we’ll explain why these roles are so awesome.

Optimize your site for search & social media and keep it optimized with Yoast SEO Premium »

Yoast SEO: the #1 WordPress SEO plugin Info

Managing user roles in Yoast SEO 5.5

It’s always been a challenge to use Yoast SEO in a larger site environment. As an admin, you’d have to choose between offering users full access to the plugin or just access to the SEO post editor part. That means a regular user couldn’t use the redirects manager, for instance, and had to ask an admin for help every time he or she wanted to add, change or delete redirects. We’ve seen it happing here at Yoast as well. Of course, there’s a whole range of possible permissions in between. Yoast SEO now introduces two new roles that make this a lot easier to manage: the SEO manager and SEO editor, in addition to the admin who determines who gets to see what.

Roles and capabilities

Roles in Yoast SEO consist of one or more capabilities, like:

  • managing options (this gives you full access),
  • managing redirects,
  • editing advanced metadata,
  • access to the bulk editor.

The SEO editor, for instance, can now make redirects, but cannot change the settings of the plugin or access the advanced metadata editor of Yoast SEO. This way, the SEO editor has more access than a regular user, but less than the SEO manager who can manage settings as well. If you use a permission or role manager plugin for WordPress like Justin Tadlock’s excellent Members plugin, you get even more fine-grained control over the capabilities within Yoast SEO. This way, you can mix and match capabilities in any form you’d like.

In Yoast SEO Premium, we’ve also added the capability to manage redirects without having to be an administrator. By activating this, users within a specific role get full access to the redirects manager. No longer do site managers have to be swamped with redirects requests by site editors, they can manage those themselves. Personally, I like that a lot. By adding some magic code to the plugin, the redirects manager now shows up in the WordPress sidebar menu, even if your Yoast SEO menu is hidden by default. How cool is that?

yoast seo 5.5 filter

Managing your site has never been easier

The SEO roles in Yoast SEO make it incredibly easy to give more people working on your site access to the features and settings they need, without granting them full access. Does your site editor need to edit advanced metadata? No? Block it in Yoast SEO. Does he or she need to manage redirects and do large-scale SEO optimizations with the bulk editor? Great, grant him or her access to these parts of the plugin. You can do this and more – all from the admin dashboard of Yoast SEO!

Read more: ‘Yoast SEO 5.5: Introducing SEO roles’ »

The post Managing access to Yoast SEO with SEO roles appeared first on Yoast.

In WordPress, content can be grouped using categories and tags by default. WordPress calls these groups taxonomies. When you are serious about your content and have a lot of it, it will pay off to create other groups as well. By creating these custom taxonomies, you’re making your life as a content writer easier. More importantly, you’ll structure your website to your best effort for your visitors. They’ll be able to locate content that’s relevant to them and find related content more easily. This article will dive into the use of custom taxonomies.

Hierarchical versus non-hierarchical

WordPress introduced the concept of tags in version 2.3. As described by Wikipedia, a tag is ‘a non-hierarchical keyword or term assigned to a piece of information.’ This means WordPress has had a hierarchical way of classifying information (categories), and a non-hierarchical way of organizing information (tags) since version 2.3. As far back as 2006 (!), people were discussing the fact that tags are not categories. The problem is that WordPress calls them both ‘taxonomies,’ but that’s not entirely correct. The word taxonomy assumes a hierarchy of sorts, as explained on another Wikipedia page

Learn how to structure your site well with our Site structure training! »

Site structure training$ 99 - Buy now » Info

With version 2.8, WordPress introduced custom taxonomies. Or actually, allowed easier access to the already available backend for custom taxonomies. These custom taxonomies can be either non-hierarchical (e.g. ‘tag’-like) or hierarchical (e.g. ‘category’-like). But for now, only the non-hierarchical taxonomies benefit from the smooth integration. These are more like actual taxonomies though, as they add a kind of hierarchy to the tag structure.

Let me give you an example: you could have a ‘People’ and a ‘Places’ taxonomy. Say, you write a new post and decide to add a keyword in the ‘People’ taxonomy. By doing that, you’re saying that it’s a keyword (or tag, if you want) of the type ‘People,’ so it is hierarchical in a way. But it also makes the keyword that much more informative, as it adds another layer of information.

Some years ago, Roy Huiskes made this visual for us by making a graphical explanation of the subject:

custom taxonomies

Fun fact: That People taxonomy section in the image above would include some more branches nowadays.

You can imagine using this for locations, or employees on a company site, but also writers on a book site, destinations on a travel site, etcetera. It groups items in a convenient way, both for maintenance and your visitors.

Custom taxonomies in WordPress

Adding custom taxonomies in WordPress isn’t that hard. To manually register a taxonomy, you can use the register_taxonomy() function. Most WordPress developers have probably used this one time or another, right?

WordPress.org has an example of how to approach this for a People taxonomy:

function people_init() {
	// create a new taxonomy
	register_taxonomy(
		'people',
		'post',
		array(
			'label' => __( 'People' ),
			'rewrite' => array( 'slug' => 'person' ),
			'capabilities' => array(
				'assign_terms' => 'edit_guides',
				'edit_terms' => 'publish_guides'
			)
		)
	);
}
add_action( 'init', 'people_init' );

This piece of code adds a meta box to your WordPress post edit screens, that looks like the tag box. It even works in the same way. I’m not a fan of tag clouds, but yes, in theory, you could even create a cloud for your new taxonomy. For a more in-depth explanation, check this post by wpmudev.org (2016).

These custom taxonomies can be public and private, which also makes them extremely useful for internal grouping of elements as well. I can imagine grouping VIP users, social influencers; you name it. 

Become a technical SEO expert with our Technical SEO 1 training! »

Technical SEO 1 training$ 199 - Buy now » Info

Note: (Custom) Taxonomies and Gutenberg

As Matt Cromwell describes, “Gutenberg is the future of content in WordPress. It will deliver the elegance of Medium but with far more power and flexibility of layouts and content types”. But Gutenberg is currently in development, and 99% of WordPress users probably won’t see any of it until it’s finished.

However, just last week, my colleague Tim added an issue to the WordPress/Gutenberg Github repo: Gutenberg shows private taxonomies in Category and Tag lists. Just dropping this here as a note, as I am sure the development team fixes this before releasing Gutenberg to the public. But if you are test-driving Gutenberg on a live site, and you are using custom taxonomies somewhere on that site, it could be something to check. Just to be sure!

How are you using custom taxonomies?

So, in conclusion, custom taxonomies can be very useful. If you have loads of content and want to create order, for both yourself and your users, you could use them.

That leaves me with two questions: Are you using custom taxonomies and if yes, how did you add these to your site? I’m looking forward to your answers in the comments!

Read more: ‘Using category and tag pages for SEO’ »

Advanced Custom Fields, or ACF, is one of the most popular WordPress plugins to date. It makes it possible to turn WordPress into a full-blown, custom-made content management system. How? By providing an easy way to add and manage custom fields. To use the content analysis of Yoast SEO in these custom fields, you need a plugin: ACF Content Analysis for Yoast SEO. As of today, two existing ACF glue plugins will come together in one official plugin. Here, we’ll shine a light on the open source driven development of this new ACF plugin.

Optimize your site for search & social media and keep it optimized with Yoast SEO Premium »

Yoast SEO for WordPress pluginBuy now » Info

Why use Advanced Custom Fields?

Like the name says, the Advanced Custom Fields plugin, built by Elliot Condon, makes it easier to add custom fields to any WordPress site. While custom fields may sound boring on their own, they are used to extend WordPress. What’s more, people use them to build tailored solutions to, often, complex problems. Developers love these and use custom fields to develop new and exciting products on top of WordPress. By using custom fields, you can turn WordPress into a professional CMS that accomplishes all your needs perfectly.

What does the ACF Content Analysis for Yoast SEO plugin do?

The ACF Content Analysis for Yoast SEO plugin makes it possible for Yoast SEO to work inside custom fields. By using this plugin, you can use the SEO and readability analysis features of Yoast SEO to check your writing and SEO score, even if they live in a complex custom field.

Marcus Forsberg built the original ACF Content Analysis for Yoast SEO plugin. We later forked it to build our own solution. However, both plugins had trouble keeping up with the developments. Some time ago, we started a collaborative effort to make one, well-maintained, official ACF plugin for Yoast SEO. Viktor Fröberg, Marcus Forsberg, Thomas Kräftner and the great team at Angry Creative, helped us to merge two different ACF glue plugins and redevelop these into ACF Content Analysis for Yoast SEO. The team will update this plugin on a regular basis and offer continued support for ACF.

Version 2.0 of the plugin, available as of today, is rewritten from the ground up. It supports ACF 4 and 5. It offers stellar performance and supports more custom fields than ever.

Building something better, together

This is a collaborative effort. It is high time to put a spotlight on some of the team members that made sure two incredible WordPress plugins can start working together seamlessly.

Thomas Kräftner, freelance web developer:

“When Yoast SEO 3.0 came out I had a problem: I had just finished a site for a client that relied heavily on the now removed server-side analysis of content. Of course, the client wasn’t happy that all the work he paid for was wasted.

So we sat down and talked. I explained to them that they wouldn’t be the only ones with that problem. Instead of letting people reinvent the wheel, again and again, we should better make one generic solution. I proposed that my client would only pay a part of my development cost. In exchange, we’d make a completely free and open source plugin. And guess what – they thought this was a great idea!

I then also contacted Yoast, and at WordCamp Europe 2016 we agreed that they would also join in and help me maintain and support that plugin. It was a busy year, so it took until WCEU17 and also bringing Angry Creative on board to finally get us where we are today: The release of a true community built plugin.”

Viktor Fröberg, web developer at Angry Creative:

“At Angry Creative, we mainly do WordPress and WooCommerce development. As such, we often bump into both generic problems and specific problems that we fix by doing plugins. We also try to fix WordPress / WooCommerce core issues, but doing plugins helps us get solutions out there sooner rather than later.

We try to talk to our clients about the importance of open source and why this is valuable for them. A lot of our clients’ problems are shared problems, and by contributing our solutions to the community, our clients get free development time from other developers in the long run as they help improve the plugin. This pooling of resources benefits everyone.

This ACF Yoast SEO integration plugin was just like that. It was born out of a common need that almost all of our clients had. We’ve maintained it, and our clients have benefited from it. With the help of the awesome Thomas Kräftner and the Yoast crew the plugin is now better than ever, and together we’ll continue to improve it so that users can build their next big thing using WordPress with ease.”

Omar Reiss, CTO at Yoast:

“A collaboration like this is very dear to our heart. We get an incredible number of requests to add support for other plugins. At Yoast, we prefer such integrations to be backed by the community. We do our best to make it easy for third-party plugin developers to integrate with Yoast SEO. Whenever users request an integration, we mostly reach out to third-party plugin maintainers and offer our help and assistance in integrating with Yoast SEO. This works out well in many cases.

In this case, Marcus, Thomas and the folks at Angry Creative all separately leveraged the opportunity to create an integration between ACF and Yoast SEO. We happily brought everyone together to work on one integration to rule them all, reviewed, endorsed and distributed by Yoast, developed by the community.”

Open source driven development

The new ACF Content Analysis for Yoast SEO plugin is a solid piece of open source driven development. Ten developers from Sweden, Austria, and The Netherlands identified problems with the current implementation and stepped up to fix it. Working together with a fantastic team from around Europe and a shared open source mindset has made it possible for them to deliver fabulous work.

Open source is at Yoast’s heart. We try help others reach for the stars while continually improving our work. Projects like the ACF Content Analysis for Yoast SEO plugin give us the opportunity to learn from others and to contribute to the ever-expanding WordPress universe.

Download the plugins and tell us what you think! Thanks for supporting our work.

Read more: ‘Why there’s only one model: the open source model’ »

Our mission is ‘SEO for everyone’. We keep that in mind, in everything we do. But what do we mean by it? And why is it our mission? In this post, I’d like to explain Yoast’s mission.

A little bit of history

To understand why we pursue this mission, we’ll have to go back in history. Let’s start in 2006: Joost de Valk was building SEO plugins because he strongly believed that everyone could benefit from the SEO knowledge he had collected in his work for large agencies. As a WordPress fanboy, he could quickly translate his technical SEO skills into a useful plugin for WordPress. 

New to SEO? Learn the Basics of SEO in our Basic SEO course »

Basic SEO training$ 199 - Buy now » Info

The WordPress SEO plugin, which was rebranded to Yoast SEO later on, got an enormous amount of users. What’s more, Joost received an overwhelming number of support requests and was unable to handle those, as he was still working for an agency as well. At that point, Joost decided to start his own company. Selling premium plugins and doing a little bit of consultancy enabled him to further invest time and resources into the free Yoast SEO plugin as well. This allowed us to improve the quality and features of our products, and also resulted in a growing company. Moreover, it meant we could further define our mission.

WordPress’ mission and Yoast’s mission

The mission of WordPress is to democratize publishing with open-source GPL (General Public License) software. Yoast’s mission builds on WordPress’ mission, just as Yoast’s software is an extension of the software of WordPress. Everybody can create a website using WordPress. However, not everyone is able to rank in the search engines. In some niches, the search results are dominated by large companies with even larger marketing budgets. The Yoast SEO plugin, combined with the SEO knowledge Yoast shares, enables small entrepreneurs to compete with these large companies.

A ‘fair’ chance in the search results

We believe the web will benefit from all people having an equal chance in the search results. We would love for great new ideas and inventions to spread over the world. And great ideas don’t always come from large agencies but are created everywhere around the world. That’s why we believe that every idea should have a fair chance in the search results. WordPress and Yoast SEO cover most of the technical SEO challenges of a website. But to seriously compete with the big boys, every website owner still faces content SEO challenges. In our blog posts, we explain to our audience how to write awesome and SEO-friendly content and how to set up a decent site structure. Using the Yoast SEO plugin and reading our posts should help everyone to have a fair chance in the search results. That’s what ‘SEO for everyone’ is all about.

Making money and maintaining the mission

Pursuing our mission doesn’t mean we’re not making any money while doing so. On the contrary: the company Yoast is thriving. The money we make enables us to keep on pursuing our mission. We continue to tweak and improve our plugins and we write more and more articles about SEO. Making money makes pursuing ‘SEO for everyone’ easier. We can have a bigger impact. And, it allows us to contribute more and more to WordPress core.

The premium version of Yoast SEO has some practical features, which will make SEO a lot easier. However, all essential features you need to have that fair chance in the search engines, are available and will remain in our free plugin. Our online courses are powerful to quickly learn about (one or multiple aspects) of SEO. But all the SEO information you need is also available in our many blog posts. It’s important to us that everyone – even if you haven’t got much money to spend – can benefit from our SEO products.

Read more: ‘Victory of the Commons’ »

Today we’re releasing Yoast SEO 5.2. In this brand new version you’ll find some feature enhancements, accessibility improvements and a couple of bug fixes. In addition to that, we’ve laid some groundwork that will help us make Yoast SEO work well with the plugins our users use most. Read about all the improvements here!

Accessibility

Web accessibility is something we always urge website owners to think about and improve. As we can’t let our own products fall behind, we regularly work on the accessibility of the plugins we develop. This time, we scrutinized the accessibility of the onboarding wizard of Yoast SEO and improved it so everyone will be able to use it well. 

Optimize your site for search & social media and keep it optimized with Yoast SEO Premium »

Yoast SEO for WordPress pluginBuy now » Info

Redirects for private posts

The redirects manager of Yoast SEO Premium is one of the features we’re most proud of. It makes creating redirects – and therefore preventing 404s – so much easier, and helps site owners to be less dependent of developers. As of this release, we’ve added an enhancement to this feature. From now on, if you trash a post that’s set to private, Yoast SEO Premium will also ask if you want to redirect the old url to a new one. 

Compatibility

One thing that keeps challenging plugin developers like us is to make plugins work with all the different plugins that our users use. There are so many plugins out there – not even to mention the various combinations of plugins that exist. To improve the compatibility of our plugins, we’ve added tracking to find out which other plugins our Premium users have installed. This will help us tremendously in making Yoast SEO work flawlessly on more WordPress installs. For the same reason, we’re tracking which PHP version our user’s websites are running on.

Speaking of PHP, if your site is running on PHP version 5.3 or lower, you couldn’t have missed the notice to urge you to move to a newer version since our 4.5 release. Does this WHIP notice keep annoying you? Then we have some good news for you. You can now dismiss the notice. After 4 weeks it will pop up again though, as we still believe upgrading to a newer PHP version is the best way to go.

That’s about it. Go update to 5.2 and enjoy this brand new version of Yoast SEO!

Read more: ‘Why every website needs Yoast SEO’ »