Matt Mullenweg Unveils Gutenberg Roadmap at WCEU, WordPress Agencies and Product Developers Sprint to Prepare

photo credit: WordCamp Europe Photography Team

At his WCEU keynote address in Belgrade, Matt Mullenweg laid out a detailed roadmap for Gutenberg to land in WordPress 5.0 within the next few months, garnering mixed reactions from attendees. Gutenberg’s timeline is one of the most pressing questions for those who work in the WordPress ecosystem.

The Gutenberg team has sustained a rapid pace of development over the past year with 30 releases since development began. There are currently 14,000 sites actively using the plugin and Mullenweg plans to roll it out to users in the near future. He announced that the WordPress 5.0 release could be ready as soon as August. In the meantime, the Gutenberg team will continue to refine its current features according to the roadmap Mullenweg outlined in his keynote:

June 2018

  • Freeze new features into Gutenberg
  • Hosts, agencies and teachers invited to opt-in sites they have influence over
  • Opt-in for wp-admin users on
  • Mobile App support in the Aztec editor across iOs and Android

July 2018

  • 4.9.x release with a strong invitation to install either Gutenberg or Classic Editor plugin
  • Opt-out for wp-admin users on
  • Heavy triage and bug gardening, getting blockers to zero
  • Explore expanding Gutenberg beyond the post into site customization

August 2018 and beyond

  • All critical issues resolved
  • Integration with Calypso, offering opt-in users
  • 100k+ sites having makde 250k+ post using Gutenberg
  • Core merge, beginning the 5.0 release cycle
  • 5.0 beta releases and translations completed
  • Mobile version of Gutenberg by the end of the year

Mullenweg said he hopes to increase Gutenberg usage to 100,000 sites with 250,000 posts made over the next few months. will be instrumental in that goal with a call to action for opt-in that will appear on several hundred thousand sites. In July, will switch the Gutenberg editor to opt-out. Mullenweg said he hopes to gather data from how users respond, especially those who have third-party plugins active on their sites.

Switching between editing posts in the mobile apps currently breaks but Mullenweg anticipates this will be resolved by August, with full mobile versions of Gutenberg available by the end of the year.

Mullenweg opened his keynote by drawing attendees’ attention to a new “Public Code” link in the footer of This campaign, organized by Free Software Foundation Europe, aims to require any publicly financed software developed for the public sector be made available under a Free and Open Source Software license.

Mullenweg also announced St. Louis, MO, as the next location for WordCamp US in 2019-2020. The local WordPress community in the city spans two states with members from both Missouri and Illinois who have hosted seven WordCamps since 2011.

Developers and Agencies Double Down on Gutenberg Preparation, “Playing for Keeps”

The process of getting products and client websites ready for Gutenberg is a leap for nearly every company and freelancer invested in the WordPress ecosystem. Mullenweg said he cannot guarantee a specific date for release but thinks that “5.0 is going be ready within a relatively short time frame.”

Although many WCEU attendees expressed skepticism about the accelerated timeline for Gutenberg’s inclusion in core, most recognize the importance of working towards making their clients and products compatible with the new editor.

Gutenberg technical lead Matias Ventura said it’s too early to tell whether the WordPress community will be ready by the time Gutenberg is included in core. “I think people have already been trying to get ready and we’re already seeing many major sites being launched using Gutenberg,” Ventura said. “From what we’ve seen with plugin authors building compatibility for Gutenberg, it seems there’s already enough momentum going on that it could be achievable.”

Brad Williams, CEO of WebDevStudios, said his company’s team of engineers has been actively preparing for Gutenberg since late last year and is “very excited about what it means for the future of WordPress publishing.” Williams assigned two Gutenberg Leads internally to head up everything related to the new editor and conducted internal training with staff. WebDevStudios also built and released its own Gutenberg add-on framework called WDS Blocks, a framework that includes new custom blocks that many WDS clients use.

“Having a potential release date, even if it’s only a target month, is incredibly helpful,” Williams said. “This gives us a goal to work towards with each of our clients to verify we are ready for the release. I expect the majority of our clients will not enable Gutenberg on release, but we still need to make sure we have an upgrade plan ready for WordPress 5.0. We are working closely with each of our clients so they understand what is coming, the benefits Gutenberg can provide them, and what a potential roll-out plan will look like. We are also making sure any new leads coming in the door are aware of Gutenberg and the impact it will have on their new WordPress project.”

Gary Jones, plugin developer and WordPress engineer at Gamajo, expressed apprehension about the timeline. He also plans to make use of the Classic Editor plugin to opt sites out of using Gutenberg.

“With 737 open issues, I think the August timeline may still be a little short,” Jones said. “That’s only for the ‘critical issues’ to be resolved but introducing such a massive change to the basics of managing content like this needs more than just the critical issues resolved; it needs all of the workflow to be very smooth as well.”

Jones said he doesn’t think the typical rhetoric of getting a ‘1.0’ release out the door applies in the case of Gutenberg. “There’s too much riding on it for it not to make a great first impression for the user base who haven’t been following its progress,” Jones said. “A plugin can have a much quicker release turnaround time for non-critical improvements and fixes than what WP core would have.”

Jones said he plans to wait until the merge proposal before tackling plugin compatibility and will wait until 5.0 is out to start improving the experience for his clients. He said this may require creating custom blocks or installing plugins that add custom blocks clients might need. “By then we’d also know how ACF, Pods. and other plugins we use, and the Genesis theme, are supporting Gutenberg editor (or not),” Jones said.

Jake Goldman, President and founder of 10up, said his company already has an internal mandate that all new public plugins and major plugin updates must have at least “beta” support for Gutenberg. 10up’s Distributor product is already Gutenberg-ready and the company has several Gutenberg-ready plugins and updates expected to ship in the next 1-2 months.

“Clients are trickier,” Goldman said. “We have two big client projects started in the last couple of months that are using Gutenberg, and some pretty complicated custom blocks and extensions. We have a couple of other customers who are curious or in the exploratory phase. Two big client projects have us a bit gun shy about adopting [Gutenberg] as the ‘standard’ on newer projects until it matures a bit more and begins to focus a bit more on the ‘enterprise use case / user stories’ – there are some real challenges with those user stories.”

Goldman also said he was encouraged to hear that Calypso will adopt Gutenberg in the next couple of months, because he hopes it will address some of the confusion and fragmentation issues.

He doesn’t anticipate Gutenberg actually landing in August, however. “I don’t see August, frankly, because I don’t think the core team has a clear vision for ‘how’ an upgrade with Gutenberg will work,” Goldman said. “That said, I suspect Matt is knowingly putting timeline pressure on the team – a bit of ‘if I say August, we can probably hit November’ type mentality.”

Mason James, founder of Valet, said he is confident his clients and products will be ready after testing Gutenberg on hundreds of sites. His team is watching a few products that have compatibility issues but he is hopeful these will be resolved soon.

“The timeline of August seems a bit optimistic,” James said. “I’d be surprised if that is met, but our clients will be in good shape if that happens. We’ve also been sending information to our clients via email, a whitepaper, to try to mitigate any surprises ahead of time.

“We decided last year that Gutenberg was a tremendous opportunity for us to reinforce our value proposition to our clients,” James said. “It’s an ongoing important initiative for us this year; We’re playing for keeps.”

Carrie Dils, a WordPress developer, consultant, and educator, has also jumped head first into getting her products compatible with Gutenberg ahead of the new timeline.

“I’m feverishly working to get an updated version of the Utility Pro theme (my primary product) out the door,” Dils said. “The Gutenberg updates are just one part of a larger overhaul (including a minimum requirement of PHP7 and WP 5.0+). I’ve also made the decision not to incorporate Classic Editor theme styles. All looking forward, no looking back.”

How to Greet Each User With a Custom Welcome Message in WordPress

Do you want to greet each user with a custom welcome message in WordPress? Greeting users with a welcome message can help boost engagement on your website. It can also be used to generate leads and increase sales. In this article, we will show you how to greet each user with a custom welcome message in WordPress.

Greet users with custom welcome message in WordPress

Why and When You Should Greet Users with Welcome Message in WordPress?

Not all websites need to greet users with a custom welcome message. However, if you are running an online store, trying to generate leads, or boost user engagement, then a custom welcome message can be very useful.

There are different types of welcome messages that you can use. The goal here is to offer users a lot of value with each message. For example, you can offer them discounts, live help, encourage them to ask questions, and more.

You can use integrations to connect welcome messages with your email service provider, live chat service, or contact form plugin.

That being said, let’s see how to easily greet each user with a custom welcome message in WordPress.

Method 1. Greet Users with a Custom Welcome Message using OptinMonster

For this method, we will be using OptinMonster. It is the most popular lead generation software in the world that helps you convert website visitors into subscribers and customers.

First, you need to sign up for an OptinMonster account. It is a paid service, but they also offer a limited free-forever plan.

Once signed up, you will be taken to your OptinMonster dashboard where you need to click on the ‘Create Campaign’ button.

Create campaign

Next, you need to choose a campaign type and a template. OptinMonster comes with different campaign types, and you can use any of them to greet users with a welcome message in WordPress.

For the sake of this article, we will be using the slide-in campaign type with Flatland template.

Choose campaign type and template

Next, you will be asked to give your campaign a name and select a website where you want to run this campaign. Click on select website field and then click on ‘Add website’ to add a new website.

Campaign options

After that, click on the ‘Start Building’ button to continue.

OptinMonster will now launch the drag and drop editor where you can simply point and click on any element to edit it. You can add blocks, columns, and elements with text, video, buttons, sign up fields, and more.

OptinMonster builder interface

Simply click on the text fields to add your own welcome message to greet new users. You can also integrate it with your email service provider by clicking on the ‘Integrations’ tab on the top.

Add integration

Next, you need to switch to the ‘Display Rules’ tab to select when you want to display the greeting. OptinMonster comes with a bunch of options that you can use to create less intrusive and highly engaging messages.

Display rules

Once you are finished designing your custom welcome message, click on the Publish button at the top and toggle the ‘Status’ option to live.

Publish your optin

You are now ready to add this custom welcome message campaign to your website.

Switch to your WordPress admin area to install and activate the OptinMonster plugin. For more details, see our step by step guide on how to install a WordPress plugin.

Upon activation, the plugin will add a new menu item labeled ‘OptinMonster’ to your WordPress admin sidebar. Clicking on it will take you to plugin’s settings page.

Enter your API key

You will be asked to enter your API key. You can find this information under your account on the OptinMonster website.

Don’t forget to click on the save settings button after entering your API key.

Next, you need to click on the ‘Campaigns’ tab. If you cannot see your campaign listed there then click on the refresh campaigns button.

After that, click on the ‘Go Live’ link next to the campaign you just created.

Make your campaign go live

You can now visit your website to see your custom welcome message in action.

Greeting preview

You can use OptinMonster to greet users with different welcome messages based on visits, time spent, logged in status, referral source, or use page level targeting for your landing pages.

Method 2. Greet Users with a Custom Welcome Message using LiveChat

