{"id":258922,"date":"2015-07-13T23:35:24","date_gmt":"2015-07-14T06:35:24","guid":{"rendered":"https:\/\/2015.vancouver.wordcamp.org\/?post_type=wcb_session&#038;p=258922"},"modified":"2015-07-13T23:35:24","modified_gmt":"2015-07-14T06:35:24","slug":"building-theme-components-with-the-wp-rest-api-and-angular-js","status":"publish","type":"wcb_session","link":"https:\/\/vancouver.wordcamp.org\/2015\/session\/building-theme-components-with-the-wp-rest-api-and-angular-js\/","title":{"rendered":"Building theme components with the WP REST API and Angular.js"},"content":{"rendered":"<p><span>I&#8217;ll give an introduction to the WordPress REST API and Angular.js in the form of a high level overview (why they exist, what problems they solve, the future of the REST API), and proceed to walk through building theme components with the REST API and Angular.js. I&#8217;ll discuss the concerns leading a theme author to chose to build asynchronous components, such as caching issues. Live examples of REST API\/Angular.js components will be discussed, with examples of how I built them. Time permitting I&#8217;ll conclude by building a REST API\/Angular.js theme component live, though will likely do it Emeril Lagasse style (here&#8217;s a directive I baked earlier!) due to time constraints.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ll give an introduction to the WordPress REST API and Angular.js in the form of a high level overview (why they exist, what problems they solve, the future of the REST API), and proceed to walk through building theme components with the REST API and Angular.js. I&#8217;ll discuss the concerns leading a theme author to &hellip; <a href=\"https:\/\/vancouver.wordcamp.org\/2015\/session\/building-theme-components-with-the-wp-rest-api-and-angular-js\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Building theme components with the WP REST API and Angular.js<\/span><\/a><\/p>\n","protected":false},"author":9157529,"featured_media":0,"template":"","meta":{"jetpack_post_was_ever_published":false,"_wcpt_session_time":1439672400,"_wcpt_session_duration":3000,"_wcpt_session_type":"session","_wcpt_session_slides":"","_wcpt_session_video":"","_wcpt_speaker_id":[258907],"footnotes":""},"session_track":[317784],"session_category":[],"class_list":["post-258922","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-b"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p67v4m-15ma","session_date_time":{"date":"August 15, 2015","time":"2:00 pm"},"session_speakers":[{"id":"258907","slug":"nathan-shubert-harbison","name":"Nathan Shubert-Harbison","link":"https:\/\/vancouver.wordcamp.org\/2015\/speaker\/nathan-shubert-harbison\/"}],"session_cats_rendered":null,"_links":{"self":[{"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/sessions\/258922","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/types\/wcb_session"}],"author":[{"embeddable":true,"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/users\/9157529"}],"version-history":[{"count":1,"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/sessions\/258922\/revisions"}],"predecessor-version":[{"id":258923,"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/sessions\/258922\/revisions\/258923"}],"speakers":[{"embeddable":true,"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/speakers\/258907"}],"wp:attachment":[{"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/media?parent=258922"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/session_track?post=258922"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/vancouver.wordcamp.org\/2015\/wp-json\/wp\/v2\/session_category?post=258922"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}