情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。
RSET API でhtmlにワードプレスの投稿のリストを表示する例をメモしておきます。
htmlの記述
<script type="text/javascript"> jQuery(function() { jQuery.getJSON( "~/wp-json/wp/v2/posts?per_page=5&categories=13", function(result) { jQuery.each(result, function(i, item) { var date_data = new Date(item.date); var year = date_data.getFullYear(); var month = date_data.getMonth() + 1; var day = date_data.getDate(); var category = item.category_name; category = category.join( "/" ); jQuery('.news').append('<dt><span class="date">' + year + '.' + month + '.' + day + '</span><span class="category">' + category + '</span></dt><dd><a href="'+ item.link + '">' + item.title.rendered + '</a></dd>'); }); }); }); </script> <dl class="news"></dl>
カテゴリーを取得する関数(テーマ関数)
add_action( 'rest_api_init', 'register_category_name' ); function register_category_name() { register_rest_field( 'post', 'category_name', array( 'get_callback' => 'get_category_name' ) ); } function get_category_name( $object ) { $category = get_the_category($object[ 'id' ]); for ($i = 0; $i < count($category); ++$i) { $cat_name[$i] = $category[$i]->cat_name; } return $cat_name; }
PHPの例
<?php $url = '~/wp-json/wp/v2/posts?per_page=1'; $json = mb_convert_encoding(file_get_contents($url), 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN'); $arr = json_decode($json,true); ?> <?php foreach ($arr as $data): $title = $data['title']['rendered']; $date = date('Y.m.d', strtotime($data['date'])); $link = $data['link']; ?> <div class="news_text"> <span class="date"><?php echo $date; ?></span> <a href="<?php echo $link; ?>"><?php echo $data['title']['rendered']; ?></a> </div> <?php endforeach; ?>