WordPress was built by the community. In just a few incredibly productive years, it grew to become the most popular CMS in the world, and all of us in the WordPress Community played a role in the evolution and development of WordPress. Together, we made it into the popular powerhouse it is today. If there was one thing that made it possible, it was the open source philosophy. Just like WordPress, Yoast was born from an open source world. In this interview, Joost de Valk shares his views on a topic dear to his heart.

Joost began his journey into the open source world many moons ago. As a contributor to the WebKit project, which built a layout engine for web browsers, he saw how a group of like-minded people could go up against mainstream, rich companies. WebKit’s small team made waves with their product. Different browsers adopted it and it helped them to hold their own against the incredible power of Internet Explorer. Joost says: “We were unbelievably efficient. I discovered very early on that it was better to build something together than on your own.” 

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

Basic SEO training$ 199 - Buy now » Info

A passion for open source

Talk to Joost about open source and his eyes light up. Open source formed him – it shaped his thoughts and visions. Even now, as CEO of a successful company, he’d still choose open source as the business model every time. Joost: “If I had to start over, I’d do a million things differently. But I would choose open source again in a heartbeat. I actually do think it’s better to create together. Take those design agencies that develop bespoke CMS’s. Why? It’s nonsense. It leads to vendor lock-in and that is horrible. There’s only one model: the open source model.”

‘‘If I had to start over, I would choose open source again in a heartbeat ’’

Running a business with an open source mindset is better than keeping everything behind closed doors. Joost: “Why should a school build their own site when there are hundreds of schools with the same requirements and questions? Join hands to make it manageable and cheaper. Just think how much the government could save if they used open source everywhere.”

“To me,” says Joost, “open source is a combination of community, not just friends, and a shared responsibility to find solutions to problems together. Take WordPress for example, collectively we are fixing the problem of publishing to the web. Other projects tackle different problems in the same way, together. This is how society should function; when we set our minds to it, we can achieve anything if we combine our efforts.”

David vs. Goliath

Joost sees open source as a David vs. Goliath struggle: “It’s money versus community. A lot of money versus no money. As a community-driven CMS, WordPress continuously has to figure out how to go up against large-scale commercial efforts. But, in spite of all that money, WordPress continues to grow like wildfire. We’ve reached critical mass and it will only go up from here.”

While WordPress grows, its community continues to expand. According to Joost, the community is diversifying at a rapid rate: “It’s not just developers anymore – the project attracts a wide range of people, from designers to writers. People are willing to invest loads of time into it. Just look at all those WordCamps around the world; all of them are organized by people from all walks of life.”

Open source politics

In theory, open source may sound like the perfect way to get something done, but oftentimes, good-old politics can cause everything to grind to a halt. “The political games are no fun,” Joost says. “It’s a community and therefore pretty diffuse. It takes time to reach a consensus. It’s hard to navigate the waters when there’s no one actually in charge. You have to figure out where decisions are being made and try to be there to influence them. That’s when you find out that not having anyone in charge can make it harder.”

‘‘It takes a lot of time and effort to develop a tool like Yoast SEO’’

Yoast now and in the future

Yoast as a company was built on open source and this philosophy continues to play a big part in its future plans. The Yoast SEO plugin is now spreading its wings, moving to other open source platforms like Drupal, TYPO3 and Magento. But Yoast has to sell something to make money, so in our case it’s a Premium version and other products, like services and education – aspects Joost wants to expand: “In the future, I’d love to be able to give away my plugins for free and generate enough income from our services and education platform. But, that moment is not yet in sight.”

Making money on open source seems strange and contradictory to the openness of open source. Yet, to pay nothing towards the development of products you use every day feels wrong as well. Joost: “It’s almost as if people think it’s rather easy to develop something for WordPress and that it doesn’t cost anything. That’s not true of course. It takes a lot of time and effort to develop a tool like Yoast SEO. Think about it, the readability analysis in Yoast SEO took about six man-years to develop. We could have put it in the Premium version, but we thought about the impact it would have if we gave it away for free. So we did. Come to think of it, I’ve never thought about taking something out of the free version of Yoast SEO to make people pay for it.”

Read more: ‘Yoast WordPress core contributions ’ »

If you’re thinking about starting a blog, the most important thing I have to say to you is: go for it! Start your blog! Just do it! Blogging is a great SEO strategy, it’s a wonderful marketing tool and blogging is lots of fun! A new blog will allow you to make smart and strategic choices. Just take a little time to think about how to set up your blog before you begin, so you’ll have less work later on. Let me share some tips with you on how to start a blog.

Choose your niche

You should always write about what you know. But you should not write about everything you know. Pick a niche. Decide upon a main topic and write posts related to that topic. It’s more likely that your audience will come back and read your other posts if you’re writing about similar topics. People will know what to expect. Starting a mom blog implies that you write about all things concerning your children and family life. Starting a travel blog implies you write about traveling. You can write about something slightly off topic once in a while of course, but try to stick to your niche. An audience of a travel blog doesn’t expect a blog post about gardening. 

Our SEO for WordPress eBook guides you through every aspect of Search Engine Optimization »

SEO for WordPress€ 25 - Buy now » Info

Do your keyword research

Once you’ve chosen your niche, you should do some solid keyword research. Try to find out what people are searching for. What words are they using when they want to read about your niche and your topic? You should really get inside the heads of your potential audience. If you do your keyword research properly, you should end up with a long lists of keywords you would like to be found for. Try to come up with competitive, head keywords as well as with less competitive long-tail keywords.