LiveChat Inc is the best live chat support software for WordPress websites. It allows you to create beautifully designed live chat buttons, eye-catchers, and live chat support to your WordPress site.

You can customize the greeting message, display your own buttons, upload your logo, show agent profiles, and more.

LiveChat is a paid solution (starting from $16.99 per agent). They also offer a free 30-day trial allowing you to check out the features and see if its a good fit for your business.

First, you need to visit the LiveChat website and sign up for an account.

Live Chat sign up

After creating your account, you will be taken to your LiveChat dashboard. Next, you need to click on the settings tab to customize the appearance of the LiveChat button.

LiveChat settings

From here, you can choose the chat window colors and theme. After that click on ‘Advanced window tweaks’ link to upload your own logo and add your social media profiles.

Next, you need to switch to the Engagement » Greetings section. By default, LiveChat enables a few greetings displayed based on few simple rules like time spent on site, pages viewed, returning visitor, and more.

Edit custom greetings

You can click on these greetings to edit them and add your own custom welcome message. You can also delete them or click on the ‘Add new greeting’ button to create a new custom greeting.

You will be able to select when to display a greeting by using display rules. You can also combine different rules to match and create highly dynamic custom greetings.

Adding dynamic greetings

Next, you need to select an eye-catcher. These eye-catchers are images that are displayed when the LiveChat window is minimized.

LiveChat comes with several ready-made eye-catchers that you can use. You can also upload your images to use as eye-catchers.

Select an eye-catcher

Once you are satisfied with the design and appearance of your LiveChat window and custom greetings, you are ready to add them to your WordPress website.

Switch back to your WordPress admin area to install and activate the LiveChat plugin. For more details, see our step by step guide on how to install a WordPress plugin.

Upon activation, the plugin will add a new menu item labeled LiveChat to your WordPress admin sidebar. Clicking on it will take you to plugin’s settings page.

Connect Live Chat to your WordPress site

Go ahead and click on the ‘Sign in with LiveChat’ button to connect your WordPress site to your LiveChat account.

Once connected, you will see some very basic display settings. You can turn off LiveChat on mobile, turn off sounds, or hide it for users who are not logged in. If you are unsure, then we recommend leaving these options as they are.

LiveChat settings for WordPress

You can now visit your website in a new browser tab to see the LiveChat button in action. It will greet users with the eye-catcher you selected and display a custom welcome greeting based on the rules you choose in settings.

Custom welcome greeting

We hope this article helped you learn how to greet each user with a custom welcome message in WordPress. You may also want to see our article on how to track user engagement in WordPress using Google Analytics.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Greet Each User With a Custom Welcome Message in WordPress appeared first on WPBeginner.

Making ScoutDocs: Build Tools

Continuing my series about ScoutDocs and the process of building it, this week I’m talking about Build Tools.

ScoutDocs-plugin-header-1544x500What is ScoutDocs? ScoutDocs is a WordPress plugin that adds simple file-sharing to your WordPress site.

Coding in React involves JSX, a bizarre-but-wonderful XML syntax that you dump directly into the middle of your JavaScript code. It feels exquisitely wrong. Browsers agree, so your JSX-containing JS code will have to be transpiled to regular JavaScript. This can involve using a complex maze of tools. Babel, NPM, Webpack, Browserify, Gulp, Grunt, Uglify, Uglifyify (yes, you read that right), and more. You have decisions to make, and you will find fierce advocates for various solutions.

For ScoutDocs, I decided to go with Grunt for task running, because I was already comfortable with it, and I needed it for grunt-wp-deploy. Use a task runner you are already comfortable with. Even if it is just NPM scripts. You’re learning a lot of new things already. It’s okay to keep your task runner setup.

Next, I had to choose a JS bundler which would let me write and use modular code that gets pulled together into a browser-executable bundle. After deliberating between Webpack and Browserify, I chose Browserify. Webpack is really complicated. It is also very powerful. I recommend you avoid it until you need it. I haven’t needed it yet, and found Browserify to be easier to configure and use, even though it’s a bit on the slow side.

As I was building ScoutDocs and tweaking my dev tools, tweaking my Grunt file, and writing code to search/replace strings etc, I began to feel like the time I was spending too much time on tooling. Was I becoming one of those people who spend all their time listening to productivity podcasts instead of… being productive? I can see how someone could get sucked into that trap, but putting a reasonable amount of time into configuring your development tools can pay dividends for you beyond simply the time saved. It can also prevent mistakes, keep you in coding mode more often, and increasing your confidence in your code builds. Spend the time up front to make your tools work for you.

Other posts in this series:


How to Make a Small Business Website – Step by Step (2018)

Are you looking to make a website for your small business so you can find new customers on the internet? Making a small business website has become quite easy, and you can do it all by yourself without hiring a developer. In this article, we will show you how to easily make a small business website (step by step).

Making a small business website

Step 0. Before Making a Small Business Website

Unlike the old days, building a small business website has become quite easy. You can do it all by yourself without knowing any coding or hiring a developer by following our step by step guide.

Here is an overview of what you’ll learn:

  • Choosing a domain name for your small business website
  • Purchasing website hosting
  • Installing WordPress
  • Making a content outline for your small business website
  • Choosing a template to change your site’s design
  • Adding more features by using addons and extensions
  • Resources to get help and improve your WordPress skills

Which is The Best Platform to Make a Small Business Website?

The biggest mistake most beginners make is choosing the wrong platform to make a business website. Thankfully, you are here so you would not be making that mistake.

WordPress is the most popular website builder in the world. It powers 31% of all websites on the internet including millions of small business websites all over the world.

The best thing about WordPress is that it gives you access to thousands of pre-made website templates, extensions, and addons. You can make almost any kind of website imaginable without learning to code.

That being said, let’s take a look at how to easily create a small business website using WordPress on a budget.

Step 1. What You Need to Make a Small Business Website

You will need the following three items to make a small business website.

  • A domain name – This will be your website’s name such as
  • Website hosting – This will be your website’s home and where all your files will be stored
  • 60 minutes of your time

Ready? Let’s begin.

Step 2. Setting up Your Small Business Website

There are two types of WordPress available., which is a hosted solution, and then you have also known as self-hosted WordPress. See our full comparison of vs to understand the difference.

We will be using self-hosted because it will give you instant access to all WordPress features out of the box.

Next, you will need a domain name and WordPress hosting to make a website.

We recommend using Bluehost to set up your website. It is one of the biggest hosting companies in the world and an officially recommended WordPress hosting provider.

Normally, you will pay $14.99 / year for a domain name and website hosting starts from $7.99 per month. This is a lot of money if you’re just starting out.

Thankfully, Bluehost has agreed to offer our users a free domain name, free SSL, and 60% discount on website hosting. Basically, you can get started for $2.75 per month.

→ Click Here to Claim This Exclusive Bluehost Offer ←

Let’s go ahead and purchase a domain name and hosting.

Step 3. Choosing a Domain Name for Your Small Business Website

First, you need to visit the Bluehost website in a new browser window and click on the green ‘Get Started Now’ button.

Getting started with Bluehost

On the next page, you will be asked to select a pricing plan. Basic and Plus plans are the most popular choices among small business owners.

Choose a plan

Click on the ‘Select’ button to choose a plan and move on to the next step.

Now, you will be asked to choose a domain name for your website.

Choosing a domain name for your website

Tips on Finding a Domain Name for Your Business Website

