WP REST Yoast Meta

Descripción

Are you using WordPress for a headless set-up, using the WP REST API? And would you like to use the Yoast SEO plugin just like you would for any other project? This plugin adds the meta tags generated by the Yoast SEO plugin to the WP REST API output, allowing your headless set-up to implement them. Also when you are using Yoast SEO Premium you have the option to retrieve redirects throught the API: this plugin adds a custom endpoint (/wp-rest-yoast-meta/v1/redirects) to provide those redirects in a JSON format. Since Yoast 11.0 JSON LD Schema.org data is also supported and is now also available through the WP REST API when using this plugin.

Installation from within WordPress

  1. Visit ‘Plugins > Add New’ (or ‘My Sites > Network Admin > Plugins > Add New’ if you are on a multisite installation).
  2. Search for ‘WP REST Yoast Meta’.
  3. Activate the WP REST Yoast Meta plugin through the ‘Plugins’ menu in WordPress.

Installation manually

  1. Upload the wp-rest-yoast-meta folder to the /wp-content/plugins/ directory.
  2. Activate the WP REST Yoast Meta plugin through the ‘Plugins’ menu in WordPress.

Capturas de pantalla

  • The WP REST API output for the Hello World post example.

FAQ

I have installed the plugin, where can I find the Yoast meta tags?

For each post/page/… you can find an array of meta tags in that object under yoast_meta.

I have installed the plugin, where can I find the Yoast JSON LD Schema.org data?

For each post/page/… you can find an array of JSON LD data in that object under yoast_json_ld.

I have created a custom post type, will the plugin add the meta tags to that post type?

Yes, the plugin will automatically add meta tags to custom post types. Unless you have created a custom WP_REST_Controller for it and have not implemented the rest_prepare_POSTTYPE filter.

Can I add my own meta tags?

Yes you can! Use the hook wp_rest_yoast_meta/filter_yoast_meta like this:

/**
 * Add a custom meta tag.
 */
function wpym_add_custom_meta_tag( $yoast_meta ) {
    $yoast_meta[] = array(
        'property' => 'og:type',
        'content' => 'article'
    );
    return $yoast_meta;
}
add_filter( 'wp_rest_yoast_meta/filter_yoast_meta', 'wpym_add_custom_meta_tag', 10, 1);
I have the Yoast SEO Premium plugin installed, will it work?

Yes this plugin supports both the free and the premium version of Yoast SEO. Please keep in mind that the free version of Yoast SEO does not allow you to specify redirects, so the redirects endpoint will return an empty set.

I have set the homepage to display my latest posts, how do I get the Yoast meta for the homepage?

This plugin adds a custom endpoint (/wp-rest-yoast-meta/v1/home) to retrieve the Yoast meta for the homepage.

I don’t want the Yoast Meta to be applied to post type X, can I stop it from being added?

Yes you can! Use the hook wp_rest_yoast_meta/filter_post_types like this:

/**
 * Remove Yoast Meta from the page post type
 */
function wpym_remove_post_type( $post_types ) {
    foreach ( $post_types as $key => $post_type ) {
        if ( 'page' === $post_type->name ) {
            unset( $post_types[ $key ] );
        }
    }

    return $post_types;
}

add_filter( 'wp_rest_yoast_meta/filter_post_types', 'wpym_remove_post_type', 10, 1 );

Opiniones

31 de Octubre de 2019
Must Have for applications using WordPress as headless CMS. Much better to make use of the existing Yoast SEO settings. Thanks for this plugin for making it available on the REST API.
Leer los 3 comentarios

Colaboradores & Desarrolladores

“WP REST Yoast Meta” es software de código abierto. Las siguientes personas han contribuido a este plugin.

Colaboradores

“WP REST Yoast Meta” ha sido traducido en 1 idioma. Gracias a los traductores por sus contribuciones.

Traduce & #8220;WP REST Yoast Meta” a tu idioma.

¿interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN , o suscríbete al log de desarrollo por RSS .

Historial de cambios

2019.5.1

Release Date: November 7th, 2019

Feature: Added filter to be able to remove yoast meta from post types.
Bugfix: Fix multiplication of json-ld data.
Bugfix: Make sure Twitter meta image displays correct image.
Bugfix: Fix homepage endpoint not updating.

2019.5.0

Release Date: October 29th, 2019

Feature: Added custom endpoint for retrieving homepage Yoast meta.

2019.4.2

Release Date: October 20th, 2019

Bugfix: Transients shouldn’t be set without expiration.

2019.4.1

Release Date: October 18th, 2019

Bugfix: fix inconsistency between DOMDocument and simplexml in parsing json ld data.

2019.4.0

Release Date: October 17th, 2019

Feature: Added Yoast SEO’s JSON LD Schema.org data to the WP REST API.

2019.3.0

Release Date: October 15th, 2019

Bugfix: Improved HTML parsing using DOMDocument.

2019.2.1

Release Date: June 27th, 2019

Bugfix: Yoast meta wasn’t regenerated correctly after a post update.

2019.2.0

Release Date: June 16th, 2019

Improvement: Meet WordPress Coding Standards.
Bugfix: Better check if Yoast SEO (Premium) is installed and activated.

2019.1.0

Release Date: March 6th, 2019

First public version.