Read more: ‘How to start your keyword research’ »

Think about site structure

This is the best time to think about site structure. What categories are popular in your niche? What are the most important head keywords you’d like to rank for? You should write a long, kick-ass article about each of these keywords. Those will be your most essential articles, or in other words, your cornerstone content. You should give those articles a prominent place on your site.

After you’ve written those beautiful cornerstone articles, write lots of blog posts on sub topics of that main topic and always link to your cornerstones. That way, you’ll be telling Google exactly what the most important articles on your website are.

Keep reading: ‘What is cornerstone content?’ »

Write that first post

Take some time to do keyword research and to think about site structure. But don’t take too much time. Just write that first post! Put pen to paper and just do it. Your blog starts with the very first post. That post doesn’t have to be perfect, it just has to be published. Need some help to get started? Check out our 10 tips on how to make your post awesome.

Pictures and videos

Writing blog post is more than writing a nice story; a successful blog has pictures and videos as well. Every post should show at least one image. Taking nice photos yourself is a great way of creating images and making short videos is a really good blogging strategy as well. Especially if you’re blogging about (aspects) of your own life, photos of it are a necessity.

Read on: ‘Images for blogs’ »

Optimize for the search engines

Before publishing your post, optimize it using Yoast SEO (on WordPress of course, but on Magento and TYPO3 now too!). Don’t forget to create an awesome SEO title and a decent snippet. Finetune your text. Make sure your text is both readable as well as SEO-friendly.

Read more: ‘How to use the content & SEO analysis of Yoast SEO’ »

Promote your blog

Using social media is the best way to reach and grow the audience of your blog. That’s why your blog should have a Facebook page. Sharing your posts on Facebook is a good marketing strategy. Don’t forget Instagram and Twitter either!

In addition to the use of social media to promote your blog, we advise you send out a digital newsletter. Let people sign up for it and send out emails with your latest blog posts and some other fun facts.

Keep reading: ‘Marketing your blog’ »

Stick with it!

The most important thing to start a blog – besides setting up your new blog – is to write that very first blog post. Once you’ve written that first post, your blog has started. You should keep on writing blog posts to make it successful, so try to determine a frequency to publish new posts. You don’t have to blog every day, once a week or maybe even once in every two weeks would be a nice frequency to start with. Find a frequency you can stick with! Your audience will know what to expect, if your blogging frequency is stable.

Read on: ‘Blog SEO: make people stay and read your post’ »

A few weeks ago, I went to my first proper WordCamp, in London. I went as a designer, and I wasn’t expecting to learn very much, but spoiler warning: I was wrong. In this post, I will explain why going to a WordCamp is worthwhile as a designer, why WordPress needs more designers, and how designers reading this can start applying their skills to the WordPress design right now.

Wordcamps are not just for programmers and bloggers

You may have noticed I said ‘proper WordCamp’ in the opening, because technically my first one was WordCamp NL last year, but I’m not counting that one since I only went because Yoast had a booth there. And back in 2016, I didn’t think I had much business being at a WordCamp neither. Not because I thought I knew everything, but precisely the opposite; I hardly used WordPress. I wasn’t writing content, I just used it to upload comics I had drawn. Terms like conversion rate and cornerstone content didn’t mean much to me. It all seemed very technical. And especially the thought of contributing to the core of WordPress seemed very daunting (even writing my own theme took me ages). But WCLDN17 proved that I was wrong about all these things. 

For good SEO, you need a good user experience. Learn about UX & Conversion! »

UX & Conversion from a holistic SEO perspective$ 19 - Buy now » Info

There has never been a better time for design to shine

Almost a year after WCNL16, I became the UX designer at Yoast. I still didn’t know all the intricacies of WordPress, but I was using it a lot more, making sure our stuff integrated well and looked good. So maybe I could get some value out of a WordCamp this time around? I wasn’t sure yet. But off I went to WCLDN17.

Looking at the schedule, there were a lot more talks about design and UX than I had expected; Crispin Read talked about the value of testing and hard data over opinions; Sarah Semark talked about how modern web design all looks the same (and why); Graham Armfield talked about how some simple design measures can make sure your site is accessible to almost everyone; and Dave Walker‘s talk was especially interesting to me, because he’s also an illustrator using WordPress. It was clear that design was coming to the forefront, and rightly so.

This was all good info for me to apply at Yoast, but that I could be of value to WordPress was an unexpected discovery during Contributor Day.

WordPress needs designers too

Contributor Day is meant to focus the attention of everyone at a Wordcamp towards improving WordPress in some way. Naturally, I sat down at the Design table, and there I met Tammie Lister. She is a UX designer at Automattic – that’s the company behind WordPress.com, Akismet, Gravatar, WooCommerce, and Simplenote (which I drafted this in!). She was easy to talk to, and very enthusiastic about design. But more importantly, she had prepared a few simple tasks for us to tackle that day. It made my entrance into the whole WordPress ecosystem pretty smooth.

My chosen task was to make a mockup for the mobile image editor; Something had gone really wrong in there, lots of overlapping panels and redundant buttons. By simply designing a fix in Photoshop, I helped move this problem closer towards being solved.