Domain names are crucial to the success of your website. You need to spend some time on choosing the perfect domain name for your business but don’t overthink it.

  1. Stick to the .com version because users find it easier to remember (see .com vs .net – which is better)
  2. Your domain name should be related to your business (For example, )
  3. If your preferred domain name is not available, then try adding geographical location next to it. This increases your domain’s visibility in local search results (For example,
  4. Keep it simple, short, and easy to pronounce.
    • Need more help? See our guide on how to choose the best domain name for your business website.

      Setp 4. Installing WordPress

      After choosing your domain name, you will be asked to enter your account information such as name, address, email, etc.

      Below that, you will see some extra hosting options that you can purchase. We don’t recommend purchasing these extras right away, so go ahead and uncheck them. You can always add them later if needed.

      Uncheck hosting extras

      Next, you will need to add your payment information to finish the purchase.

      After completing your purchase, you’ll receive an email with details on how to login to your web hosting control panel.

      Bluehost will automatically install WordPress for you, and you will be able to login to your WordPress site directly from the hosting dashboard.

      Bluehost hosting dashboard

      Once logged in, you will see the WordPress admin area. This is where you will manage your website, change settings, and add new content.

      WordPress dashboard

      Step 5. Creating Content Layout for a Small Business Website

      Now that you have WordPress installed, you need to create an outline of your website content. Good small business websites are simple and follow a standard website layout.

      Simply go to Pages » Add New page to create a new page in WordPress.

      Adding a new page in WordPress

      Don’t worry about the content, text, and images at the moment. Just adding a simple title, some text, and a couple of images would be fine. You can always edit these pages and add more content if needed.

      Here are some of the most common pages used in a small business website layout.

      • Homepage – This is the welcome page of your website. Add your business name with a call to action to your services/products or contact page. Provide a brief description of why your customers should choose you.
      • About Us – Your customers want to know more about people behind a business before they can make a decision. Create an about us page to tell users who you are, what are your business values, and what relevant experience you have in your industry.
      • Services / Products – Create a page to list details about services or products you are offering. Add a heading for each service/product and provide a brief description. You can also add pricing or ask users to contact you for a quote.
      • Contact Us – This is the page your users will need to contact you. You will need to add a contact form so that users can contact you directly. Additionally, you can add your businesses’ physical address or phone number.

      Additionally, you can create more pages if needed. For example, you can create a separate blog page, individual pages for each service or product, and more.

      Step 6. Choosing a Design for Your Website

      By default, WordPress comes with a basic template that you can use. If you don’t like the default theme, then there are thousands of free and paid WordPress themes that you can choose from.

      You can take a look at our selection of the best WordPress themes for business websites. If you need more help, then see our tips on choosing the perfect WordPress theme for your website.

      We recommend looking for a simple design that looks great and has all the right elements.

      Normally, a business website has a navigation menu on top. The homepage usually has a welcome message with a call to action button, which is followed by other content.

      Example of a simple business website design

      Once you have chosen a theme, you can go ahead and install it. For detailed instructions, see our beginner’s guide on how to install a WordPress theme.

      Each WordPress theme comes with different settings to customize its appearance. Many of these options are located under Appearance » Customize page in WordPress admin area.

      Customize your website design in WordPress

      From here you can add navigation menus, change colors, add or remove different sections, and more. Once you are satisfied with the design, don’t forget to click on the Publish button on top to save your changes.

      If you’re unable to find the theme that fits your need, then you can use one of the popular drag & drop page builders for WordPress to create a custom design for your needs.

      We recommend using either Beaver Builder or Divi theme.

      Step 7. Using WordPress Plugins to Add More Features

      Adding WordPress plugins

      WordPress plugins are like apps for your WordPress site. You can install them to add new features to your website like contact forms, Google Analytics, sliders, and more.

      There are more than 50,000 free plugins available in the WordPress plugin directory alone. This means, no matter what feature you want to add there is good chance you will be able to find a plugin for that.

      Below are the plugins that we install on every website:

      Need some cool plugins for your website? See our expert pick of the essential WordPress plugins for business websites.

      For detailed instructions, see our step by step guide on how to install a WordPress plugin.

      Step 8. Learning WordPress

      Now that you have a WordPress site, you may want to step up your game and learn more tips to improve your website.

      WPBeginner is the largest free WordPress resource site in the world. Following are the handy WordPress resources you will find on WPBeginner, all of them are completely free.

      • WPBeginner Blog – This is where we publish our WordPress tutorials, how tos, and step by step guides.
      • WPBeginner Videos – These step by step videos will help you learn WordPress FAST.
      • WPBeginner on YouTube – Need more video instructions? Subscribe to our YouTube channel with more than 52,000 subscribers and 7 Million+ views.
      • WPBeginner Dictionary – The best place for beginners to start and familiarize themselves with the WordPress lingo.
      • WPBeginner Blueprint – Check out plugins, tools, and services we use on WPBeginner.
      • WPBeginner Deals – Exclusive discounts on WordPress products and services for WPBeginner users.

      You can also use Google to find answers on WPBeginner by simply adding ‘wpbeginner’ at the end of your search term.

      If you are unable to find an answer, then feel free to reach out to us using our contact form. We will try our best to answer your question or point you in the right direction.

      We hope this article helped you learn how to make a small business website. You may also want to see our complete WordPress SEO guide for beginners.

      If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

      The post How to Make a Small Business Website – Step by Step (2018) appeared first on WPBeginner.

5 questions for Yoast’s community hero Taco

Five years ago, I met Taco Verdonschot for the first time. He applied for a job at Yoast. He brought a cake to his job interview. So smart! He was the first developer we ever hired and probably the worst one we had. And although Taco wasn’t much of a developer, I knew right from the start that he was right for Yoast. 

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

Yoast SEO: the #1 WordPress SEO plugin Info

Get one of Taco’s favorite Yoast products at a 15% discount now! Or save 10% on ANY other Yoast product. Select your favorite SEO tool now!

Taco is a perfect fit for Yoast. He understands Yoast. He’s a vital part of Yoast. This week, Taco is one of the co-organizers at WordCamp Europe. He has grown so much in the past five years, and I am so proud of him. Earlier this week, I asked him about his experience as an organizer of WordCamps. What are his dearest memories? Why does he like WordCamps so much? Read on and get to know Taco a bit better!

How did you get sucked into organizing WordCamps?

Only a few weeks after I started working at Yoast (almost five years ago), I was sent to WordCamp Europe in Leiden. That was my first WordCamp. I met a lot of people there. Soon afterward, I began organizing WordPress Meetups (thanks to Barry Kooij of Never5).

Right, I remember that. And after that? You started volunteering and then?

I was a speaker at WordCamp Netherlands in 2015 and applied as a co-organizer for WordCamp Netherlands in 2016. Marcel Bootsman made me responsible for organizing the volunteers, which I believe is the most fun part of organizing a WordCamp.

What is your best memory of a WordCamp?

I liked WordCamp Europe in Sofia best, the second WordCamp Europe. The city of Sofia was marvelous, and the audience pretty much knew what to expect. They all wanted to enjoy a great, laid-back event. I especially enjoyed the afterparty in which we danced the night away. Our CEO Joost de Valk and Danny van Kooten even did a limbo competition!

Really? I’ve never heard about that before. Curious.

The best thing about WordCamps is meeting ‘friends I’ve never met before’. I love the WordPress community, which is tight-knit but also very welcoming to new people. People want to help each other. That atmosphere is awesome and that’s something you feel at WordCamps. That’s the best thing for sure.

What’s so unique about this WordCamp Europe in Belgrade?

It’s the first WordCamp Europe outside of the European Union. That causes some logistic challenges for both the organizing team as well as sponsors.

Tell me about it. We couldn’t get our stroopwafels to Belgrade. It was terrible.

At the same time, Belgrade is a perfect choice. It is central and it is rather cheap. Lots of people can travel for relatively low costs and hotels are affordable. That’ll make the event accessible to people from all over Europe. And that’s kind of the idea.

Is there anything about WordCamps you don’t like? Except for missing your wife and daughter that is…

Well, I don’t like that there are still WordCamps without contributor days. During a contributor day, we all work on the WordPress project together. And whether you’re a translator, developer, marketer or a Matt Mullenweg, everybody can join and contribute to the project. On a contributor day, you’ll learn just how to do that and that enables more people to participate. Every WordCamp should have a contributor day.

Anything to add, Taco?

I talk to a lot of organizers of WordCamps from all over the world, and they all face the same problem; It’s hard to find speakers for our conferences. That’s why I would like to invite everybody to go and speak on a local WordPress Meetup or a WordCamp. Tell your story, share your thoughts on a project you’re currently working on and which challenges you’re facing. It’s so cool — and exciting — to share your experiences on stage!

Thank you so much, Taco, for your time to do this interview. And thank you for the (almost) five years you’re working for Yoast. You’re making a difference in the WordPress Community and at WordCamp Europe. More importantly, you’re a crucial part of Team Yoast and an indispensable part of my personal life as well. Thank you for five amazing years! Have an awesome WordCamp Europe!

Find out which of our products Taco likes most and save 15%. Or get another course, plugin or the configuration service at a 10% discount!

The post 5 questions for Yoast’s community hero Taco appeared first on Yoast.

Yoast’s WordCamp Europe sale: Taco’s personal favorites

At the moment, members of team Yoast are enjoying WordCamp Europe in Belgrade, and we want to celebrate that awesome event together with all of you! Which is why we’re having a sale during WordCamp Europe: you can now save 10% on any Yoast product or Academy course! And there is even a 15% discount on my personal favorites! Read on to see which products are my favorite and why I like them so much.

Free course! Learn what makes your site rank with our SEO for beginners training »

Free SEO course: SEO for beginners Info

WordPress Community

In 2013, I just started working at Yoast as a customer support engineer and went to my first WordCamp ever: WordCamp Europe in Leiden. The WordPress community was so very welcoming, and I attended more and more WordCamps and meetups. In 2016, I joined the organizing team of WordCamp the Netherlands and joined WordCamp Europe in 2017. At Yoast, I became the community manager, next to being the lead of the support team! At the moment I’m also co-organizing WordCamp Nijmegen. It’s safe to say that I love being a part of the WordPress community!

Yoast SEO Premium plugin

My absolute favorite is, of course, the Yoast SEO Premium plugin. As lead of the support team, there is not a day that goes by without having a conversation with people in which they tell me about how they benefit from the premium features, in one way or another! The redirect manager, for example, helps you easily create and manage redirects on your website, and even creates instant redirects when you change the URLs of your pages. Next to this, the internal linking tool enables you to connect your content to each other easily. With premium, you can also get insight into your social previews, so that you can change them according to your preferences. And it also allows you to optimize your texts for more than one focus keyword!

Save 15% on Yoast SEO Premium

Local SEO plugin

The Local SEO plugin is a must if you have a (small) business with local customers. It makes sure that your company’s information is filled out in such a way that Google knows everything it needs to know to put your site on top in local search results! Enhancing this information makes you stand out from the crowd, so you’re not losing customers due to being unfindable. And it will save you a lot of time, which is always a good thing! Personally, it helps me to find the opening times from my favorite, local restaurant: PizzaPasta in Wijchen. ;)

Save 15% on our Local SEO plugin

SEO copywriting training

SEO is a highly dynamic practice, but what always should be on top of your mind is providing your user with high-quality content. It’s such a shame when you have many great ideas for your site, but you’re not able to come up with attractive content. Luckily, there is a solution for that: the SEO copywriting training! The online course helps you with writing awesome content that ranks in Google. It even includes personal feedback on your SEO copy from a Yoast expert. Besides that, I’d much rather visit a site when the content is well written!

Save 15% on the SEO copywriting course

Sale information

So, I’ve shared my favorite products with you, but I’m curious: which Yoast products or courses are your favorites? If you want to learn more about our products, you should try them right now, since you can save 10% on all of our products! And you can even save 15% when you purchase any of my personal favorites. So let me know if you try one of our products, enjoy!

Read more: ‘Why you should buy Yoast SEO Premium’ »

The post Yoast’s WordCamp Europe sale: Taco’s personal favorites appeared first on Yoast.

Document Titles for Repo Plugins

The Growth Council has submitted its proposed updates to document titles and meta descriptions across the network. As part of the update for the Plugin Directory, they suggested adding the first two tags of each plugin to the document title:

$Plugin_Name, $Tag_Name Plugin |


Obenland Media, Gallery Plugin |

Before going ahead with that change I wanted to bring it up for discussion here, given the risk of abuse here.

How do we weigh the benefit of ease of discoverability on search engines with that risk of abuse? What are your thoughts?

Progress on this is tracked in #3539-meta.


How to Create a Landing Page With WordPress

Do you want to create a custom landing page on your WordPress site? Landing pages help businesses convert website visitors into customers and leads. In this article, we will show you how to easily create a landing page in WordPress.

Creating a landing page with WordPress

What is a Landing Page?

A landing page is a purpose-built page designed to increase sales or generate leads for a business. It is used in paid marketing, email, and social media campaigns. Users coming from these sources will land on this page first, which is why it is called landing page.

What is the difference between the homepage and a landing page?

A homepage is your website’s front page and what users will see when they enter your domain name in their browser. On the other hand, a landing page can be a standalone page where most visitors land from paid or third-party traffic sources.

A homepage is designed for visitors to engage with your website, explore other pages, browse products, or sign up. It has more links and provides users with more choices.

On the other hand, a landing page is built for conversion. It has fewer links and is designed for users to make a purchasing decision or give their information for future outreach.

Normally, your website can have only one homepage, but you can create as many landing pages as you want for different campaigns. For example:

  • A landing page for your paid advertising campaigns
  • Visitors coming from specific traffic sources like email list, social media, and more
  • Users landing on a specific product or service page
  • and many more…

That being said, let’s take a look at how to create a beautiful custom landing page in WordPress. We will show you two solutions, and you can choose the one that suits you best.

Creating a Landing Page in WordPress using Beaver Builder

Beaver Builder is one of the best WordPress landing page plugins. It allows you to easily create a landing page using ready-made templates that you can modify with simple drag and drop tools.

First, you need to do is install and activate the Beaver Builder plugin. For more details, see our step by step guide on how to install a WordPress plugin.

Upon activation, you need to visit Settings » Beaver Builder page to configure plugin settings.

Beaver Builder license

Under the License tab, click on the ‘Enter License Key’ button to add your license key. You can find this information under your account on Beaver Builder website.

Next, you need to head over to Pages » Add New page to create your first landing page. Many WordPress themes now include a page builder or a full-width template. These templates are designed to work with page builder plugins.

If your theme doesn’t have such a template, then you can create one on your own. For detailed instructions, see our guide on how to create a full width page in WordPress.

Select a page builder or full-width template from the ‘Page Attributes’ box in the right column and now save your page to apply the changes.

