WP Rest API - Comment obtenir une image vedette
6 réponses
- votes
-
- 2016-06-30
Jetez un œil à unplugin appelé Meilleureimage sélectionnée de l'API REST .Il ajoute l'URL de l'image sélectionnée à la réponse de l'API d'origine.
Take a look at a plugin called Better REST API Featured Image. It adds the featured image URL to the original API response.
-
Je vous remercie.Renvoie l'URL quiestpratique.Desidéespour lesquelles leplugin lui-mêmene le renvoiepas?Est-ce queje fais quelque chose demal ouest-ce l'API?Thank you. Returns the URL which is handy. Any ideas why the plugin it self is not returning it? Am I doing something wrong or is it the API?
- 0
- 2016-06-30
- Abdul Sadik Yalcin
-
C'est l'API.Encore lespremiersjours.Ça va s'améliorerIts the API. Still early days. It will improve
- 1
- 2016-06-30
- Michael Cropper
-
Problème résolu!Il renvoieen fait unidentifiant de l'imagemaisj'aitotalement oublié que le cache était activé!Mais detoutefaçon,cepluginestmeilleur caril renvoie directement l'url.Problem solved! It does actually return an ID of the image but I totally forgot I had the cache turned on! But anyway, that plugin is better as it returns the url directly.
- 1
- 2016-06-30
- Abdul Sadik Yalcin
-
@Devrim Heureux que vous ayez résolu leproblème!Si cette réponse de Michael vous a aidé,vouspouvez cliquer sur la coche àgauche de celle-cipour l'accepteret montrer aux autres que c'était labonne réponse.:)@Devrim Glad you solved it! If this answer from Michael helped you, you can click the tick to the left of it to accept it to show others that this was the correct answer. :)
- 0
- 2016-06-30
- Tim Malone
-
- 2017-05-31
Vouspouvez l'obtenir sanspluginsen ajoutant
_embed
commeparamètre à votre requête/?rest_route=/wp/v2/posts&_embed /wp-json/wp/v2/posts?_embed
You can get it without plugins by adding
_embed
as param to your query/?rest_route=/wp/v2/posts&_embed /wp-json/wp/v2/posts?_embed
-
celapose unproblème lors de la liaison avec celui-ci dans une liaison angulaire,faites aunom `wp:` de l'un desnœuds dans le cheminjson vers l'image.J'ai utilisé leplugin de l'autre réponse,ce qui simplifie le chemin vers l'image.this causes a problem when binding to it in an Angular binding, do to the `wp:` name of one of the nodes in the json path to the image. I used the plugin from the other answer, which simplifies the path to the image.
- 0
- 2017-10-09
- Steve
-
inconvénients: le JSON devientplus lourd avantages:ne pasinstaller leplugin,ne pas appeler une autre requête http -> votefavorablecons: the JSON get heavier pros: not install plugin, not call another http request -> upvote
- 1
- 2017-11-21
- Tho Vo
-
Comment convertir wp: Featuredmediaen JSON?tout d'abord,je crée une classe wp qui contient desmédiasen vedette.Mais çane marchepas.How should convert wp:featuredmedia to JSON? first I create wp class that contains featuredmedia. But it does not work.
- 1
- 2018-04-03
- Mahdi
-
Vouspouvez accéder à wp:en utilisant cettenotationpost._embedded ['wp:term']You can access wp: by using this notation post._embedded['wp:term']
- 3
- 2018-05-15
- ocajian
-
- 2018-10-22
Jen'utiliserais PAS lemeilleurplugin d'API rest.Il a ajouté desimagesen vedette au reste de l'API,maisil l'a également cassé.
C'est la solution laplus simple quej'aiputrouveret quifonctionnait réellement.Ajoutez le code suivant à votrefunctions.php:
<?php function post_featured_image_json( $data, $post, $context ) { $featured_image_id = $data->data['featured_media']; // get featured image id $featured_image_url = wp_get_attachment_image_src( $featured_image_id, 'original' ); // get url of the original size if( $featured_image_url ) { $data->data['featured_image_url'] = $featured_image_url[0]; } return $data; } add_filter( 'rest_prepare_post', 'post_featured_image_json', 10, 3 );
I would NOT use the better rest API plugin. It did add featured images to the rest api but it also broke it.
This is the simplest solution I was able to find that actually worked. Add the following code to your functions.php:
<?php function post_featured_image_json( $data, $post, $context ) { $featured_image_id = $data->data['featured_media']; // get featured image id $featured_image_url = wp_get_attachment_image_src( $featured_image_id, 'original' ); // get url of the original size if( $featured_image_url ) { $data->data['featured_image_url'] = $featured_image_url[0]; } return $data; } add_filter( 'rest_prepare_post', 'post_featured_image_json', 10, 3 );
-
-
- 2018-09-28
J'ai créé un raccourci versmonimageen l'ajoutant directement à la réponse de l'API.
//Add in functions.php, this hook is for my 'regions' post type add_action( 'rest_api_init', 'create_api_posts_meta_field' ); function create_api_posts_meta_field() { register_rest_field( 'regions', 'group', array( 'get_callback' => 'get_post_meta_for_api', 'schema' => null, ) ); }
//Use the post ID to query the image and add it to your payload function get_post_meta_for_api( $object ) { $post_id = $object['id']; $post_meta = get_post_meta( $post_id ); $post_image = get_post_thumbnail_id( $post_id ); $post_meta["group_image"] = wp_get_attachment_image_src($post_image)[0]; return $post_meta; }
I made a shortcut to my image by adding it directly to the API response.
//Add in functions.php, this hook is for my 'regions' post type add_action( 'rest_api_init', 'create_api_posts_meta_field' ); function create_api_posts_meta_field() { register_rest_field( 'regions', 'group', array( 'get_callback' => 'get_post_meta_for_api', 'schema' => null, ) ); }
//Use the post ID to query the image and add it to your payload function get_post_meta_for_api( $object ) { $post_id = $object['id']; $post_meta = get_post_meta( $post_id ); $post_image = get_post_thumbnail_id( $post_id ); $post_meta["group_image"] = wp_get_attachment_image_src($post_image)[0]; return $post_meta; }
-
- 2020-07-15
Essayez lamanière suivante ....................
URL:
/wp-json/wp/v2/posts?_embed
image:
json["_embedded"]["wp:featuredmedia"][0]["source_url"],
Celafonctionnebien.try
Try following way ....................
URL:
/wp-json/wp/v2/posts?_embed
image:
json["_embedded"]["wp:featuredmedia"][0]["source_url"],
It's working fine.try
Je suistrèsnouveau dans cette API,en faitje n'y aipassé que quelques heuresjusqu'àprésent. J'aifaitmes recherchesmaisje netrouve rien à ce sujet ...
Leproblèmeest queje n'arrivepas à obtenir l'imageen vedette d'unmessage. Le JSON renvoie
"featured_media: 0"
.J'ai définitivement défini uneimageen vedette sur lemessage,mais les données retournent:
Toute aide sera appréciée.