In doing so, I started to understand why Tammie kept wishing that more designers would start to look at WordPress itself. There are many design issues like this hanging around, waiting for a designer to solve them. Doing so may not seem like a big contribution, but WordPress is used by nearly 80 million sites – that’s almost 30% of the web. So whatever you end up doing, it’s guaranteed that at least a few people are going to be happy with it.

And I can understand why designers maybe don’t flock to this calling. Getting started can seem daunting – I was a prime example of this mindset. If that’s you too, then read on, I’ve outlined three simple steps to get you started.

Ways a designer can start improving WordPress

If you use WordPress and like designing interfaces, these are some quick ways to combine those two passions:

1. Go to a Contributor Day.

This may seem like a big first step, but I promise you it’s not. You’ll get set up way faster than you would at home by yourself, there are tons of people who can help, and everyone is super nice. I would have never known where to begin if it wasn’t for Tammy’s guidance. There are tons of WordCamps all around the world, so guaranteed that there is one near you and within your budget. If not, perhaps you’re lucky like me and your company works with WordPress, get them to send you out to one!

2. Join the design channel in the WordPress Slack.

I could tell you to go to make.wordpress.org/design, but to be honest that site could use a UX update itself. No, I feel like it’s better just to get in touch with the people on the frontlines of WordPress design on Slack. Slack is a chat app, and you can join the WordPress team on there by going to this page. And when you’re in, simply introduce yourself in the design channel and ask how you can help, and somebody will get you started.

3. If you’re not a designer…

…show a passionate designer some of the issues on this list. Hopefully, there’s a good chance they’ll get triggered to fix these little design problems. Sometimes even just posting feedback is enough to get the ball rolling again. Together with this article, I’m sure they can take it from there.

Bonus: Submit design tickets

If your own projects are keeping you busy enough (and I can relate), here’s a really simple way you can still help out: for every weird design issue you encounter, just make a ticket on the site I linked above. Leave the work to others, but at least let them know what they should fix. You’re helping them out, and when they fix it they’re helping you out. Everybody’s happy.

So if all this has motivated you to contribute your design expertise to WordPress: great! I hope to see you at a WordCamp or on Slack someday. Together, we can make WordPress even better, for everyone.

Photo by the talented Pradeep Singh.

Read more: ‘WordPress Core Contributions’ »

Do you want to set up a brand new website or move your website to a new host? Choosing a web host can be hard, because there are thousands of hosting companies out there. So it’s a tough decision to make, but a very important one too. When you’re comparing various hosting aspects, should you consider the location of the web host too? Is the geographic location of their web server important for SEO? Hear what we have to say about this, in this Ask Yoast.

Gerardo Garcia emailed us, asking:

“Do you consider the location of the web server as something important for SEO?”

Check out the video or read the answer below!

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

Yoast SEO for WordPress pluginBuy now » Info

Impact of server location on SEO

“Gerardo Garcia is from Spain and he has found web servers in Germany and England that are cheaper than the ones in Spain. He’s wondering if the location of a web server is important for SEO.

First of all, no, not really. But that’s not the entire truth. Because for your visitors you want the most speed, and you’ll get the most speed by hosting as close as possible to them. And you can achieve that by hosting your site in the country where your visitors are coming from.

We’re Dutch, but our main servers are in the US. Why? Well, because the majority of our visitors are from the US. We also have a server in Europe, because we get many visitors from Europe too. So think about that. Of course, we are on a slightly more expensive set up than you would probably be, and need to be. So focus on the country you think is the most valuable.

To be honest, if you’re looking at price too much for you hosting, you probably not doing yourself any service anyway. Don’t go for the cheapest hosting, go for the best hosting. Paying a couple of bucks more per month, really is worth it, When your site is down otherwise, stuff is just not working.

So, I would suggest going with a host that has servers in Spain or at the very least have people that can service you in Spanish in Spain. And then, whether these servers are located in Barcelona or in London, the technical existence of these servers doesn’t make too much of a difference.

Good luck!”

Ask Yoast

In the series Ask Yoast we answer SEO questions from followers. Need some advice about SEO? Let us help you out! Send your question to ask@yoast.com.

Read more: ‘Yoast’s WordPress hosting list’ »

This is a rather special release, as it’s a project that’s close to my heart. It’s not a full-featured release, however, it is just necessary as a regular release. In Yoast SEO 4.5, we are urging site owners whose sites run on servers with an outdated version of PHP to update to a more recent version. To move the web forward, we need to take a stand against old, slow and unsafe software. Updating to PHP 7 will give your site an enormous speed boost. In this post, you’ll find out why we’re showing this notice in WordPress and what you can do to upgrade PHP.

Please read this post to get the complete picture of this move »

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

Yoast SEO for WordPress pluginBuy now » Info

Why this move?

WordPress is built on PHP. This programming language takes care of the heavy lifting for the CMS. WordPress was always built with backward compatibility in mind, but we’ve reached a point where that’s just not feasible anymore. WordPress needs a minimum of PHP5.2 to function, but that version will not get updates, fixes or patches. This makes it inherently insecure. If you are on an old version, Yoast SEO 4.5 will show you a message in the backend. Please update to at least 5.6, but rather PHP 7 to take advantage of all the awesomeness of this new version. Not just for you as a user, but for developers as well.

The why is three-pronged: security, speed, and future-proofing. PHP 5.2 hasn’t been updated for years and has serious issues. PHP 7 is lightning fast, up to 400% faster than 5.2. You might even regard this as a green move; you can use 50% fewer servers to get the same results from PHP 7. Last but not least, developers can finally use all the modern technologies to bring WordPress to the next level.

