How to generate a BreadcrumbList Schema

A breadcrumb trail on a page indicates the page’s position in the site hierarchy. A user can navigate all the way up in the site hierarchy, one level at a time, by starting from the last breadcrumb in the breadcrumb list.

Google uses the BreadcrumbList Schema-Type to show it in search results. You can read more about that on Googles Reference Page. In this post I’ll show you how to generate a BreadcrumbList with SNIP – The Rich Snippets and Structured Data Plugin for WordPress.

Continue reading

How to install the Rich Snippets Plugin.

Installing the plugin is super easy. Just follow the steps below:

  1. Upload the rich-snippets-wordpress plugin folder to the /wp-content/plugins/ directory.
  2. Activate the Rich Snippets WordPress Plugin through the „Plugins“ menu in WordPress.
  3. Head to the „Rich Snippets“ menu that appears in your WordPress dashboard and click „Activation“. Enter your Envato purchase code end click the big blue „Let’s get started“ button.? If you don’t know where you can find your Envato purchase code, click here.
  4. Then click the „Global Snippets“ menu in your WordPress dashboard to manage global snippets.
  5. Or add your own snippets directly in your blog posts, pages or custom post types.

Quick start

Take the Structured Data Training. It’s free for all customers. It tells you every thing from:

  • What Structured Data is.
  • What Rich Snippets are.
  • How to use SNIP.

 

How to deactivate JSON+LD schema output of “The Events Calendar” plugin

Google and other search engines are working heavily on schema.org integration. In the past, a lot of theme and plugin authors have integrated schema.org in their plugins but could not keep up with the speed of changes. So what I see happens a lot is that plugin and theme authors do not update their code accordingly. This is the case with the The Events Calendar plugin, too. It is missing some fields search engines want to see.

Continue reading

How does the licensing work?

I’m a seller on Envato Market (CodeCanyon) so I’m bound to their license system. If you want to read more about their licensing, please go and read the information about the Standard License. They even have a FAQ page that should answer most of your questions as well.

The questions that I get most often are the following ones:

Do I need a a license for every single domain?

The short answer is yes. Even the extended license does not allow you to use it on multiple domains. As far as I know, Envato has no plans to changes this in the future.

Do I need multiple licenses if I’m on a multisite?

  • Yes, you need multiple licenses if every site on your multisite has its own domain name.
  • No, you don’t need multiple licenses if you’re using subfolders or subdomains for the multisites.

How to add @id field to a snippet

Since version 2.4.0 it’s now possible to add a customized @id-field to each global snippet. Just edit a global snippet and scroll down to the JSON+LD metabox as shown below.

WordPress Metabox with a field for the @id value of a snippet
Edit the @id value.

Normally, search engines expect an URL with a hashtag here. So you can add the {url} placeholder to replace it with the current page URL. For example, if the snippet get’s included into the page https://this-is-my.site/whatever/ and you define the @id value as {url}#product then the full @id value would be https://this-is-my.site/whatever/#product.

Is the plugin up-to-date?

A question that I get asked from to time to time is if the plugin gets updated regularly. The answer is yes! The plugin exists since 2011 and it seems that it’s not going anywhere soon! 😉

Continue reading

Is the plugin multisite-friendly?

Kind of. If you activate the plugin network-wide you have to setup each site separately. There is no “global schema page” that are included on all network-sites at once.

Do you offer a setup service?

Customers asked if I offer kind of a service to setup schema.org for them. Unfortunately I can’t do this at the moment as I want my energy to get into the improvement of the plugin itself. However I’m here for support questions and I’m very happy to assist you with any questions that might pop up.

Continue reading

What Schema Markup is supported?

This plugin allows you to add every single schema markup found on schema.org. Here is a complete list that shows all markups on one page.

Plus: the plugin allows you to add schemas from the hosted extensions that are not officially part of the main syntax. You can find a complete list on this page.

Here is a complete list, of schema classes / schema types the plugin:

Does the plugin add content to each website page?

The answer to this questions (obviously) is yes as we have to output readable structured data so that search engines can read it.

However the data that is outputted is not visible to the end user. It’s only readable by search engines.

If you would view the sourcecode of one of your pages, you would find lines starting with something that looks like this:

<script data-snippet_id="snip-59a6a8000b284" type="application/ld+json">...</scrtip>

The data that can be found between these lines is the actual structured data that is formatted in JSON+LD format.

Can I create a star rating system with this plugin?

The Rich Snippets Plugin allows you to create Rich Snippets that produce stars in search results. However it does not allow your users to rate your blog post as it’s not a rating plugin. That means it has no built-in rating system that counts automatically.

However you can probably integrate third party rating system if they store the total rating in the postmeta database table of WordPress. Check out the documentation page for updated information about this.

What are Global Snippets?

Global Snippets are a beautiful thing. They allow you to add one rich snippet to many posts at once. But how does it work exactly?