Select a template

You are now ready to make a landing page. Click on the Beaver Builder tab above the post editor to launch the builder interface.

Launch Beaver Builder

Beaver Builder will open with your existing page template. You need to click on the add button on the top right corner of the screen and switch to the templates tab.

Choose a template

Beaver Builder comes with several ready-made templates. Select ‘Landing Pages’ from the group drop-down menu and then choose a template that looks close to what you have in your mind.

Once you select a template, Beaver Builder will load it in the preview window.

Point and click to edit

You can now point and click on any item to edit it. You can change the text, change background color or images, adjust width and height of the rows and columns.

You can add or remove content items from your template. Simply click on the add button and switch to the rows tab. You can add either single or multiple columns.

Add rows to your landing page

After adding a row, switch to the modules tab. Modules are content elements that you can add to your landing page. Beaver builder comes with all the essential modules including text, headings, buttons, video, audio, animated countdown timer, and more.

Add modules to your template

Once you are satisfied with the design, you can click on the ‘Done’ button at the top and then save or publish your page.

Save or publish your landing page

You can now visit the page to view your landing page in action. Feel free to edit it again if you need to adjust, add, or remove anything.

Preview your landing page

Creating a Landing Page in WordPress using Leadpages

Leadpages is another easy to use platform for creating beautiful landing pages and adding them to your WordPress site.

Unlike BeaverBuilder, LeadPages is a standalone landing page builder which means you can use it with or without a WordPress site.

First, you need to visit Leadpages website and sign up for an account. After that you will see the Leadpages dashboard where you need to click on the ‘Create new Leadpage’ button.

Creating a new landing page with Leadpages

On the next screen, you will be asked to choose a template. Leadpages comes with dozens of beautifully designed templates which are neatly organized into different categories.

Choose a template for your landing page

Click on any template to preview it. You need to select a template that looks closest to what you have in mind and then click on the ‘Use this template’ button to continue.

This will launch the Leadpages builder interface. It is a drag and drop interface where you can just point and click on an item to edit it.

Leadpages builder

You can now point and click to edit any item on the page. You can replace images, text, background images, and more. You can also add new widgets from the left column.

You can also adjust different sections of your landing page by clicking on the page layout tab. Simply drag and drop sections to adjust them on the page. You can also add new sections or remove them.

Drag and drop page layout

Leadpages also connects with several third-party apps including all top email marketing services. Simply add a sign-up form to your landing page and then click on ‘Add Integration’ button.

Add integrations

Once you are finished editing your landing page, you can click on the publish button to make it live.

After that you need to click on the ‘Publish Options’ button and switch to ‘Other publishing options’ tab. From here you can download the Leadpages WordPress plugin.

Get WordPress plugin

Next, you need to switch to your WordPress site to install and activate the plugin. For more details, see our step by step guide on how to install a WordPress plugin.

Upon activation, you need to visit the Leadpages menu in your WordPress admin area to login with your Leadpages account.

Once logged in, go to Leadpages » Add New page. You will be able to see your landing page listed there with few options.

You can publish this page as a normal landing page, homepage, a welcome gate, or a 404 error page. You can also choose a URL slug for your landing page.

Publish your landing page to WordPress

After reviewing the options, go ahead and click on the publish button. Leadpages will now publish the page on your WordPress site.

You can now visit this page on your website to see it in action. You can make any changes you want from the Leadpages website and those changes will show up on your site.

We hope this article helped you learn how to create a landing page with WordPress. You may also want to see our tips on driving more traffic to your WordPress site.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Create a Landing Page With WordPress appeared first on WPBeginner.

Making ScoutDocs: React

Continuing my series about ScoutDocs and the process of building it, this week I’m talking about React.

ScoutDocs-plugin-header-1544x500What is ScoutDocs? ScoutDocs is a WordPress plugin that adds simple file-sharing to your WordPress site.

After the first iteration of ScoutDocs was built and none of the partners on the project were happy with its experience, it became clear that in order to deliver a clean, simple interface for file uploading and sharing we needed to leave the bounds of the WordPress admin. It didn’t take me long to decide that React would be the tool I used to build the new interface.

There is an incredible momentum behind React, and a rich ecosystem of libraries, tools, and educational resources. But beyond all that, React is just plain fun to code. Once you accept the central premise that a view layer and the controller that handles that view are inextricably linked, and once you get over the weirdness of quasi-HTML-in-JS that is JSX, coding in React is a joy.

Screen Shot 2018-06-10 at 10.19.07 PM.png

Make no mistake, learning React is not a weekend project. It will take a while before it feels like home. But once you get it, you feel very powerful.

The first lesson I learned was don’t learn React by rewriting your app in React. I tried this. I read some tutorials about React and it felt straightforward, and I was like “let’s do this.”


This was a bad idea. I was overwhelmed. I had no idea where to start. Next, I tried following some of the interactive tutorials that required me to build a simple React app and then slowly add functionality to it, refactoring it multiple times, until I understood not just the code that I ended up with, but the process of creating it. This went much better.

Start small, and build a bunch of “toy” apps before you use React for your own apps. Once you are able to “think in React”, you’ll be nearly physically itchy to go re-code your app in React, and that’s how you know you’re ready. If you jump the gun, you are going to get stuck a lot, and it will be frustrating.

As you learn React and explore the React ecosystem, you will likely hear about Redux, which is a system for storing application state, and is commonly used with React apps. It looked complicated, and even its creator wrote a post saying you might not need Redux. So I skipped it. This was probably the right call when I was starting out. But as I fleshed out the ScoutDocs app and its complexity increased, I ran into a problem.

See, React breaks your app up into these nested chunks of UI and functionality called components. Data flows down through your components. So if a user updates their name, that change will flow down from higher up components like a Page component down to a PageHeader, down to a NavBar, down to a UserStatus. Once this is all set up and you update data in a parent component, the changes automatically flow downstream, and the UserStatus component updates and re-renders. It’s great. Except that there are a bunch of intermediate components that accept and “forward” that user name data to their children, without actually caring about it themselves. When you inevitably refactor something and need to add new data that flows through these components, every single intermediate one needs to be updated to pass it on. It is tedious. You will hate it.

Worse, because events in React flow upwards, if a user updates their name in the UserName component, that change needs to flow up to ProfileForm, up to Profile, up to Page, and then up to your main App component. When you refactor, you need to make sure this event forwarding chain stays connected. Yet more tedium that you will hate.

Redux solves this by letting your React components, no matter how deeply they are nested, subscribe directly to the data they need.

I really wish Dave Ceddia had written this excellent post about Redux two months earlier.

If you have a component structure like the one above – where props are being forwarded down through many layers – consider using Redux.

This is what I needed to hear, and knowing this would have saved me a lot of frustration and time that I now have to spend converting ScoutDocs to use Redux.

Use Redux when your React data flow starts to get unwieldy.

Another mistake I made early on was making the data my React components accepted too restrictive. For example, I wanted the ability to prefix a Row component with a clickable icon. So I let the component accept an icon and onClickIcon property. I just passed a Font Awesome icon name in, and a function I wanted to run when clicked. It worked great.

Screen Shot 2018-06-10 at 10.26.08 PM.png

Then I needed to add a second icon in front, in some circumstances. Ugh. I certainly didn’t want to do otherIcon and onClickOtherIcon. Instead, what I should have done was let the component accept beforeRow which could be anything… like an array of <Icon> components or a single one or even other components altogether.

Screen Shot 2018-06-10 at 10.31.45 PM.png

This can be used for many more situations than the one (“put an icon before the row”) that I’d originally envisioned.

Your React components should be flexible, so they can be reusable.

Other posts in this series:

  • Outsourcing
  • React
  • WordPress Rest API
  • PHP 7
  • Build tools
  • Unit testing

WP Cron HTTP Auth

[ WP Cron HTTP Auth ] Welcome to the official homepage for my free WordPress plugin, WP Cron HTTP Auth. This page explains what the plugin does, how it works, and so forth. The plugin actually is very simple, however, so there is not a lot to explain.

If you are looking for plugin documentation, visit WP Cron HTTP Auth at There you will find installation steps, support forum, translation tools, and more.

Download WP Cron HTTP Auth »

About the plugin

tl;dr: This plugin enables WP Cron on sites that have enabled HTTP Authorization.

I develop most of my sites on a secure HTTP-Auth-protected domain. The only problem is that by default, WP Cron doesn’t work when HTTP Authorization is required. This simple plugin solves that problem by providing the necessary authentication to WordPress. Visit the plugin settings, enter your HTTP Auth credentials, save changes and done.

How to use

Visit the plugin settings, enter your HTTP Auth credentials, save changes, and done.

If the auth credentials are correct, WP Cron will work properly on your site.

WordPress Plugin: Disable WP REST API

[ Disable WP REST API ]

Welcome to the official homepage for my free WordPress plugin, Disable WP REST API. This page explains what the plugin does, how it works, how to test the plugin, and why anyone would want to disable the REST API, for crying out loud, all explained on this page. If that sounds like you, you’re in the right place.

If you are looking for plugin documentation, visit Disable WP REST API at There you will find installation steps, support forum, translation tools, and more.

Download Disable WP REST API »

The fast, simple way to prevent abuse of your site’s REST/JSON API


This plugin does one thing: disables the WP REST API for visitors who are not logged into WordPress. No configuration required. Just activate and done.


This plugin works with only 22 short lines of code (less than 2KB). So it is super lightweight, fast, and effective. More features include:

  • Disable REST/JSON for visitors (not logged in)
  • Disables REST header in HTTP response for all users
  • Disables REST links in HTML head for all users
  • 100% plug-and-play, set-it-and-forget solution

How does it working?

What this plugin does under the hood depends on which version of WordPress you are using. Here is a summary of each:

WordPress v4.7 and beyond

For WordPress 4.7 and better, this plugin completely disables the WP REST API unless the user is logged into WordPress.

  • For logged-in users, WP REST API works normally
  • For logged-out users, WP REST API is disabled

So what happens if logged-out visitor makes a JSON/REST request? They will get only a simple message:

rest_login_required: REST API restricted to authenticated users.

Pro Tipz: This message may customized via the filter hook, disable_wp_rest_api_error.

Older versions of WordPress

For WordPress versions less than 4.7, this plugin simply disables all REST API functionality for all users.

How do I test that REST is disabled?

Testing is easy:

  1. Log out of WordPress
  2. Using a browser, request

If you see the following message, REST is disabled:

rest_login_required: REST API restricted to authenticated users.

Then if you log back in and make a new request for, you will see that REST is working normally.

Why would anyone want to disable the REST API?

Technically this plugin only disables REST API for visitors who are not logged in to WordPress. With that in mind, here are some good reasons why someone would want to disable REST API for non-logged users:

  • The REST API may not be needed for non-logged users
  • Disabling the REST API conserves server resources
  • Disabling the REST API minimizes potential attack vectors
  • Disabling the REST API prevents content scraping and plagiarism

I’m sure there are other valid reasons, but you get the idea :)