We understand this move might be annoying for some, but it is necessary to speed up the development of the web and to bring it some must needed security. That being said, updating your PHP version is rather easy.

How can I update my PHP version?

How to update your PHP version depends on your host. Most hosts have an article on their site explaining how to update PHP yourself. Here’s the one from SiteGround, or WP Engine. Go to your hosts’ website to find out more on how to go about this. If you can’t find the information you need, please contact your web host. We have made an example email that you can edit and send to your hosting company.

Don’t forget to backup your site before doing any major changes!

And how do I choose a different hosting company?

It might be entirely possible that your host is not willing to work with you. Maybe you just don’t feel valued at your current host or it could be that their future plans don’t fit yours. If so, think about moving web hosts. A web host provides the engine your site runs on and that better be a damn good engine. To help you with your quest for a well-regarded and forward-thinking web host, we’ve compiled a list of hosting services that got the Yoast stamp of approval.

Read more: ‘Whipping your hosting into shape’ »

We’ve seen it happen so often. You have a great blog, and at some point, you decide to go for a new look and feel. There are a couple of things you’ll look at, usually in the order: layout / look and feel, usability, and optionally, room for advertising. If the theme meets your needs in all two or three of these points, you might download and install it. If that sounds familiar, this post describes how to find the perfect WordPress theme!

A theme has quite a few things to take care of, and a lot of themes miss out on these. This overview should help to keep you out of trouble when you’re looking for a new theme. If you’re thinking of installing a new theme, please give the following points a thought. Keep in mind; your new theme should be accessible, compatible, customizable, integrable and standards compliant.

Define your needs

Whether you are in the market for a free theme, a premium theme or want to hire a developer to build one especially for you, the first step is always the same: define your needs. Write down what the theme should do, now and in the future. You might not need an eCommerce shop at this time, but what about in a year from now? What should your site look like? Which pages do you need? What types of content are you planning to publish? Once you have a clear picture of the requirements, you have a better chance of finding your dream theme.

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

Yoast SEO for WordPress pluginBuy now » Info

Find a trusted reseller or developer. How’s the support?

Should you build a theme yourself? Or will a general free theme do? The discussion on whether a premium theme is better than a free theme continues to rage on. Both sides have their merits. There are loads of crappy free themes, but there are just as many crappy premium themes. What you should do is find a reseller or developer that you trust. Look for social proof; how many reviews does a theme get? Is there an active message board? When did it receive its last update?

In general, every theme on WordPress.org underwent scrutiny, so they are safe to use. But that doesn’t mean they’re awesome. Theme resellers offer loads of premium themes in varying degrees of awesomeness. But just because you pay for them, doesn’t necessarily make them better than free themes. In addition to that, since you only receive the files when you pay for a theme, there’s no way to check the quality upfront. Despite social proof, it’s still a leap in the dark.

How flexible is the theme?

A static theme won’t do you any good when you want to change the page layout in a couple of months. Make sure to choose a theme that is flexible in its appearance as well as its functionality. Don’t choose a design that screams for full-width images when you only need a well-presented place to write your poetry. Check what happens to a theme when you turn off all massive images; does it still function? And is it possible to change colors, fonts and other visual elements?

Your theme should have ample room for widgets, plus it should support featured images and offer multi-language support. Lots of themes have a page builder on board; these help you construct your bespoke layout. But, this is something you should be careful with because these could generate less than stellar code that hinders your SEO.

Which post and page templates does the theme support?

Another way to keep things flexible is for a theme to offer multiple posts and page templates. That way, you could start off using a basic template with a main content area and a left sidebar, but have the flexibility to change to a full-width content area or one of the many other options. If a theme has only two choices, that might become problematic in the future. Pick a theme with enough sensible templates.

Does it function as a parent/child theme?

Parent and child themes are a great combo. If you use any of the theme frameworks like heavy hitter Genesis, you know how powerful these are compared to regular themes. A child theme gets its functionality from a parent theme. So if you’re making changes to your child theme, the parent won’t see these. You won’t break the parent theme if you make a mistake. The same goes for updates; if you update your parent theme, which happens often, it won’t wipe the changes you’ve made to your theme because it’s a child and doesn’t contain the functionality.

Whether you need a theme framework depends on your needs. Almost all WordPress projects will benefit from a theme framework, but it might be overkill if you only need a tiny amount of its functionality and you know exactly what kind of theme you need.

Watch out for theme bloat

Many themes are bloated, and this will increase loading time. If the developer of a particular theme included everything but the kitchen sink, you might get a feature-complete product but an insanely complicated one as well. Try to find a theme that offers everything you need, instead of everything there is. Your theme should be lean and mean. See the next point.

Check site speed and mobile-readiness

In this day and age, mobile-friendliness is imperative. In addition to that, your site and its theme should load as fast as possible. Choosing a lean and mean theme will certainly help in this regard. Check the responsiveness of a theme and run a Google mobile-friendliness test. You could also enter the address of the theme’s demo site in Google’s PageSpeed tool to see if there are particular loading issues. However, this is just an indication, since you can only judge the real loading speed of your theme when it’s running on your server.

Is the theme’s SEO in order?