How to create a global Rich Snippet

  1. When you activate the plugin you will see a new menu item under “snip” in your WordPress dashboard. It’s named “Global Snippets”.
  2. Just open it up and add a new Global Snippet.
  3. You will then be able to create a Rich Snipppets.
  4. When you’ve finished creating the snippet, you can choose where it should appear.
  5. For this scroll down to the “Position” metabox.
  6. There you can create a set of rules to determine which pages will use these schema.org syntax you’ve just created.

Are there any examples?

Yes there are!

If you have a fresh install:

  1. Go to “snip” in your WordPress dashboard and choose “Global Snippets”.
  2. A new admin notice will appear on top of the screen. It says “Hey Dude! The plugin can install some predefined global snippets for you!”.
  3. It also shows a button that says “Awesome! Install them please”.
  4. Click on this button.
  5. Here are your examples! 😉

If the snippets where installed previously and you want to create them again, do the following:

  1. Go to “snip” in your WordPress dashboard and choose “Settings”.
  2. Scroll down to the “Actions” part.
  3. Click the “Go for it” button where it says: “Reinstall predefined global snippets.”.
  4. You should then be redirected to the Global Snippets page and should see some new Global Snippets, like the “Article”.

How can I fill certain properties automatically?

Can I add another snippet to a post that has a global snippet?

Yes you can. Read more about this here: Can I use multiple snippets on one page?

How to tell search engines which of the snippets is the main snippet on a page

As you may know it’s possible to have multiple snippets on one page. However this may cause side effects. Especially if you’re using multiple snippets that can create a Rich Snippet on search results. Let’s say you have a blogpost that generates the following snippets:

  • WebPage
  • Review
  • Event

The Review- and the Event-Snippet can create a Rich Snippet on search results. But how do you tell search engines which one to show? Continue reading

Can the plugin be updated automatically?

Not really automatically but kind of. You still have to initiate the update in your dashboard but you can get the update right in your WordPress dashboard without manually download/upload the plugin files.

If activated, you should get notified by Envato via E-Mail if I push a new version. However you can get a) get the updates earlier and b) via your own WordPress dashboard. Here is how to do it:

How to activate automatic updates

If the plugin is not yet running or is not activated:

  1. Log-In to your WordPress dashboard
  2. Activate the snip plugin.
  3. Go to snip -> Activation.
  4. Enter your purchase code and click the big blue button.
  5. That’s it!

What if updates do not appear?

The plugin only checks for updates every two days. If you know that there is an update but WordPress does not notify you about the update, do the following:

  1. Log-In to your WordPress dashboard
  2. Go to Dashboard -> Updates.
  3. If the update still does not show up, hit the gray “Check again” button.
  4. That forces the plugin to check live for an update.
  5. After that the update should appear.

Can I use the plugin together with WP Ultimate Recipe?

Partially. There is no built-in support for this plugin, but read on. I was able to test the free plugin (that is available on WordPress.org plugin repository) with the snip plugin.

How to include recipe parameters added to the plugin

a) First of all, create a Rich Snippet for a product.

b) Make sure it will only be included on “recipe” post type pages:

The ruleset metabox of the snip plugin.
Make sure the post type is “recipe”.

c) As an example, add the name property.

d) Select “Post meta field” from the dropdown field.

e) Enter “recipe_title” (without quotes) into the text field that appears:

The name property for the recipe snippet.
Choose “Post Meta field”.

f)  Beside the recipe_title, you can also use the following parameters:

Which meta fields do not work?

Of course there is a recipe_ingredients meta field. However the data is saved serialized into the database. That means the snip plugin cannot read it without generating extra PHP code for it. So that means you have to code yourself and/or ask a developer to do it.

However you can also follow these two guides to add the recipe list separately. That also means that you have to enter the recipe list on two places:

How can I add values with two meta fields?

Unfortunately this is not possible with the plugin. Here is an example:

For the prepTime property you would need to include both: the recipe_prep_time as well as the recipe_prep_time_text so that the output would be something like “60 minutes”.

The problem is that the prepTime property needs to be transformed into ISO8601 Duration format. So the real output format would be something like “PT60M”. Of course that depends very much on the input variables (what recipe_prep_time and recipe_prep_time_text returns).

I get an error that the domain is tied to another host.

This error occurs due to the fact that CodeCanyon only sells licenses that are available for one domain only. If you’re trying to install the plugin on multiple domains you will get the following error on the second domain:

“It seems that this purchase code is tied to another host. Please buy a new license in order to use this plugin on another sites.”

A) I’m getting the error while updating.

If you get the error while updating, please try the following:

  1. Login-in to your WordPress Dashboard
  2. Go to snip -> Settings.
  3. Click the “Clear Cache” button.
  4. Go to snip -> Activation.
  5. Click the big blue “Let’s get started” button again.
  6. If you get an error here, please read B).
  7. Then go back to Dashboard -> Updates.
  8. Click the gray “Check again” button.
  9. If you still get an error, please read B).