And yes, I use this plugin on most of my own WordPress-powered sites. It adds another layer of protection against the previously described threats.

Download Disable WP REST API »

Contact Form X

[ Contact Form X ]

Welcome to the official homepage for my free WordPress plugin, Contact Form X. This is a more personal look at the plugin, aimed at readers who are familiar with my work. Here you’ll find some screenshots, cool features, and of course some rambling backstory (because there is one).

If you are looking for plugin documentation, visit Contact Form X at There you will find installation steps, support forum, translation tools, and more.

Download Contact Form X »


To use Contact Form X: install, activate, and display the ajax-powered contact form anywhere on your site. Display on any post or page using the shortcode. Display in sidebars using the widget. And display via your WP theme using the template tag.

Overview + Features

Here is an overview of the plugin’s best features:

  • Easy to use
  • Simple and secure
  • Lightweight and super fast
  • Provides multiple form styles
  • Customize just about everything
  • Display the contact form anywhere
  • Send email to multiple recipients
  • Complete documentation via Help tab
  • Excellent free plugin support

You can easily choose which fields to display in the form. Each field may be set as required, optional, or disabled. Choose from the following fields:

  • Name
  • Website
  • Email
  • Subject
  • Custom Field
  • Challenge Question
  • Message
  • Google reCaptcha
  • Carbon Copy
  • Agree to Terms

And you can customize the labels for each of these fields, so the fields are all super flexible. For a complete list of features and more infos, visit Contact Form X at


To give you a better idea, here are some screenshots of Contact Form X.

To check out more screenshots, visit Contact Form X at

Rambling Backstory

I released my first contact-form plugin 10 years ago: Contact Coldform. It was very popular for a few years, as it was one of the first decent contact-form plugins for WordPress. Contact Coldform is loaded with options and still works great, but the codebase is aging and frankly needs a complete overhaul.

A few years later, in 2011, I wanted a lighter, simpler version of Contact Coldform. So I wrote Simple Basic Contact Form (SBCF). Up until today, I used SBCF for my own Contact Page here at Perishable Press.

And that brings us to now. About a month ago, a trusted buyer made an offer to purchase ownership of Simple Basic Contact Form. The offer was good, so I agreed. I felt that the transfer would breathe new life into the plugin, and already that has proved correct. The plugin has since received several great new features.

So now with SBCF sold, and Contact Coldform ready to retire, I needed a new contact form for my WordPress-powered sites. Rather than spend a lifetime digging through the endless contact form plugins that already are available, I decided to just roll my own. Three weeks later, Contact Form X was born.

By Any Other Name

Originally, I wanted to name my new plugin “Contact Form 77”. When I submitted it for inclusion in the WP Plugin Directory, I was told that the name is not allowed because it would infringe on “Contact Form 7”. Which of course is correct, so I needed to pick a different name for my shiny new plugin.

The main thing I wanted was a short name. That is why I liked “Contact Form 77” because it was only two extra characters (or three if you count the space). Fortunately, I had an epiphany while brushing my teeth. I am currently finishing up a new WordPress theme for Perishable Press. The new theme is named after the 24th letter of the alphabet: “X”. Why? Because about 15 years ago, I started doing an alphabet-named themes thing. So in a few more years, the next theme name will begin with the letter “Y”, like maybe “Yoda” or something, then “Zod”, or whatever. You get the idea.

So back to brushing my teeth, I’m sitting there thinking about a good name for my new contact-form plugin. Brush, brush, brush.. Then BAM it hit me: I’ll be using the plugin at Perishable Press, so for at least the next several years, “Contact Form X” is just perfect. It sort of ties everything together with what I’m doing: new X theme for Perishable Press plus new Contact Form X equals something that I want to spend time working on.

To The Future

I am looking forward to developing Contact Form X for many years to come. Thank you to all the users and everyone who helped with Coldform and SBCF over the years. It was a great journey that now continues with Contact Form X.

How to Install WordPress on Amazon Web Services

Recently one of our readers asked us to cover how to install WordPress on Amazon Web Services (AWS). Often reserved for larger projects, Amazon Web Services is a powerful cloud computing platform that allows anyone to harness the power of Amazon’s superior infrastructure on a pay as you go basis. In this article, we will show you how to install WordPress on Amazon Web Services.

Installing WordPress on Amazon Web Services

Note: If you are just starting a website, then we recommend using one of the easier solutions from our how to install WordPress guide.

We have split this article in two methods. The first method is a manual process that is very technical and complicated. The second method is an easier solution for beginners because it allows you to use AWS infrastructure by going through a preferred managed WordPress hosting solution.

  1. Manually Install WordPress on AWS
  2. Install WordPress on AWS through Managed Hosting Solution

Method 1. Creating a Custom WordPress Install on AWS

First thing you need to do is visit the Amazon Web Services website. You can create a free account, but you will need to enter credit card information. Amazon will verify your identity by sending a $1 charge to your card.

Once your account is verified, you need to login to your AWS console and click on the ‘Services’ menu. Under the compute section, you need to select EC2 to continue.

Launch AWS EC2 service

EC2 is AWS’s cloud computing platform that allows you to create virtual machines and run web apps like WordPress. For more details on what’s a virtual machine, read our guide on what is a VPS and do you need it.

Next, click on the ‘Launch Instance’ button to launch and configure your instance settings.

Launch your EC2 instance

You will need to select an Amazon Machine Image. These are pre-configured software stacks that you can install with a single click.

Under the ‘AWS Marketplace’ search for WordPress and then select ‘WordPress by Bitnami’.

Install Amazon Machine Image

You will now see a pricing popup where you simply need to click on the continue button.

On the next screen, you will be asked to choose an instance type. You can go ahead and select td.micro free tier and then click on ‘Configure instance details’ button.

Select instance type

On the next screen, you don’t need to change anything. Simply click on ‘Next: Add Storage’ and then click ‘Next: Add Tags’ buttons.

Now we will enter a name for this instance as a tag. Click on the Add Tag button and enter ‘Name’ as key, and ‘MyWordPress’ as value.

Review and launch

Click on the ‘Review and launch’ button to continue.

You will now be presented with an overview of your EC2 Instance configuration. Click on the ‘Launch’ button to start your instance.

Review instance settings and launch

Next, you will be asked to select pair keys. You need to select ‘Proceed without a key pair’ and then check the box below it.

Skip paired keys

After that click on the launch instances button to store your settings and launch your EC2 instance.

AWS will now show a success message. Click on the ‘View Instances’ button at the bottom right corner of the screen.

You will now be able to see your WordPress instance running.

WordPress instance running

To test your WordPress site, you need to locate its public IP address. You can find it under IPV4 Public IP column next to your instance.

Your WordPress site's public IP address

You can now copy this IP address and enter it in the address bar of a new browser tab to view your website. You will be able to see your WordPress site with the default theme.

Default WordPress install

To visit your WordPress admin area, simply add /wp-admin/ next to your site’s public IP address, like this:

You will now see the default WordPress login page.

WordPress login screen

However, you will need to know the username and password to access the admin area.

You can get that by going back to your EC2 Console and clicking on the ‘Actions’ button and then select Instance Settings » Get System Log.

This will bring up a log file in a popup window with lots of text. You will need to scroll down towards the bottom, and you will find a line with ‘Setting Bitnami user password to’ surrounded by ## signs. You will also see the default username set by the app.

Copy your WordPress password

You can now copy the username / password and enter it on the login screen of your WordPress site.

Congratulations, you have successfully installed WordPress on Amazon Web Services. However, your website is still only accessible by using the IP address.

If you want to point a domain name to your AWS WordPress install, then you will need to connect your domain name to AWS’s DNS servers.

See our step by step guide on how to register a domain name.

Once you have registered your domain name, you’re ready to add it to your AWS instance.

Add a Domain Name to Your WordPress Site on Amazon Web Services

First, go to your EC2 instances dashboard and then from the left column click on ‘Elastic IPS’ under ‘Network & Security’ section.

Allocate new elastic IP

Next, click on the ‘Allocate New Address’ button to continue.

You will be asked how do you want to use the IP address. Simply click on the Allocate button to continue.

AWS will now create a new elastic IP for your WordPress EC2 instance. You will see your IP address listed in a table. Simply select the IP address row and then select ‘Associate Address’ under the ‘Actions’ button.

Associate address

On the next screen, select your WordPress instance from the drop-down menu and click on the Associate button.

Associate  IP to your WordPress instance

You will now see your Elastic IP listed in the table. Go ahead and copy the IP address and paste it into a text editor like Notepad. We will need it in the next step.

Copy your elastic IP

Next, you need to click on the ‘Services’ menu at the top and search for ‘Route53′. This is Amazon web services’ DNS management service that allows you to route traffic to your EC2 instance.

Route53 service

On the next page, click on the ‘Get Started Now’ button under the DNS management section.

Get started with DNS management

This will bring you to hosted zones section. Go ahead and click on the ‘Create hosted zone’ button.

Create hosted zone button

Next, you need to add your domain name and click on the create button to add it to a hosted zone.

Add domain to a hosted zone

After you have added your domain to a hosted zone, click on the ‘Create Record Set’ button. Now you need to enter www next to ‘Name’ field. Enter the elastic IP you copied earlier in the ‘Value’ field and then click on create button.

Add record set

The A record will now be added to your hosted zone along with your domain name. From the left column, you need to copy the lines under NS field. These are Nameserver addresses that you will need in the next step.

Now you need to go to your domain name registrar website and edit your domain name settings. The screenshots below may vary from your provider, but the basic instructions are similar for each provider.

Under your domain’s DNS Nameservers settings, enter the nameserver addresses you copied earlier.

Add DNS nameservers

Don’t forget to save your changes. You can now visit the domain name you added and it will take you to your WordPress site on Amazon Web Services.

Note: DNS changes may take some time to take effect.

Method 2. Using Amazon Web Services via Managed WordPress Hosting

As you may have noticed that setting up a custom WordPress install on Amazon web services is a very technical and complicated process.

The cloud computing infrastructure provided by Amazon Web Services is a pay as you go solution. This means that traffic spikes will increase your hosting bill significantly. Not to mention, that you will still be responsible for managing your own services which is just extra work.

An easier way to use WordPress on Amazon Web Services without any hassle is by using a managed WordPress hosting provider.

We recommend using WP Engine. They run part of their hosting platform on the AWS infrastructure, and you don’t have to worry about traffic spikes, server management, or WordPress maintenance.

Another great alternative is Pagely, a premium managed WordPress hosting provider. They also run their platform on Amazon Web Services and offer a hassle-free, WordPress environment to grow your business.

We hope this article helped you learn how to install WordPress on Amazon Web Services. You may also want to see our ultimate guide on improving WordPress speed and performance with step by step instructions.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Install WordPress on Amazon Web Services appeared first on WPBeginner.

Using Gutenberg as an editor: does it make my life easier?

Being part of the blog team at Yoast I spend much time writing, correcting and editing content in the editor. Of course, I’ve heard about Gutenberg (it’s quite the thing here at Yoast) and glanced over it, but I didn’t take the time to do much with it myself. When the Gut Guys asked me if I would like to feature in one of their videos I couldn’t escape it anymore, I had to start testing Gutenberg for real! So I did. As Marieke already wrote about using Gutenberg as a writer, I’d like to share my experiences with using Gutenberg as an editor.