While Yoast SEO fixes a lot of WordPress’ SEO issues, a good theme helps a lot. Most WordPress themes will claim SEO-friendliness, but make sure to check it. Find out if the theme’s code is nice and clean or an intangible mess. Has it been updated recently? And will it be supported in the future? How many JavaScript libraries does the theme depend on? Does it support Schema.org structured data? If you’re eyeing a free theme, make sure there are no hidden links to the developer’s website, as this can hurt your SEO efforts. In general, keep Google’s Webmaster Guidelines in mind when hunting for SEO-friendly themes.

Is the theme’s code valid?

Many a theme author is more of a designer than a coder, and thus they sometimes hack around until it finally looks the way they want, without bothering to check whether the code they’ve written is valid HTML. If it’s not, current or future browsers might have issues rendering the content correctly. You can check whether the code is valid by using the W3C’s validator.

Test, test, and test again

Once you’ve chosen your favorite new theme, it’s time to kick it into gear. Start with a development setup to test your new theme through and through. Run every type of test you can think of. This might be a security check with the Sucuri plugin or a theme check with the Theme Check plugin. Load your site with dummy data from wptest.io to see if every element is represented and functioning. Run pagespeed and mobile-friendliness tests to see if problems arise. Fix the issues, or find a new theme.

Get the most out of Yoast SEO, learn every feature and best practice in our Yoast SEO for WordPress training! »

Yoast SEO for WordPress training$ 99 - Buy now » Info

Bonus checks

That’s just to get you going. There’s a lot of stuff you can check before you install your brand-new theme. Start with these three checks, if you will:

Hooks

WordPress plugins use so-called “hooks” to be able to perform their designated tasks. These hooks allow for instance to add extra output, tracking codes, etc. A lot of issues with plugins will arise for you when a theme author forgets to add these hooks. This is how to check for them:

1. In header.php, it should have a small piece of PHP code that looks exactly like this wp_head(); or this do_action('wp_head');, usually just before a piece of HTML that looks like this: </head>.

2. In footer.php, it should have another small piece of PHP like this wp_footer();, or this do_action('wp_footer');

3. In comments.php and/or comments-popup.php, it should have a piece of code like this: <?php do_action('comment_form', $post->ID); ?>, just before the </form> HTML tag.

Template files

Another wise thing to do when you’re changing themes is to compare theme files. If for instance, your current theme has an author.php file, which contains the template for your author profiles, and your new one doesn’t have that, that might be an unpleasant surprise when you install the theme. The files you should be checking for in your old and new theme:

  • home.php: the homepage template.
  • single.php: the template for single posts.
  • page.php: the template for pages.
  • category.php: the template for category indexes.
  • author.php: the author template, used when someone wants to find all posts by a certain author.
  • date.php: the date template, used when someone tries to look at for instance a certain month of posts on your blog.
  • archive.php: this template is used when either category.php, author.php or date.php isn’t there.
  • search.php: used when someone searches on your blog, a very important template to look at if you’re concerned about usability, and whether people can find posts on your blog.
  • 404.php: used when WordPress can’t find a certain post or page, this is a very important template file to have!

How is your theme handling titles?

You should check how your current theme is handling page titles in the file header.php. You can find it within the <title> HTML tags. If the title tag differs, you might want to check out why and what happens when you enable your new theme. Sometimes it’s for the better (for instance, because it turns around blog description and page / post title), but you have to make sure up front!

It will probably look something like this:

<title><?php bloginfo(‘name’); ?> <?php wp_title(); ?></title>
If it does, you’ll be a lot better to change it to:

Now Yoast SEO can take care of all the titles. We have a great article that you can read if want to know more about crafting good titles.

If your theme does all of this correctly, you should be quite ok. Good luck with your new theme, and if you have any tips on other things to check, please share in the comments!

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

Let’s say you own the website http://www.some-example.com. At one point, you might like visitors to go to the non-www version instead of the www version of your domain. In addition to this, if you follow security best practices, you might want to switch from HTTP to HTTPS. What should you do if you want to make both these changes? You probably figured out that you’ll have to redirect traffic from your current domain to your preferred domain. But what’s the best way to do this? Is there a preferred order?

We received an anonymous question for this Ask Yoast:

“I want to move my site from www and HTTP to non-www and HTTPS… what should I do?
1. Strip www and then force HTTPS;
2. or force HTTPS and then strip www?”

Check out the video or read the answer below!

Our SEO for WordPress eBook guides you through every aspect of Search Engine Optimization »

SEO for WordPress$ 25 - Buy now » Info

How to switch from HTTP to HTTPS and www to non-www?

Check out the video or read the answer below!

You should do both at the same time. You should redirect the HTTP link straight to the HTTPS version without the www. Don’t try to do that with two 301 redirects, you should do that in just one 301 redirect.

Forcing HTTPS is something that you need to test really well. There are all sorts of things in your site that probably aren’t HTTPS ready that you should know of upfront. I know it was a lot of hard work to get yoast.com to HTTPS and we don’t even have ads. Especially ad services can be really tough to get working on HTTPS. But you should do it in one go. So it’s really secret option number three: redirect from one to the other straight away, and don’t think about anything else.

If you really can do HTTPS for everything and it works fine, make sure to add an HSTS: ‘Strict Transport Security Header’, which forces everything to be over HTTPS. And then, if the browser sees an HTTP link to your domain in the content somewhere, it will still automatically grab the HTTPS version, thus the right one.

Good luck!

Ask Yoast

In the series Ask Yoast we answer SEO questions from followers. Need some advice about SEO? Let us help you out! Send your question to ask@yoast.com.