B) I’m not using it on other domains

If you think you’re not using the domain on another host, please contact support.

C) I want to switch to another domain

Of course that’s possible, too. Follow these steps:

C1) If you still have access to the old site

  1. Log-in to the site where SNIP was originally activated (old site)
  2. Go to “snip / Structured Data” menu and click the “Support” sub-menu item.
  3. On the right hand side you’ll find a metabox with a button labeled “Deactivate license on this site”. Press this button.
  4. The plugin will then de-activate and de-register itself.
  5. After this, you can use the purchase code on the new site.

C2) If you don’t have access to the old site

Please contact support.

Can I use Yoast SEO title and description?

Yes, with the beginning of version 2.2.0 you can use the following three internal values (if Yoast SEO plugin is installed):

  • SEO title
  • SEO meta description
  • and the Primary Category

Internal Yoast SEO values in dropdown menu
Choose one of the following values provided by the Yoast SEO plugin.

Does the plugin support custom fields?

In general, yes but there are limitations. Some of the plugins out there (like AdvancedCustomFields) save their data into the wp_postmeta database table. From there you can use the saved data to include it into your snippets. Note that this only works if the data is stored in plain text only. If the data has a special format it may not work (like encrypted or serialized data). In the latter case please contact your developer so that he/she can provide PHP functions to use that data.

Post Meta Value for Snippets
Use the “Post meta field” value from the dropdown.

Does this plugin work with All In One WP Security?

Yes it does. However you need to deactivate the “Advanced Character String Filter” under WP-Security > Firewall > Additional Firewall Rules. Otherwise the plugin will prevent the Rich Snippet Plugin to load some important JavaScript files that it needs to load properly.

Advanced Character String Filter Setting
Deactivate this setting to make the Rich Snippet Plugin to work properly

How can I modify the WooCommerce snippets?

The plugin cannot modify any snippets created by WooCommerce. However you can completely deactivate the generation of snippets created from it. Then you can re-create the products snippet on your own. In version 2.2 the plugin has a partical WooCommerce support. So it might be that you get in trouble by creating snippets for variable products with multiple prices, for example.

Does the plugin work with PageBuilders?

Some of you asked if the plugin is compatible to page builders like Beaver Builder, Elementor or Divi Builder. Except of the Divi Builder and the Avada-Builder I’ve not tested the other ones. However the plugin should be compatible as it does not add anything to the builders itself. The Rich Snippets will appear on the frontend as a JavaScript, not visible to the end user but readable to search engines.

Fix missing logo URL error on publisher information

Sometimes you get an error from the Rich Snippets Test Tool by Google that says that the image URL is missing. If this is the case, you maybe did not define a Site Identity Logo in WordPress. So to fix this you can do one of the following (A or B):

Solution A:

  1. Login to your WordPress Dashboard.
  2. Go to Appearance > Customize.
  3. Click on “Site Identity”.
  4. Upload an image in the section where it says “Site icon”.

Solution B:

There are several reasons why you don’t have the “Site Identity” option:

  • You’re using an old WordPress version.
  • Your theme removed the setting from the customizer.
  • Or you don’t want to use the site icon image.

In this case, do the following to add an image manually:

  1. Login to your WordPress Dashboard.
  2. Go to “snip – The Rich Snippets Plugin” > Global Snippets.
  3. Edit the “Organization” Snippet.
  4. Scroll down to the http://schema.org/logo property.
  5. Then edit the three image-properties as shown in the image below by setting the dropdown from their original properties to “Direct text input”. Then enter:
    1. The image URL to the logo.
    2. The width of the image.
    3. The height of the image.

Rich Snippet for an Organization
Change these three properties if you want to edit the logo image manually

Does the plugin work with WooCommerce?

Yes, there is a partial support for it. However please note that WooCommerce creates Rich Snippets on its own. My plugin gives you the opportunity to remove those snippets so that you can create your own product snippets.

This is what has changed during the latest updates of the SNIP plugin:

  • Since version 2.2. you can now add things like ‘offers’ directly when creating snippets. The data then comes from the WooCommerce products directly.
  • Since 2.5.0 it’s possible to add product attributes to snippets as well.

How to reference to something in the text editor

Referencing to content is outdated and will not work as of version 2.2.0! Referencing from JSON+LD format to HTML no longer works. The reference shortcode will be removed in version 2.2. Please read more on how to make the switch here.

Update July 30, 2018: There is currently a new schema type in development that would allow to reference something in the HTML sourcecode. It’s called CssSelectorType. However this type is currently in development and not supported by the major search engines. Once this is approved, the following information should work again as described.

Today I’ve got a question from Björn who works a lot with recipes on his website. He had a question about how to reference to some content in the editor. Here I describe how this works: Continue reading