J'utilise le plug-in d'API WP REST dans Wordpress et souhaite parcourir mes données JSON en utilisant un pour chaque boucle. Cependant, lorsque je var_dump la variable dans laquelle les données JSON sont stockées me donne une erreur.
"Erreur d'analyse: erreur de syntaxe, inattendue '->' (T_OBJECT_OPERATOR) dans C:\wamp\www\public_html\wp-content\themes\raj\template-wiki.php on line 22"
<?php $json = lusso_posts(); ?>
<?php var_dump($json); ?>
<?php echo ($json->wp-json->posts[1]->ID); ?>
Je pense que le "wp-json" est en conflit avec "->" ce signe car lorsque je supprime le "-" de "wp-post", l'erreur disparaît mais rien ne se voit.
CODE DE LA FONCTION DE LUSSO
`function lusso_posts () {
// Do we have this information in our transients already?
$transient = get_transient( 'lusso_posts' );
// Yep! Just return it and we're done.
if( ! empty( $transient ) ) {
// The function will return here every time after the first time it is run, until the transient expires.
return $transient;
// Nope! We gotta make a call.
} else {
// We got this url from the documentation for the remote API.
$url = 'http://localhost/database2/wp-json/posts/';
$body = wp_remote_retrieve_body(wp_remote_get($url));
$json = json_decode($body);
// Call the API.
//$out = wp_remote_get( $url, $args );
// Save the API response so we don't have to call again until tomorrow.
set_transient( 'lusso_posts', $json, DAY_IN_SECONDS );
// Return the list of subscribers. The function will return here the first time it is run, and then once again, each time the transient expires.
return $json;
}
}`
Toute aide serait appréciée.
Merci.
J'ai réussi à résoudre ce problème et à accéder aux données JSON à l'aide d'une boucle foreach
:
$json = lusso_posts();
#var_dump( $json );
#die();
foreach( $json as $post ) {
$titles = $post->title;
$images = $post->featured_image->guid;
?>
<div class="lusso-posts">
<div class="image-container"><img src="<?php echo $images; ?>" /> </div>
<h4><?php echo $titles; ?></h4>
</div>
<?php
}