web-dev-qa-db-ja.com

ワードプレスでJSONデータをループする方法 WP REST API

WordpressでWP REST AP​​Iプラグインを使用していて、for eachループを使用して自分のjsonデータをループ処理したいのですが、jsonデータが格納されている変数をvar_dumpすると私にエラーを出します。

"22行目のC:\ wamp\www\public_html\wp-content\themes\raj\template-wiki.phpにパースエラー:構文エラー、予期しない ' - >'(T_OBJECT_OPERATOR)"

<?php $json = lusso_posts(); ?>

<?php var_dump($json); ?>

<?php echo ($json->wp-json->posts[1]->ID); ?>

"wp-post"から " - "を削除するとエラーが消えるが何も表示されないため、 "wp-json"は " - >"この記号と競合していると思います。

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;

  }

}`

任意の助けがいただければ幸いです。

ありがとう。

1
Raj Chudasama

私はこれを解決し、foreachループを使用してJSONデータにアクセスすることができました。

$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
}
0
Raj Chudasama