Read more: ‘How to remove www from your URL’ »

In this post I explain why Yoast SEO will soon warn people whose website runs on an older, unsupported, version of PHP to upgrade their PHP version. We’re doing this mainly to improve the security and speed of those websites.

This post is long, but I’ll explain:

  • what the problem is;
  • why we want to fix it;
  • why we burden the user with it;
  • and how web hosts can work with us.

PHP? Versions? What are you talking about?

WordPress, (like Yoast SEO), is built in large part in a programming language called PHP. This language, as WordPress itself, has gradually improved over time. Web developers all over the world are enjoying the new features that newer versions of PHP have brought. Also, more importantly, everyone all over the world enjoys the increased security these new versions bring. Unfortunately, WordPress developers do not get to join in.

Compared to WordPress, PHP has a rather aggressive update path. PHP 5.6 will receive security patches for just under two more years, but nothing else, and no other PHP 5 version receives security updates. PHP 7 is the future (and boy is it nice and fast).

Ever since July 2011, the minimum PHP required for WordPress is PHP version 5.2. Here at Yoast, we think it’s time for WordPress to move that requirement up to PHP 5.6.

Why do you care so much?

At Yoast we care about a lot of things, but two things in a very particular order: user happiness first, developer happiness second. A user is happy when he or she has a fast, easy to install, secure content management system like WordPress to build a site in. A developer is happy when he or she can use a modern language and modern tooling to build software with.

Security

The single most important reason for us to want to increase the minimum requirement is security: PHP versions 5.2 through to 5.5, while still actively in use on millions of sites, no longer get security updates. Some Linux branches and web hosts still backport security fixes from newer PHP versions to older versions, but that’s not something we, as a community, should rely on.

This security concern is not a theoretical concern. We have seen time and time again that the number one reason sites get hacked is because of outdated software. The last release of PHP 5.2 is 6 years old, and several major security issues have been found in it since. WordPress has automatic updates for security updates built-in for exactly this reason. Why would we push people to update WordPress and its plugins regularly, but let the PHP version fall behind?

Speed

Another big issue is speed. WordPress is sometimes said to be slow, but it actually doesn’t have to be slow at all. If it’s running on old versions of PHP however it is, most certainly, slow. PHP 5.2 is more than 100% slower than PHP 5.6, and a whopping 400% slower than PHP 7 (source). If you’re getting a bad reputation because you’re allowing old stuff to stay around, maybe we shouldn’t allow the old stuff to stay around so much?

Modern programming language

PHP 5.2, which was released November 2nd 2006, is no longer a modern language. This makes developers unhappy because they’re missing many of the cool features every other modern language has.

As WordPress is gaining popularity, something else is happening because of this: more and more developers are turning their back on WordPress because it’s moving too slowly. Developing themes or plugins for WordPress, where PHP 5.2 is required, is a hassle and thus not as much fun. This is becoming a problem: we’re literally losing good developers. Those developers could benefit the entire community, but we’re missing out because we’re not getting with the times. Over time, losing developers means other products will move faster, and WordPress will lose marketshare.

Why isn’t WordPress simply upping the requirements to PHP 5.6?

There is a long and ongoing discussion in the WordPress community about upping the requirements for PHP to 5.6. The problem lies therein, that for a user, upgrading their PHP version is non-trivial in a lot of cases. It’s not something we want to burden a user with. So we’ve been waiting and waiting for web hosts to do their work. We’ve been waiting, literally, for years. Unfortunately, it turns out, not all web hosts are created equal. Not all of them pro-actively upgrade their customers to newer PHP versions.

As I type this, the WordPress stats page says 5.6% of websites is using PHP 5.2, 15.6% is using PHP 5.3, 23% is using PHP 5.4 and 15.4% is using PHP 5.5. That means almost 60% of WordPress installs is running on an unsupported version of PHP. So much for web hosts doing their work.

Because web hosts are not upgrading PHP, we have decided to start pushing this from within plugins.

Why don’t web hosts update PHP?

When you’ve seen all the above, you’re probably wondering why web hosts don’t pro-actively update their customers PHP versions. Well the good news is: lots of them do. If you’re on one of those hosts, and you’re running PHP 5.6 or higher: good on you! Other hosts though, seem to be intent on doing as little as possible while still keeping the customer.

We’ve heard all sorts of reasons from hosts to not want to upgrade PHP. The only one we understand to a certain extent is that they don’t want to break your site. Some software running on the same server as your site may not support newer PHP versions, probably because that software needs to be upgraded too. But in all honesty: you shouldn’t have to worry about that. We think a host should upgrade your PHP for you.

What is Yoast going to do?

Combined, all of the above reasons make us very intent on moving WordPress forward. Unfortunately, we don’t have the power to decide on minimum requirements. So we’ve decided to throw our weight behind this in a different way.

As of Yoast SEO 4.5 we will start showing a notice on the WordPress dashboard to administrators of sites running on PHP 5.2.  This notice will be big, ugly, and non-dismissible. In this notice we will explain why the administrator should upgrade the PHP version of the site.

If a web host integrates with our project, which we’ve called WHIP, the host can add some information about how to upgrade right within the notice. See the Github repo for info about how to integrate.

The notice will also encourage people to contact their host if they don’t know how to upgrade their PHP. Yes, this could be painful for some hosts. This notice is deliberately intended to make them work.