Free course! Learn what makes your site rank with our SEO for beginners training »

Free SEO course: SEO for beginners Info


In case you’ve missed it: the content editor in WordPress is going to get a complete overhaul. Instead of just a big blank field where you type your text, with some options to format it on top of your screen, it’s going to transform into smaller blocks. You can select a block to have a particular appearance, for instance, a paragraph, a heading or an image. And you can move these blocks around or duplicate them. In the sidebar, you’ll have more options to do all kinds of things with your content. That’s it in a tiny nutshell, if you want to know more, read Edwin’s highly informative piece on what Gutenberg is exactly.

Start the test!

You can already install the Gutenberg plugin and already use Gutenberg on a (test) site to see how it works. Another option, if you want to get acquainted with Gutenberg, is to go to and create and edit some content right there in your browser. Not all functionalities work as they should there, but it’ll surely give you an impression.

First impression

I have to admit I was a bit hesitant to use Gutenberg in the beginning. I guess it’s just hard to let go of what you’re used to and start learning something new. Moreover, in my previous job, I’ve worked with the Oracle ATG CMS which works with blocks as well, and that CMS has a very steep learning curve. On the other hand, that experience also made me already see the advantages of using blocks with pieces of content, instead of one big field.

But starting out I was pleasantly surprised! This didn’t feel that different at all. OK, I had to click around a bit to find the functionalities I was looking for, but that was to be expected. It felt quite intuitive to me. I happily clicked around adding, moving and editing blocks and jotted down what I noticed. I tried to test things I often do as an editor, like copying content people shared with me in Google docs, edit a bit of HTML somewhere, search for a certain paragraph, move them, change a heading or adding a conclusion to a text. Here are my findings:

Copy content from Google Docs

Copying content from Google Docs to the classic WordPress editor can be a hassle. But with Gutenberg, it’s much easier. You copy it from your doc and paste it right into the editor. To my surprise, this gave an excellent result. No weird span tags, the headings where correct, paragraphs transferred correctly, and the links were still in place. Nice! I didn’t discover any flaws at all. For me, this is an enormous improvement, as it is not that easy in the classic editor. Of course, I’m aware there are workarounds for issues with it in the current editor, but how wonderful if we wouldn’t need those!

Switch a block to HTML in Gutenberg

If you want to edit a piece of content in HTML you can click on the three dots in the upper right corner of a block and switch to HTML:

This feature made me so happy! We’ve got some pretty lengthy articles here at Yoast, especially our cornerstone articles, and the time I’ve spent to find exactly that sentence or paragraph that I wanted to edit… I think this feature will make me work much more efficiently.

Search for a paragraph and move it

In Gutenberg, you can find a table of contents in the sidebar when you click on the information icon above your article. I didn’t really expect to find it there – perhaps some ‘structure-like’ icon would make more sense – but I like the fact this table of content exists. I can click on a heading and jump to that part of the copy directly.

If one of our authors has written a long article, this comes in handy! When editing a text, I sometimes search for a paragraph because I’d like to change it a bit, add something or move it to another location to improve the flow. In that case, I can just drag and drop a block and move it to another location. You can also use the upward or downward arrow on the left side of the block to move a block up or down. Not sure if I would use that much though.

Placing the mouse correctly to make the hand icon appear to move the block can be a bit of a struggle. I also noticed that if I’d like to move two blocks together, for instance, a paragraph and a header, you’d have to move them separately. At least I didn’t achieve to select and move them together.

Headings and anchors in Gutenberg

Headings are essential for your users and SEO. They guide the reader, show the structure of your text and should mention the most important (sub)topics of it. In my daily work, I notice that sometimes writers get enthusiastic and start writing a lot of paragraphs after one single subheading. In that case, the readability analysis of Yoast SEO will throw off this notice:

readability too much text subheading

So I’ll have to add some subheadings to improve the readability of the copy, which is easy with Gutenberg. Just click on the plus or hit enter where you want the additional heading to be. It will be an H2 by default — which I like — but you can quickly change it to an H3 or H4 if you want.

add heading in gutenberg

Select the right heading for a block

Ok, this might not be the hardest thing to do in the classic editor either – especially if you know you can use ## before the heading and hit enter to create an H2 – but not everyone knows these kinds of tricks.

Easily create an HTML anchor to link to a heading

And what I like most… there is a way to add an HTML anchor to your heading without having to switch to HTML! Click on Advanced on the Block tab in the sidebar, and the option will unfold.

Just add the text you want, let’s say ‘example’, and you can link directly to this heading from everywhere by adding #example to the URL of the page! No need to add id=’example’ in the HTML of your copy. Awesome, right?

Duplicate and share blocks

Reusing a useful piece of content you’ve already created is music to every web editor’s ears. In Gutenberg, you can duplicate a block (create an exact copy of it in your article), or you can share it. If you share it, you can use it again on another post or page. It’s one of the few things I sometimes actually miss from Oracle ATG, a feeling I don’t get very often ;-)

“But what about duplicate content?” I hear you think. Of course, you should reuse blocks sensibly and be aware of not duplicating or recreating entire pages. This could confuse Google which page to show in the search results.

But sometimes you’ve created a nice-looking layout which you’d like to reuse. Or you’ve written a small piece of copy you’d like to add in multiple articles. With the shared block function, you won’t have to type it over and over again or copy and paste it all. I can imagine we could use this to link to our cornerstones at the end of a post, or if we want to add a short notification to a certain set of posts. And I’m sure much more great use cases will come up!

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

Yoast SEO: the #1 WordPress SEO plugin Info

Adding images to the content

As an editor, quite often we add illustrations and screenshots to a blog post. I tried to add some using Gutenberg and it’s easy. Just hit enter, click on the plus and upload the image you want to add. What I liked immediately is that you can write a caption below the image right away. Good captions can help the reader to understand what the image is about. Just seeing this option might trigger the writer to add one, which could increase the reader’s understanding of the copy. In the sidebar, you can add an alt text too, which is great.

I got a little less enthusiastic though when I tried to select and scale the image. When I selected it, it selected the paragraph below it too. This might be caused by the fact that I aligned the image left or right, but I think it shouldn’t happen anyway. The scaling functionality appeared to be off a bit too. It only seemed to scale properly when I moved the mouse vertically, not horizontally, which took me a while to find out. This probably still needs some work.

No issues?

Until so far this has been a fairly positive article. What about the downsides? To be honest, I didn’t encounter much inconvenience working with the editor yet. What I found a bit odd is that the plus only appears after you hit enter after a paragraph. For me, it would make sense if it would be there and you could click it after you’ve finished your sentence. But that’s just a minor thing. Apart from that, the image editing functionality requires some finetuning, as I explained. But that’s about it!

Go and try it out too!

I’ve had a very positive experience working with Gutenberg and got more excited along the way! But I can only judge it as an author or editor on our blog. Of course, there are much more roles and technical implications that don’t directly affect me in my work. That’s why I’m curious how other people experience using this editor. So I’d say, don’t be scared and go for it! Use Gutenberg and try to do with it what you usually do. And please share your findings in the comments below!

Read more: ‘Gutenberg: Concepts for integrating with Yoast SEO’ »

The post Using Gutenberg as an editor: does it make my life easier? appeared first on Yoast.

How to Add Courses to WordPress with LearnPress

Courses provide a wonderful way for you to grow your business’ revenue as well as your email list by providing value to your audience in a way that’s instructive and easy to follow. You can do this by offering fully-fledged courses to potentially earn tens of thousands of dollars in revenue or by simply using a free mini course as.... Continue Reading

The post How to Add Courses to WordPress with LearnPress is written by Lyn and appeared first on WPKube.

Sustainability + WordPress = SustyWP

Jack Lenox, a Software Engineer at Automattic, has launched a new site called SustyWP that focuses on web sustainability using WordPress.

By removing the parts of Underscores he didn’t need, using one inline SVG image, no sidebars, limited CSS, and no webfonts, Lenox was able to launch a WordPress site that only has 7 Kilobytes of data transfer.

As you might expect, the site crushes page speed and performance benchmarks. The site is also hosted in a data center that uses 100% renewable energy.  To learn how and why he built the site, check out his detailed blog post.

While only transferring seven kilobytes of data is commendable, these days, websites are feature-rich. I wonder how practical his methods are for large and complex sites.

Lessons Learned Making ScoutDocs: Outsourcing

Now that ScoutDocs is in the WordPress plugin repository, I’d like to share some lessons I learned making it. Every project teaches me something — this one taught me a lot.

ScoutDocs-plugin-header-1544x500What is ScoutDocs? ScoutDocs is a WordPress plugin that adds simple file-sharing to your WordPress site. You can upload files (which are stored securely in the cloud and served over HTTPS via a global CDN), and share them with individuals or groups of individuals. Email notifications are also handled by the ScoutDocs service, getting around the issue of reliable email delivery on a shared host. You can require that recipients accept or decline the files you’ve shared, e.g. so you can see which of your employees has seen the new employee handbook. Instead of files living as email attachments (if they even fit) or off on some third-party site, people can access them on your site.

In this weekly series, I’m going to cover:

  • Outsourcing
  • React
  • WordPress Rest API
  • PHP 7
  • Build tools
  • Unit testing

First up, lessons learned about outsourcing.

When we started making ScoutDocs, the question was raised as to whether it would be beneficial to outsource any of the coding. My time was valuable and limited, so I figured that if I had another developer code while I slept, I could spend an hour in the morning reviewing the code and giving them direction for the next workday. I had visions of quickly scanning code while my morning coffee brewed, twirling an invisible moustache, and muttering “good, good.”

This is not what happened.

The issue I quickly ran into was that for any nebulously defined problem, someone else’s solution was unlikely to match what I wanted. Their assumptions would not be the same as mine. As a result, the odds of me being happy with their solution were very low.

I spent a lot of time rewriting code.

And because I was spending all my time “fixing” the code I wasn’t really looking at the product as a whole.

When the contractors were done, my ScoutDocs partners and I looked at it, and we realized that it… was bad. Forget code quality, which despite all my vain reshuffling was still lacking: what we had was just overall a terrible user experience. Rather horrifyingly, we admitted that what we needed to do to give it the user experience we wanted was nothing short of a total rewrite.


I rolled up my sleeves, learned React (future post!), and rewrote ScoutDocs until almost nothing of the original code and user experience remained.

So was outsourcing a waste? Not completely. Some code was retained, mostly relating to the Amazon S3 interface. I was glad that someone else had experienced the singular joy of spending an eternity lost in a maze of Amazon Web Services documentation and confusing code samples. Additionally, if I had set out to build the initial version of the code, it would have taken a lot of my time (which I did not have much to spare), and might have meant that our horrifying realization would have been delayed for several months.

Knowing what doesn’t work is valuable, even if you have to throw it away. That’s mostly what we had gotten for our money: figuring out what didn’t work. If outsourcing can get you to these realizations sooner or for less money, it might be well worth it.

