web-dev-qa-db-fra.com

WP REST API V2 - Modification des réponses

J'essaie de modifier l'objet de réponse d'un appel WP REST API (v2) suivant ce guide: http://v2.wp-api.org/extending/modifying/

J'ai un type de message appelé Carrières et une taxonomie appelée Régions.

Les deux sont définis sur "show_in_rest" => true

J'utilise de jolis permaliens.

Quand j'obtiens mydomain/wp-json/wp/v2/careers, les résultats sont tels qu'attendus.

Jusqu'ici tout va bien.

Je voulais retourner les termes de taxonomie dans la réponse, alors j'ai ajouté le code suivant à functions.php

add_action( 'rest_api_init', 'add_location_to_career_endpoint' );
function add_location_to_career_endpoint() {
    register_rest_field( 'career',
        'regions',
        array(
            'get_callback'    => 'career_get_the_region',
            'update_callback' => null,
            'schema'          => null,
        )
    );
}
function career_get_the_region( $object, $field_name, $request ) {
  return get_the_terms( $object[ 'id' ], $taxonomies, null);
}

Cela retourne un tableau de termes contre les "régions" clés sur une instance de WordPress (ma version de développement).

Mon problème est que lorsque je passe en staging (configuration identique à dev), les termes de taxonomie ne sont pas renvoyés.

register_rest_field() est en cours d'exécution parce que si j'ajoute du charabia dans l'attribut $ ('régions'), une erreur est générée. Cependant, la clé et le tableau "regions" ne sont pas renvoyés dans mes résultats.

Toute aide ici serait très appréciée.

3
user1385827

Le problème était ma mise en scène et les développeurs utilisaient une différence de version mineure du plug-in API WP qui, en supposant qu'un changement destructeur ait été apporté.

1
user1385827