As a last resort, if a users host does not cooperate, we recommend the user to change to better hosting. We will provide a link to a page we’re building right now here at Yoast, with hosts that we’ve vetted. When we say we’ve vetted them, we mean it: we have verified that Yoast SEO works well on their servers and that they put new customers on modern PHP versions. The page isn’t ready yet, but it’ll be cool and we will not be using affiliate links on that page. This isn’t about money.

Does this stop with PHP 5.2?

This most probably does not stop with PHP 5.2. We will release it and watch closely what’s happening. If it works, we will start pushing the same notice for PHP 5.3 a few weeks later, and so on. We fully intend to see if we can get the minimum version up to 5.6.

I’m a theme / plugin developer, can I join?

You can of course join this endeavour! Our WHIP package is open source and very easy to implement. Put it in your code following the instructions on the repository and you too will be part of this move forward! Of course your feedback is highly appreciated on that repository too.

For developers that want to integrate WHIP into their plugin, we will make it possible to link to the WordPress.org hosting page. Those hosts are all PHP7 ready too.

Why are you telling us now?

We’re telling you all this now because we fully hope that we have to show this notice to as few people as possible. Upgrade your PHP versions. If you’re a host, integrate with our messaging system and start proactively upgrading your customers PHP versions. With 6.5 million active installs of Yoast SEO, you’re bound to have a lot of customers that are going to start asking for help. You might as well get started.

Once your website starts growing and you continue writing blog posts, you’ll eventually end up with archive pages. These archive pages can be based on taxonomies, categories, custom post types and even dates. WordPress has built-in support for these archive pages, however there are some small drawbacks. In this post, I’ll explain to you how you can use these archive pages in a better way and ensure they actually add value to your blog.

Default archive pages

WordPress supports automatic creation of archive pages. This ensures that you don’t have to think about making them by hand. Sadly, these pages tend to only consist of a list of posts based on a category / taxonomy / post type without any further introduction. This means that your visitors are left stranded on a page without much explanation about what they’re looking at. The chances of your visitors finding what it is they’re looking for are terribly slim in this case and usually visitors will decide to leave that page immediately.

A simple solution to this problem: Add an “introduction” of some sorts to the page. A clear header can already greatly help out your visitors, but for extra important pages we recommend adding a description as well to better highlight the content that can be found on that archive page.

Before avidly writing these introductions, lets ensure they are properly displayed on the pages.

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

Site structure training$ 99 - Buy now » Info

Adding the introduction

Category, tag and custom taxonomy archives

If you want to add an introduction to a category, tag or custom taxonomy archive, you can easily create a custom template file to override the default ones. For example, you can create a `category.php` file in your theme to override the default template file. If you want more information on how the templating hierarchy works in WordPress, just look at this infographic before continuing.

In your newly created `category.php` template file, add the following snippet above the WordPress loop:

if ( ! get_query_var( 'paged' ) ) {
  echo wpautop( term_description() );
}

If you want to support shortcodes, try this instead:

if ( ! get_query_var( 'paged' ) ) {
  echo wpautop( apply_filters( 'the_content', term_description() ) );
}

The above code takes the title and description that you added in the WordPress backend for the category and displays it on the category archive page. This method also applies to tag and custom taxonomy archives.

If you use the Genesis theme, you won’t have to do any of the above alterations. Luckily, Genesis already has built-in support for this type of thing, so it’s as easy as ticking two checkboxes in the theme settings.

Genesis Archive Settings

Or if that doesn’t work, you can just add this to your Genesis child theme’s functions.php:

function yoast_term_archive_intro() {
 if ( ( ! is_category() && ! is_tag() && ! is_tax() ) || get_query_var( 'paged' ) ) {
   return;
 }

 echo '<h1 class="entry-title">' . single_term_title('', false) . '</h1>';
 echo '<div class="entry-content">' . wpautop( term_description() ) . '</div>';
}

add_action( 'genesis_before_loop', 'yoast_term_archive_intro', 20 );

Of course, you are free to expand the above function to add some more CSS classes to further style the output.

Custom Post Type archives

Altering custom post type archives is a bit trickier than overriding default tags, categories and taxonomies. You can add a new file called `archive-{posttype}.php` where you replace the `{posttype}` portion with the name of your custom post type. By then adding the following code to said file, you can achieve a similar result:

if ( ! get_query_var( 'paged' ) ) {
  $post_type = get_post_type_object( get_post_type() );
  echo '<h1>' . $post_type->labels->name . '</h1>';
}

Now for the hard part. Because custom post types don’t have any type of form in the WordPress backend, it is impossible to easily add a description to these custom types nor is there a recommended way of storing the data. One method you can use when you use a child theme in Genesis, is by expanding the `functions.php` file with the following code:

function yoast_cpt_intro() {
  if ( ! is_post_type_archive() || get_query_var( 'paged' ) ) {
    return;
  }

  $post_type = get_post_type();
  
  if ( genesis_get_option( $post_type . '-title', 'child-settings' ) ) {
    echo '<h1>' . genesis_get_option( $post_type . '-title', 'child-settings' ) . '</h1>';
    echo wpautop( genesis_get_option( $post_type . '-intro', 'child-settings' ) );
  }
}

add_action( 'genesis_before_loop', 'yoast_cpt_intro', 20 );

As you may have noticed, the code example uses two custom genesis options: `$post_type . ‘-title’` and `$post_type . ‘-intro’`. These can be defined in your Genesis child theme. You can read how to do that over here.