As I rewrote the software, my partners asked me a few times if I regretted outsourcing. I didn’t, for the above reason, but also because outsourcing had solved some of the coding issues that would have been a slog for me. However, if I was doing it all over again, I would have done more work upfront to identify specific, well-defined tasks that I wanted to outsource.

Delegation makes sense when the task is well-defined. At the extreme, you could spend so much time redoing work and asking for revisions that you’d have been better off just doing it yourself. If you can specify exactly what constitutes success in a task, and the time it takes you to specify that is much less than the time it would take you to do the task, outsource it.

Check back next week for my thoughts on rewriting ScoutDocs in React.

Community Spotlight: James Huff (MacManX)

Providing support on the forums is one of the easiest ways to contribute to WordPress and those who do are some of the unsung heroes of the project. One of those heroes is James Huff known as MacManX on the forums.

Huff has been supporting users for 13 years and recently celebrated an awesome milestone reaching 50K replies.

In this spotlight, we learn what drives Huff to provide support, what he’s learned, and what users can do to improve the likelihood a support request will be resolved.

What drives your desire to help people with WordPress on the support forums?

I like helping people succeed with WordPress. It’s kind of a legacy for me, because you never know if solving one blocker will lead to a life-changing site or service. If anything, I hope I made a few days better for a few folks.

Any trends or common issues you’ve noticed in the past few months/years?

Nothing out of the ordinary. Plugin and theme conflicts will always be the most common.

What tips or suggestions do you have for users to increase the likelihood of solving their problem?

Try the Health Check plugin first, its Troubleshooting Mode is great!

What lessons have you learned by providing support in the forums?

I learned about almost everything I have done to customize my sites first by helping someone else do it. Overall, I have learned quite a bit about WordPress just by helping other people.

To learn more about James and how he got involved with supporting the WordPress community, watch this presentation by Andrea Middleton from WordCamp Seattle 2017.

Media / attachment URL: what to do with them?

In our major Yoast SEO 7.0 update, there was a bug concerning attachment URL’s. We quickly resolved the bug, but some people have suffered anyhow (because they updated before our patch). This post serves both as a warning and an apology. We want to ask all of you to check whether your settings for the redirect of the attachment URL’s are correct. And, for those of you who suffered from a decrease in rankings because of incorrect settings, we offer a solution that Google has OKed as well.

Is redirect attachment URLs set to “Yes”?

You need to check this manually: unless you have a very specific reason to allow attachment URLs to exist (more on that below), the setting should be set to “Yes” . If the setting says “Yes”, you’re all set. You can find this setting in Search Appearance, in the tab Media.

media attachment urls setting in Yoast SEO

Is your attachment URL set to “No”?

If your attachment URL is set to “no”, there are two different scenario’s which could apply to you. You could intentionally have set this setting to “no”, but the setting  could also be turned to “no” without your intent.

Intentionally set to “No”

If you intentionally put the setting of the attachment URL to “No”, you’ll probably be aware of that fact. In that case, your attachment URL’s are an important aspect of your site. You’re linking actively to these pages and these pages have real content on them (more than just a photo). This could for instance apply to a photography site. If you want this setting to say “No”, you’ll probably have put a lot of thought in this. In this case, you can leave your setting to “no”. You’re all set!

Unintentionally set to “No”

It is also possible that you notice that the setting is set to “No” and this was not intentionally. You’ve suffered from our bug. We’re so very sorry. You should switch your toggle to “Yes” and save the changes. Perhaps you need to do a little bit more, though. There are (again) two scenario’s:

Traffic and ranking is normal

Ask yourself the following question: have you noticed any dramatic differences in your rankings and traffic in the last three months (since our 7.0 update of march 6th)? If the answer to this question is no, than you should just turn the redirect setting of the attachment URL to “Yes” and leave it at that. You did not suffer from any harm in rankings, probably because you’re not using attachment URL’s all that much anyway. This will be the case for most sites. After switching your toggle to “Yes” and saving the changes, you’re good to go!

Traffic and ranking have decreased

In the second scenario, you notice that the redirect attachment URL setting is set to “No” and you did indeed suffer from a dramatic decrease in traffic and ranking. We’re so very sorry about that. Make sure to switch the setting of the attachment URL to “Yes” immediately.  In order to help you solve your ranking problem, we have built a search index purge plugin. Download and install this plugin here. More on the working of this separate plugin below.

What to do if you’re not sure

If you’re not sure whether you’ve been affected by this, and your Google Search Console is inconclusive: don’t do anything other than setting the setting to “Yes”. See “What did Google say” below for the rationale.

What do attachment URL’s do anyway?

When you upload an image in WordPress, WordPress does not only store the image, it also creates a separate so-called attachment URL for every image. These attachment URLs are very “thin”: they have little to no content outside of the image. Because of that fact, they’re bad for SEO: they inflate the number of pages on your site while not increasing the amount of quality content. This is something that WordPress does, which our plugin takes care off (if the setting is correctly turned to “Yes”).

Historically, we had had a (default off) setting that would redirect the attachment URL for an image to the post the image was attached to. So if I uploaded an image to this post, the attachment URL for that image would redirect to this post. In the old way of dealing with this, it meant that images added for other reasons (like say, a site icon, or a page header you’d add in the WordPress customizer), would not redirect.  It also meant that if you used an image twice, you could not be certain where it would redirect.

In Yoast SEO 7.0 we introduced a new feature to deal with these pages. Now, we default to redirecting the attachment URL to the image itself. This basically means attachment URLs no longer exist on your site at all. This actually is a significant improvement.

What did the bug do (wrong)?

The bug was simple yet very painful: when you updated from an earlier version of Yoast SEO to Yoast SEO 7.0-7.0.2 (specifically those versions), we would not always correctly convert the setting you had for the old setting into the new one. We accidentally set the setting to ‘no’. Because we overwrote the old settings during the update, we could not revert this bug later on.

The impact of the bug

For some sites our bug might have a truly bad impact. In Twitter and Facebook discussions I’ve had, I’ve been shown sites that had the number of indexed URLs on their site quintupled, without adding any content. Because with that setting being “No” XML sitemaps was enabled for attachments. As a result of that, lots and lots of attachment URLs got into Google’s index. Some of those sites are now suffering from Panda-like problems. The problem will be specifically big if you have a lot of pictures on your website and few high quality content-pages. In these cases,  Google will think you’ve created a lot of ‘thin content’ pages all of a sudden.

The vast majority of the websites running Yoast SEO probably hasn’t suffered at all. Still, we messed up. I myself, am sorry. More so than normal, because I came up with and coded this change myself…

What did Google say?

We have good contacts at Google and talk to them regularly about issues like these. In this case, we discussed it with John Mueller and his first assessment was similar to mine: sites should normally not suffer from this. That’s why we don’t think drastic measures are needed for everyone. Let me quote him:

“Sites generally shouldn’t be negatively affected by something like this. We often index pages like that for normal sites, and they usually don’t show up in search. If they do show up for normal queries, usually that’s a sign that the site has other, bigger problems. Also, over the time you mentioned, there have been various reports on twitter & co about changes in rankings, so if sites are seeing changes, I’d imagine it’s more due to normal search changes than anything like this.”

We’ve also discussed potential solutions with him. The following solution has been OK’d by him as the best and fastest solution.

What does this search index purge plugin do?

The purpose of the search index purge plugin is to purge attachment URLs out of the search results as fast as possible. Just setting the Yoast SEO attachment URL redirect setting to “Yes” isn’t fast enough. When you do that, you no longer have XML sitemaps or anything else that would make Google crawl those pages, and thus it could take months for Google to remove those URLs. That’s why I needed to be creative.

Installing this plugin will do the following two things:

  • Every attachment URL will return a 410 status code.
  • A static XML sitemap, containing all the attachment URLs on a given site will be created. The post modified date for each of those URLs is the activation date and time of the plugin.

The XML sitemap with recent post modified date will make sure that Google spiders all those URLs again. The 410 status code will make sure Google takes them out of its search results in the fastest way possible.

After six months the attachment URLs should be gone from the search results. You should then remove the search index purge plugin, and keep the redirect setting of the attachment URLs set to “Yes”.

Advice: keep informed!

We try to do the very best we can to help you get the best SEO out of your site. We regularly update our configuration wizard and there is no harm whatsoever in running through it again. Please regularly check if your site’s settings are still current for your site. We do make mistakes, and this release in particular has led us to a rigorous post mortem on all the stages of this release’s process.

We regularly write about things that change in Google, so stay up to date by subscribing to our newsletter below. If you want to understand more of the how and why of all this, please do also take our new, free, SEO for Beginners course, which you’ll get access to when you sign up.

The post Media / attachment URL: what to do with them? appeared first on Yoast.

The First Release of WordPress Turns 15 Years Old

This Sunday, May 27th, marks the 15th anniversary of the first release of WordPress. Users are celebrating the occasion across the world with huge cakes, cupcakes, memorable photos, parties, and meetups.

To see if there is an event near you, visit the official WordPress 15th anniversary site and type your city into the search box. You can also follow the festivities on Twitter by browsing the #WP15 hashtag.

If you’re thinking about hosting a party and want to use the WordPress logo on a cake or other bakery items, you’re in luck. The WordPress Foundation has amended the WordPress Trademark Policy to allow people to put the logo on baked goods.

*** Attention: If you’re interested in putting the WordPress logo on a cake, cookie, cupcake, babka, or other celebratory food in honor of the WordPress 15th Anniversary… yes, this is OK under the Trademark policy. ***

WordPress Trademark Policy

In 2015, we highlighted 93Digital‘s WordPress Time Machine. The company has continued to update the timeline with images of the WordPress 4.6, 4.7, 4.8, and 4.9 backends along with their default themes. The timeline is a quick way to see how WordPress has evolved over 15 years.

93Digital WordPress Time Machine

Don’t forget that you can use the coupon code CELEBRATEWP15 to take 15% off any swag you purchase on the WordPress Swag store. The coupon code is good through the end of the year.

Will you be celebrating WordPress’ birthday this weekend? If so, how and where? Let us know!

Why Sites Didn’t Automatically Update to WordPress 4.9.6

WordPress 4.9.6 was released last week and was labeled a minor release. Minor releases trigger WordPress’ automatic update system. Shortly after its release, some users began questioning why their sites were not automatically updating to 4.9.6. I wondered the same thing after logging into a site I maintain and discovering it had not updated.

It turns out that the WordPress Development team disabled the auto update system after discovering that a few plugins were incorrectly loading the new privacy features and triggering fatal 500 errors on the frontend of user’s sites.

The issue stems from privacy code that includes a file that was not expected to be loaded without the rest of the WordPress admin. Mika Epstein, a volunteer member of the plugin review team, personally contacted the affected plugin developers last weekend to help rectify the issue.

A recent scan of the WordPress plugin directory shows that there are no other plugins incorrectly loading the privacy code. However, automatic updates for WordPress 4.9.6 remain disabled until the release of WordPress 4.9.7.