Preventing duplicate content issues

To avoid duplicate content issues, the previous code snippets make use of a simple check to ensure we’re not on a paginated page. The `get_query_var( ‘paged’ )` function call determines whether or not we’re on a paginated page.
If it detects the query variable `paged`, we can assume that this page is one in a series of multiple pages and thus should not display the description.

Since the introduction of rel=”next” and rel=”previous”, websites that have paginated archives and whom have properly implemented the `rel=”next”` and `rel=”previous”` attributes, will be receiving more visitors on the first page in the series. Nevertheless, you should not solely rely on this, but use it in conjunction with the `get_query_var( ‘paged’ )` option.

Styling the archive introduction text

To ensure that people actually read the introduction text, it’s very important to add proper styling to the page. After all, these introductions need to be made with humans in mind first, SEO second. Don’t fall in the trap of styling it the same way as your posts as this might result in visitors not understanding that the text is actually something entirely different from your content. A good example can be seen in the following screenshot:

Conclusion

Based on the information shared in this post, you should be able to make clear archive pages that help your visitors understand the content they are looking at. Additionally, you should be able to create these archive pages for custom post types. We look forward to seeing some of your beautifully styled archive pages.

Read more: ‘Site structure: the ultimate guide’ »

In the past we received a lot questions regarding optimizing your WordPress SEO URL / permalink structure. Questions ranging from whether you should have the category in your permalink structure to the length of your slugs. In this post, we’ll address some of these questions and attempt to give you a better understanding of your permalink structure.

The ideal WordPress SEO URL structure

At Yoast, we recommend using a simple and clear permalink structure. Ending your URL with the post name is the preferred method and optionally you can prefix the post name with the category, which results in one of the two following permalink structures:

/%postname%/

And with the category prefixed:

/%category%/%postname%/

For an added bonus, we recommend adding your main keyword somewhere in the post’s name. When checking out the snippet preview in our plugin, you’ll see your keyword emphasized in the URL if it’s been detected in your slug (see image below).

What about using dates?

Using dates in your URL never had many benefits. When you add dates to your permalink structure, you automatically ‘date’ your posts. People will naturally look for posts with a more recent date, assuming that they contain the best information. However, sometimes older post can hold very valuable information, but won’t get the same amount of clicks due to their age.

Should I use the category in my permalink structure?

If your domain name is nice and short and you use short, yet descriptive category names, you can easily include a category in your permalink structure which can benefit your website, but beware: if you end up with a lengthy slug and category name, it will make sharing the URL more difficult and won’t have much added value in Google.

If you decide to use categories in your permalink structure, make sure that you only select one category per post. For some more information regarding using categories in your permalink structure, I advise you to watch the following video by Matt Cutts.

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

Yoast SEO for WordPress pluginBuy now » Info

Should I add .html to my permalink structure?

In terms of SEO and ranking, there is little benefit to keeping the .html extension present in your URLs. However, in the video below, Matt explains that there might be some other advantages to keeping the file extensions present in your permalink structure.

The discussion whether or not you should forcibly add .html (or any other extension) can be ended very quickly: Don’t do it. It won’t help you and if you add certain extensions such as .exe, it can actually hurt your rankings.

My blog is in Google News. Don’t I need numbers in the URL?

The short answer here is: no. Back in the day, Google News required you to use a three digit number in your URLs in order to be included in the News index. A way around this was to have a separate XML sitemap. However, since September 2015, both the three digit unique number and XML sitemap are no longer required.

Should my focus keyword always be the first keyword in the URL?

It might help slightly, but if your focus keyword is present in the first few words, you’ll be fine. Matt explains this at great length in the following video.

How many words should I use in my slug?

In this interview with Matt Cutts, Matt mentions the following regarding the length of your slug:

If you can make your title four- or five-words long – and it is pretty natural. If you have got a three, four or five words in your URL, that can be perfectly normal. As it gets a little longer, then it starts to look a little worse. Now, our algorithms typically will just weight those words less and just not give you as much credit.

Should you change your URL structure for better SEO?

You might expect that the answer to this question would be a simple yes. However, if you’ve been blogging for a while, you might not want to make any drastic decisions. Have you been using dates in your permalink structure for the past few years? Then it might be wise to not switch to a structure without them. If you only just started then switching won’t cause you much harm and might even be a huge beneficial step.
However, if you’re still using the “old style” urls (?p=) then it’d be wise to switch regardless of how long you’ve been blogging. This will greatly improve your blog’s potential to be found in Google’s search results.

If you do decide to get rid of dates in your permalink structure, you can add the following redirect to your .htaccess file (if you’re on Apache) to ensure that the old URL (/yyyy/mm/dd/%postname%/) points to the new one:

RedirectMatch 301 /d{4}/d{2}/d{2}/(.*) https://yoast.com/$1

For Nginx, you can use the following snippet in your site configuration:

location ~ /d{4}/d{2}/d{2}/(.*) {
rewrite ^(.*)$ https://yoast.com/$1 permanent;
}

The perfect WordPress SEO URL

Overall, permalink structures won’t differ much from website to website if done correctly. We advise that you make sure your permalink structure is properly set before avidly writing posts. If you do decide to change your permalink structure over time, make sure you properly redirect users from the old structure to the new one.

Read more: ‘How to change your WordPress permalink structure’ »