WordPress 4.9.7 will fix the issue described above and include a few other bug fixes. Since auto updates will be enabled for 4.9.7, sites running on 4.9.5 should auto update to 4.9.7 when it’s released. WordPress 4.9.7 is expected to be released sometime after the Memorial Day holiday. Until then, users will need to manually update to 4.9.6.

How to Upload a HTML Page to WordPress without 404 Errors

Do you want to upload a HTML page to your WordPress site? Sometimes you may need to add a static HTML page and make it accessible along with your WordPress site. In this article, we will show you how to properly upload a HTML page to your WordPress site without causing 404 errors.

How to Upload HTML Page to WordPress Site

Why Upload HTML Pages to WordPress?

WordPress comes with a built-in content type to add pages to your website. Often WordPress themes add pre-designed page templates to display your pages.

There are even WordPress landing page plugins that allow you to create beautiful page templates with a drag and drop builder.

This means that in most cases, you shouldn’t need to upload a HTML page to your WordPress site.

However, sometimes a user may have static HTML pages from their old website or a static template that they really like and want to use. In these scenarios, you will need to upload your HTML page to WordPress.

Since, WordPress comes with its own SEO friendly URL structure, it can cause a 404 error if you simply uploaded your HTML page and tried to access it.

That being said, let’s take a look at how to upload a HTML page to your WordPress site without causing 404 errors.

Uploading HTML Page to WordPress Site

Before you upload your HTML page to the WordPress site, you need to make sure that the ‘index.html’ file is renamed to ‘index.php’.

HTML Template File

After that, you need to add all files including the HTML page, CSS, and other folders to a Zip archive.

Windows users can right-click and select Send to » Compressed Zip Folder option to create a zip file. Next, simply drag and drop all files and folders for your HTML page to the zip file.

Zip Archive HTML Page

Mac users can select the parent folder containing all files and folders, and then right-click to select ‘Compress folder’ option.

Create zip file in Mac

Next, you need to go to the cPanel of your WordPress hosting account. In the cPanel, you need to scroll down to the Files section and then click on the File Manager app.

Open File Manager

Once you are in File Manager, you need to navigate to the website root folder which is usually called public_html and contains all your WordPress files folders. From there, you need to click on the Folder link from the top menu to create a new empty folder.

Create a New Folder

A popup will open where you need to add a name for the new folder. Use a name that you want to use as the URL of your HTML page and then click on the Create New Folder button.

Create new folder in cPanel

After creating the folder successfully, you need to open it and click on the Upload button from the top menu to select and upload the zip file you created earlier from your computer. You’ll see the progress bar while the zip file uploads to your site.

Upload Zipped Template File

Once uploaded, you need to select the zip file and then click on Extract button from the top menu.

Extract Files

You will be asked where to extract the files. Simply select the same new folder that you created and click on the Extract File(s) button.

Extract Files in New Folder

File Manager will now extract the zip file, and you will be able to see files in your folder.

Note: You can now delete the zip file from here. It doesn’t affect your HTML page or any other folders that are extracted.

Extracted Folder

Now you can visit this page in the browser by using the name of the folder (For example, If your server doesn’t support the redirection, then you may see a 404 error. It happens because your ‘index.php’ file is not redirected on loading the URL in browser.

It is one of the common WordPress errors and can be fixed easily.

Using the File Manager app, you need to edit .htaccess file in your website’s root folder and add the following code:

RewriteRule ^(.*)index.(php|html?)$ /$1 [R=301,NC,L]

This code will redirect your ‘index.php’ file and load it in the browser. If you are using a case-sensitive name for a file or folder, then the above code will also redirect that to show you the content.

We hope this article helped you learn how to upload an HTML page to your WordPress site without 404 error. You may want to see our comparison of WordPress vs static HTML to learn which one is better for your business. Also for creating landing pages, we recommend taking a look at the best WordPress drag & drop page builder plugins.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

The post How to Upload a HTML Page to WordPress without 404 Errors appeared first on WPBeginner.

Rank with that cornerstone content!

Cornerstone articles are those posts that are most important to you. The ones you really want to rank with. The posts that make people come back to your site or buy your stuff. But how do you make sure to rank with your cornerstone articles? How do you get the most out of your cornerstone articles?

In order to rank with these articles, you simple need a kickass internal linking structure. The internal linking tool of Yoast SEO Premium will help you to do just that! In this post, I’ll explain just what cornerstone content is and how to rank with these articles!

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

Yoast SEO: the #1 WordPress SEO plugin Info

How to rank with your cornerstone content?

Like external links, internal links are very important for SEO. If you want to rank well, your site structure needs to be impeccable. The articles that have the most internal links pointing towards them are perceived by Google as the most important ones on your website. That’s why you need to make sure your cornerstones get most internal links. These are the ones you want to rank with!

Above that, you need to make sure your links are related. Contextual links are the ones that’ll help you rank. You should make sure that you’re linking from pages that actually are related.  Hand-picked, relevant links offer the best possible way of doing this. Automation will not give you quality results.  Building a decent linking strategy is a lot of work though, especially if your site is rather large. The internal linking tool of Yoast SEO Premium will help you to build that kickass internal linking structure.

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

Basic SEO training Info

What does the internal linking feature do?

The internal linking tool will help you to quickly pick related links to add to your posts and pages. The internal linking tool analyses all of your posts and chooses which articles are related. In the sidebar, you easily can pick articles that are relevant to link to. You can easily drag and drop the links in your article.

The internal linking tool will thus help you to pick those articles you need to be linking to. The articles will be related and contextual, because we analyzed the content of all of your posts on prominent words. If you have indicated that your article is a cornerstone article, it will pop up highest, because they are the most important. Make sure to link to these, whenever they pop up.

What is the cornerstone analysis?

Next to lots of internal links, cornerstone articles need to have really great content in order to make them rank. That’s what the cornerstone analysis takes care off. Cornerstone articles should be better than your other articles on your site and that means the demands on your writing are higher.

The cornerstone analysis is an adaptation of the default SEO analysis. We adapted 2 readability checks and 8 SEO checks to come to the cornerstone analysis. Most important adaptation in the SEO checks is the demand for a lengthy article. It will be harder to score that green bullet. You have to do all important things right!

Conclusion: how to rank with cornerstones?

Your cornerstone articles deserve special attention. They need to be chosen  carefully. Which articles are most important to you? Which are the most complete and authoritative? Cornerstones deserve many links pointing towards them to make Google see that they are the most important articles. And they deserve your best writing skills. That’ll make them rank in the search engines. That’ll get them the traffic they deserve!

Keep reading: ‘What is cornerstone content?’ »

The post Rank with that cornerstone content! appeared first on Yoast.

WP 4.9.6, Privacy, Hooks, and You

WordPress 4.9.6 has been released. This was a focused release, a little different than other minor releases, in that it adds a system for a privacy policy to WordPress. While the only change to plugins has been our requirement that you not claim (or imply) 100% compliance in anything, the changes to privacy awareness are far reaching.

The tl;dr of the whole post is “You’re going to need to consider the impact of data collection in your plugins, even if you don’t collect anything.” So yes, I know it’s long, but please read the whole thing.

NOTE: We are not lawyers. We cannot tell you if what your plugin is doing is going to break a law. Please don’t ask us to try and figure that out for you. The purpose of this post is to make you aware of what’s going on, and give you a place to start with making your plugins better.

Does This Impact You?

Yes. This impacts everyone. Plugins are used internationally which means you actually do have to be aware of the world, Net Neutrality shenanigans aside. Your plugin could, in fact, cause someone to get in legal trouble. While that is technically their responsibility, you should be as aware as possible of the implications of your code and how it’s used.

Ask yourself this: Does your plugin…

  • … write any private data of users (registered or visitors) to the database?
  • … send any data to remote servers (i.e. act as a service or embed content)?
  • … edit the comments form in any way?

If yes, then this absolutely, without a doubt, impacts your plugins.

If no, then this may still impact you, so please keep reading, because people are going to ask you about this.

Privacy Means Disclosure

If you’re a service, like you pull a library from a remote server, then you have to tell people that you pull data remotely. This has always been a policy, so if you’re not disclosing this now, please go fix it right away.  But you also need to tell people the obvious things, like embedding content via your plugin means the site administrator is consenting to the embed terms of that service.

An example for you. Let’s say you have a plugin that embeds YouTube playlists. Your plugin should be clear “This plugin embeds YouTube Playlists.” We also recommend you include a link to YouTube’s privacy doc. It’s alright to say “By using the embed features in this plugin, you will be agreeing to YouTube’s Terms of Use.”

The same holds true now for data stored locally. If your plugin stores browser data of visitors, then yes, you need to document and disclose this. You can’t force site admins to publicize this in turn, but by making sure they know, you’re helping them determine what their own reasonable disclosure should be.

Some Code To Help

WordPress has gone the extra step to make it easier to make a privacy page and hook into it, both for users and developers. The moving parts you need to be aware of are the tool for users to request an export of all the stored data associated with them on the site. There’s also a tool for users to request erasure of that same data. Both tools include admin workflows to fulfill those requests. And there’s one to suggest what kind of text should be on someone’s site.

The handbooks have been updated to help you out here:

Also, while this is a little more aimed at theme developers, if your plugin happens to mess around with comments, please read the changes that affect themes, as there is going to be a new checkbox for comments.

Update Your Plugins

The tl;dr of all this is that plugins should…

  • … disclose what user/visitor information it saves in the readme;
  • … hook into the privacy page creator to inform people there too;
  • … provide a way to export said information;

We aren’t (currently) changing any policy to require all this. At the same time, I strongly recommend at the bare minimum everyone put a privacy policy in your readme. Even if you don’t save any data and you don’t send anything, make a Privacy Policy anyway and tell people that.

Why? At the very least, it may stop people from asking you “Is this plugin collecting any data?” which saves you time. But more importantly, this is to protect yourself. After all, if people come through with a 1-star review that you caused them to become non-compliant because you didn’t disclose local data collection, well, that would be a very justified review.

#core, #guidelines, #privacy

Closing Unused Plugins

When you submit a new plugin, we get to see every single plugin you’ve ever submitted. This means we also see how many plugins we approve that people never use. At this moment, there are over 9100 plugins approved and unused.

Edit: Unused means LITERALLY unused. No one uploaded code. Ever.

Because of that, we’re going through and closing unused plugins if it’s been 6+ months since the plugin was approved. In addition, if we notice a pattern of behaviour, where you are submitting multiple plugins and not using the provided hosting, we will pend any new submissions until you actually use the directory.

The good news about this is once we close it, people can request to take over the slug and use it for a new plugin.

Remember: Every time you submit a plugin, a human being downloads and reviews your code. If you’re submitting with out a plan to actually use the hosting, you are abusing the finite resources, and taking away from everyone else who is using the directory. Worse, we’ve found out some people like to get a review as a ‘free’ security review instead of hiring people for that work.

Most of you, this won’t impact in the slightest. After all, you use the hosting 😀

And of course, if you have a plugin you don’t want to host anymore, you can always ask us to close it (though please read the FAQ on Closing Plugins first).