SlideShare a Scribd company logo
1 of 10
Building WordPress sites with 
AngularJS and the RESTful 
plugin JSON API 
DevLink 2014 
By: Eric W. Greene 
http://www.ericwgreene.com 
@ericwgreene
Introduction 
Web Development is Changing… 
• Modern web development 
• Less Server Platform (PHP, Java, .NET) 
• More Web Browser Platform (HTML/CSS/JavaScript) 
• Modern web applications 
• Web server is a repository of user interface templates (HTML, CSS, 
JS resources) and it provides access to data 
• Binding of templates and data is handled through JavaScript 
frameworks on the web browser 
• Navigating from page to page is handled by Web Browser based 
JavaScript routing systems that do not involve reloading the entire 
page from the server 
• Web browsers use AJAX to send/receive data to/from RESTful 
services provided by the web server
Introduction 
Why is Web Development Changing? 
• Web browsers and client devices are becoming more capable 
• Devices in general (desktops, laptops, tablets, phones) are very 
powerful 
• Web browsers are emerging as a true platform 
• Chromebooks, Chrome Store 
• Web technology is being used to construct UIs for traditional apps 
• PhoneGap 
• Windows 8 Apps 
• JavaScript on the Server - Node.JS 
• Used for development and development tooling 
• More and more libraries being created 
• Because JavaScript is being used everywhere, developers in general 
increasingly want to use in the browser
Introduction 
How does this Web Development Change Benefit Users? 
• Pushing more code to the browser results in application called Single 
Web Page Applications more commonly called Single Page 
Applications or simply SPAs 
• How do users benefit from SPAs? 
• SPAs in general are more functional (without a page reload) and 
behave more like desktop apps 
• In a high network latency environment, a well written SPA can 
continue to perform acceptably for the user 
• Example: Marriott and Conference Center Internet 
• Many SPAs can operate in offline mode allow the user to use the web 
application even when disconnect then when they connect again 
everything gets synced up
Introduction 
WordPress (and other Content Management Systems) 
• When people think WordPress, they think blogging software 
• But really, WordPress is so much more… Truly, its a very powerful, 
extensible and capable Content Management System 
• WordPress has been around for a long time, is well tested, well 
supported by a huge community of bloggers, developers, plugin & 
theme providers 
• WordPress is a great tool but it was also developed in an earlier time 
when web applications were more server-driven and less browser-driven 
• Out of the box 
• WordPress relies upon the server for all processing of the user 
interface 
• Real JavaScript functionality is limited
Introduction 
Transforming WordPress 
• WordPress does not have to be limited to older server-driven 
techniques 
• To bring WordPress into the next generation of web apps 
• Create themes that leverage the power of JavaScript libraries such 
as KnockoutJS, EmberJS and AngularJS. 
• Employ plugins which provides RESTful services that provide access 
to core WordPress data 
• Up and coming - WP REST API - new RESTful API for WordPress 
• The result 
• Blogs and websites which perform better with the latest 
development technologies
Using AngularJS 
Why AngularJS? 
• AngularJS is a complete framework for building Single Page 
Applications 
• Using the MVC pattern, it can manage your models and views 
including routing to different views 
• Supports two-way data binding allow easy data collection via forms 
• Provide directives to build complex reusable UI components that 
integrate nicely into your application 
• Provides an excellent mocking library so you can follow test-driven 
development principles and really write unit tests for your code 
before implementation 
• Allows for the creation of cross cutting services that can provide 
useful functionality throughout your application 
• AngularJS is the current hot web development technology - everyone 
from small shops to very large corporations are embracing it
Introduction 
Goals for Today… 
• Inform you of the changing landscape of web development with 
WordPress (or really any other web development platform) 
• Demonstrate one of the many technologies changing web 
development today, AngularJS within the context of WordPress 
• Persuade you to focus less on the server and embrace JavaScript (and 
its many frameworks) and the Web Browser (as a true platform not 
just a viewer) for sophisticated and powerful web applications
Let’s Get Started… 
What we will cover 
• Starting with a clean copy of WordPress 
• Create a new theme 
• Add AngularJS to the theme 
• On the blog home page, replace the usual list of blog entries with an 
AngularJS powered list 
• Install the RESTful JSON API Plugin 
• Use AngularJS to display a specific blog entry 
• Refactor original blog post listing to use JSON API and 
angular.ForEach 
• Clean up routing URLs using HTML 5 Mode 
• Move Module to External JS File
Thank You for Attending! 
Some Good AngularJS Resources 
• Some good resources for learning more about AngularJS 
• Pro AngularJS from APress 
(http://www.apress.com/9781430264484) 
• Ng-Book (https://www.ng-book.com/) 
• WintellectNow Training Videos 
(https://www.wintellectnow.com/Videos/Index?searchString=Angul 
arJS) 
• Accelebrate, Inc. On-site Training (http://www.accelebrate.com/) 
• WordPress REST API (instead of the JSON API Plugin) 
• http://wp-api.org/ 
• Download Today’s Demos 
• https://github.com/ericwgreene/wordpress-angularjs-jsonapi 
• Includes all source code and PDF of slide deck

More Related Content

What's hot

Single page applications
Single page applicationsSingle page applications
Single page applicationsPrafful Garg
 
Moving from PHP to a nodejs full stack CMS
Moving from PHP to a nodejs full stack CMSMoving from PHP to a nodejs full stack CMS
Moving from PHP to a nodejs full stack CMSMake & Build
 
Using WordPress as a Headless CMS
Using WordPress as a Headless CMSUsing WordPress as a Headless CMS
Using WordPress as a Headless CMSAdam Rasheed
 
Learning Single page Application chapter 1
Learning Single page Application chapter 1Learning Single page Application chapter 1
Learning Single page Application chapter 1Puguh Rismadi
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page ApplicationKMS Technology
 
Web development using ASP.NET MVC
Web development using ASP.NET MVC Web development using ASP.NET MVC
Web development using ASP.NET MVC Adil Mughal
 
Rise of the responsive single page application
Rise of the responsive single page applicationRise of the responsive single page application
Rise of the responsive single page applicationOren Shatken
 
Single page application and Framework
Single page application and FrameworkSingle page application and Framework
Single page application and FrameworkChandrasekar G
 
Iseltech17 - Single Page Applications
Iseltech17 - Single Page ApplicationsIseltech17 - Single Page Applications
Iseltech17 - Single Page ApplicationsMonica Rodrigues
 
I Can Haz More Performanz?
I Can Haz More Performanz?I Can Haz More Performanz?
I Can Haz More Performanz?Andy Melichar
 
Single page application
Single page applicationSingle page application
Single page applicationArthur Fung
 
An introduction to wordpress
An introduction to wordpressAn introduction to wordpress
An introduction to wordpressCrack Aloud
 
Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster Boris Livshutz
 
Back to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentBack to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentClint LaForest
 
Build fast word press site in react in 30 mins with frontity
Build fast word press site in react in 30 mins   with frontityBuild fast word press site in react in 30 mins   with frontity
Build fast word press site in react in 30 mins with frontityImran Sayed
 

What's hot (20)

Single page applications
Single page applicationsSingle page applications
Single page applications
 
Moving from PHP to a nodejs full stack CMS
Moving from PHP to a nodejs full stack CMSMoving from PHP to a nodejs full stack CMS
Moving from PHP to a nodejs full stack CMS
 
Using WordPress as a Headless CMS
Using WordPress as a Headless CMSUsing WordPress as a Headless CMS
Using WordPress as a Headless CMS
 
Learning Single page Application chapter 1
Learning Single page Application chapter 1Learning Single page Application chapter 1
Learning Single page Application chapter 1
 
Single Page Application
Single Page ApplicationSingle Page Application
Single Page Application
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page Application
 
Introduction to web development
Introduction to web developmentIntroduction to web development
Introduction to web development
 
Web development using ASP.NET MVC
Web development using ASP.NET MVC Web development using ASP.NET MVC
Web development using ASP.NET MVC
 
Rise of the responsive single page application
Rise of the responsive single page applicationRise of the responsive single page application
Rise of the responsive single page application
 
Single page applications
Single page applicationsSingle page applications
Single page applications
 
Single page application and Framework
Single page application and FrameworkSingle page application and Framework
Single page application and Framework
 
Iseltech17 - Single Page Applications
Iseltech17 - Single Page ApplicationsIseltech17 - Single Page Applications
Iseltech17 - Single Page Applications
 
I Can Haz More Performanz?
I Can Haz More Performanz?I Can Haz More Performanz?
I Can Haz More Performanz?
 
Single page application
Single page applicationSingle page application
Single page application
 
An introduction to wordpress
An introduction to wordpressAn introduction to wordpress
An introduction to wordpress
 
Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster Making Single Page Applications (SPA) faster
Making Single Page Applications (SPA) faster
 
Back to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentBack to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web Development
 
Performance tuning of Websites
Performance tuning of WebsitesPerformance tuning of Websites
Performance tuning of Websites
 
Introduction to Web development
Introduction to Web developmentIntroduction to Web development
Introduction to Web development
 
Build fast word press site in react in 30 mins with frontity
Build fast word press site in react in 30 mins   with frontityBuild fast word press site in react in 30 mins   with frontity
Build fast word press site in react in 30 mins with frontity
 

Similar to Building WordPress sites with AngularJS and the RESTful plugin JSON API @ DevLink 2014

Intro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NETIntro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NETAlan Hecht
 
Using-AngularJS-with-Sitefinity.pptx
Using-AngularJS-with-Sitefinity.pptxUsing-AngularJS-with-Sitefinity.pptx
Using-AngularJS-with-Sitefinity.pptxkisofe
 
Top 10 frameworks of node js
Top 10 frameworks of node jsTop 10 frameworks of node js
Top 10 frameworks of node jsHabilelabs
 
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript FrameworksBuilding Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript FrameworksFITC
 
React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...
React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...
React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...Simplilearn
 
Build Modern Web Apps Using ASP.NET Web API and AngularJS
Build Modern Web Apps Using ASP.NET Web API and AngularJSBuild Modern Web Apps Using ASP.NET Web API and AngularJS
Build Modern Web Apps Using ASP.NET Web API and AngularJSTaiseer Joudeh
 
Introduction to Web Frameworks
Introduction to Web FrameworksIntroduction to Web Frameworks
Introduction to Web FrameworksSarika Jadhav
 
Node js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share pptsNode js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share pptsHemaSenthil5
 
Decoupled Architecture and WordPress
Decoupled Architecture and WordPressDecoupled Architecture and WordPress
Decoupled Architecture and WordPressPantheon
 
Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and ReactMike Melusky
 
Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and AngularEscaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and AngularMark Leusink
 
Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25Rongde Qiu
 
Introduction tosinglepageapplications
Introduction tosinglepageapplicationsIntroduction tosinglepageapplications
Introduction tosinglepageapplicationsNabeel Khan
 
Web Applications Development with MEAN Stack
Web Applications Development with MEAN StackWeb Applications Development with MEAN Stack
Web Applications Development with MEAN StackShailendra Chauhan
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NETRajkumarsoy
 
From server generated pages to client app in a micro-services world
From server generated pages to client app in a micro-services worldFrom server generated pages to client app in a micro-services world
From server generated pages to client app in a micro-services worldAssaf Gannon
 
WordPress as an Application Framework
WordPress as an Application FrameworkWordPress as an Application Framework
WordPress as an Application FrameworkNazmul Hasan Rupok
 

Similar to Building WordPress sites with AngularJS and the RESTful plugin JSON API @ DevLink 2014 (20)

Intro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NETIntro to SPA using JavaScript & ASP.NET
Intro to SPA using JavaScript & ASP.NET
 
Using-AngularJS-with-Sitefinity.pptx
Using-AngularJS-with-Sitefinity.pptxUsing-AngularJS-with-Sitefinity.pptx
Using-AngularJS-with-Sitefinity.pptx
 
Top 10 frameworks of node js
Top 10 frameworks of node jsTop 10 frameworks of node js
Top 10 frameworks of node js
 
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript FrameworksBuilding Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
 
React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...
React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...
React vs Vue JS Explained | Vue JS vs React Which Is Better? | Vue JS for Beg...
 
Building SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.jsBuilding SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.js
 
Build Modern Web Apps Using ASP.NET Web API and AngularJS
Build Modern Web Apps Using ASP.NET Web API and AngularJSBuild Modern Web Apps Using ASP.NET Web API and AngularJS
Build Modern Web Apps Using ASP.NET Web API and AngularJS
 
Introduction to Web Frameworks
Introduction to Web FrameworksIntroduction to Web Frameworks
Introduction to Web Frameworks
 
Node js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share pptsNode js installation steps.pptx slide share ppts
Node js installation steps.pptx slide share ppts
 
Decoupled Architecture and WordPress
Decoupled Architecture and WordPressDecoupled Architecture and WordPress
Decoupled Architecture and WordPress
 
Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and React
 
Single page App
Single page AppSingle page App
Single page App
 
Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and AngularEscaping the yellow bubble - rewriting Domino using MongoDb and Angular
Escaping the yellow bubble - rewriting Domino using MongoDb and Angular
 
Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25Rongde Qiu-DDsmile-2015.1.25
Rongde Qiu-DDsmile-2015.1.25
 
Introduction tosinglepageapplications
Introduction tosinglepageapplicationsIntroduction tosinglepageapplications
Introduction tosinglepageapplications
 
Web Applications Development with MEAN Stack
Web Applications Development with MEAN StackWeb Applications Development with MEAN Stack
Web Applications Development with MEAN Stack
 
Azure Websites
Azure WebsitesAzure Websites
Azure Websites
 
Introduction to ASP.NET
Introduction to ASP.NETIntroduction to ASP.NET
Introduction to ASP.NET
 
From server generated pages to client app in a micro-services world
From server generated pages to client app in a micro-services worldFrom server generated pages to client app in a micro-services world
From server generated pages to client app in a micro-services world
 
WordPress as an Application Framework
WordPress as an Application FrameworkWordPress as an Application Framework
WordPress as an Application Framework
 

Recently uploaded

2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
 
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...gajnagarg
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样ayvbos
 
Call girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girlsCall girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girlsMonica Sydney
 
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC
 
Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...
Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...
Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...meghakumariji156
 
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...kumargunjan9515
 
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime BalliaBallia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Balliameghakumariji156
 
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样ayvbos
 
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsRussian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsMonica Sydney
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"growthgrids
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfJOHNBEBONYAP1
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查ydyuyu
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac RoomVip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Roommeghakumariji156
 
Mira Road Housewife Call Girls 07506202331, Nalasopara Call Girls
Mira Road Housewife Call Girls 07506202331, Nalasopara Call GirlsMira Road Housewife Call Girls 07506202331, Nalasopara Call Girls
Mira Road Housewife Call Girls 07506202331, Nalasopara Call GirlsPriya Reddy
 
一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理F
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查ydyuyu
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdfMatthew Sinclair
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC
 

Recently uploaded (20)

2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Dindigul [ 7014168258 ] Call Me For Genuine Models ...
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
 
Call girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girlsCall girls Service in Ajman 0505086370 Ajman call girls
Call girls Service in Ajman 0505086370 Ajman call girls
 
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
 
Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...
Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...
Tadepalligudem Escorts Service Girl ^ 9332606886, WhatsApp Anytime Tadepallig...
 
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...Local Call Girls in Seoni  9332606886 HOT & SEXY Models beautiful and charmin...
Local Call Girls in Seoni 9332606886 HOT & SEXY Models beautiful and charmin...
 
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime BalliaBallia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
Ballia Escorts Service Girl ^ 9332606886, WhatsApp Anytime Ballia
 
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
一比一原版(Flinders毕业证书)弗林德斯大学毕业证原件一模一样
 
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsRussian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
 
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
原版制作美国爱荷华大学毕业证(iowa毕业证书)学位证网上存档可查
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac RoomVip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
 
Mira Road Housewife Call Girls 07506202331, Nalasopara Call Girls
Mira Road Housewife Call Girls 07506202331, Nalasopara Call GirlsMira Road Housewife Call Girls 07506202331, Nalasopara Call Girls
Mira Road Housewife Call Girls 07506202331, Nalasopara Call Girls
 
一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理一比一原版奥兹学院毕业证如何办理
一比一原版奥兹学院毕业证如何办理
 
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查在线制作约克大学毕业证(yu毕业证)在读证明认证可查
在线制作约克大学毕业证(yu毕业证)在读证明认证可查
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
 

Building WordPress sites with AngularJS and the RESTful plugin JSON API @ DevLink 2014

  • 1. Building WordPress sites with AngularJS and the RESTful plugin JSON API DevLink 2014 By: Eric W. Greene http://www.ericwgreene.com @ericwgreene
  • 2. Introduction Web Development is Changing… • Modern web development • Less Server Platform (PHP, Java, .NET) • More Web Browser Platform (HTML/CSS/JavaScript) • Modern web applications • Web server is a repository of user interface templates (HTML, CSS, JS resources) and it provides access to data • Binding of templates and data is handled through JavaScript frameworks on the web browser • Navigating from page to page is handled by Web Browser based JavaScript routing systems that do not involve reloading the entire page from the server • Web browsers use AJAX to send/receive data to/from RESTful services provided by the web server
  • 3. Introduction Why is Web Development Changing? • Web browsers and client devices are becoming more capable • Devices in general (desktops, laptops, tablets, phones) are very powerful • Web browsers are emerging as a true platform • Chromebooks, Chrome Store • Web technology is being used to construct UIs for traditional apps • PhoneGap • Windows 8 Apps • JavaScript on the Server - Node.JS • Used for development and development tooling • More and more libraries being created • Because JavaScript is being used everywhere, developers in general increasingly want to use in the browser
  • 4. Introduction How does this Web Development Change Benefit Users? • Pushing more code to the browser results in application called Single Web Page Applications more commonly called Single Page Applications or simply SPAs • How do users benefit from SPAs? • SPAs in general are more functional (without a page reload) and behave more like desktop apps • In a high network latency environment, a well written SPA can continue to perform acceptably for the user • Example: Marriott and Conference Center Internet • Many SPAs can operate in offline mode allow the user to use the web application even when disconnect then when they connect again everything gets synced up
  • 5. Introduction WordPress (and other Content Management Systems) • When people think WordPress, they think blogging software • But really, WordPress is so much more… Truly, its a very powerful, extensible and capable Content Management System • WordPress has been around for a long time, is well tested, well supported by a huge community of bloggers, developers, plugin & theme providers • WordPress is a great tool but it was also developed in an earlier time when web applications were more server-driven and less browser-driven • Out of the box • WordPress relies upon the server for all processing of the user interface • Real JavaScript functionality is limited
  • 6. Introduction Transforming WordPress • WordPress does not have to be limited to older server-driven techniques • To bring WordPress into the next generation of web apps • Create themes that leverage the power of JavaScript libraries such as KnockoutJS, EmberJS and AngularJS. • Employ plugins which provides RESTful services that provide access to core WordPress data • Up and coming - WP REST API - new RESTful API for WordPress • The result • Blogs and websites which perform better with the latest development technologies
  • 7. Using AngularJS Why AngularJS? • AngularJS is a complete framework for building Single Page Applications • Using the MVC pattern, it can manage your models and views including routing to different views • Supports two-way data binding allow easy data collection via forms • Provide directives to build complex reusable UI components that integrate nicely into your application • Provides an excellent mocking library so you can follow test-driven development principles and really write unit tests for your code before implementation • Allows for the creation of cross cutting services that can provide useful functionality throughout your application • AngularJS is the current hot web development technology - everyone from small shops to very large corporations are embracing it
  • 8. Introduction Goals for Today… • Inform you of the changing landscape of web development with WordPress (or really any other web development platform) • Demonstrate one of the many technologies changing web development today, AngularJS within the context of WordPress • Persuade you to focus less on the server and embrace JavaScript (and its many frameworks) and the Web Browser (as a true platform not just a viewer) for sophisticated and powerful web applications
  • 9. Let’s Get Started… What we will cover • Starting with a clean copy of WordPress • Create a new theme • Add AngularJS to the theme • On the blog home page, replace the usual list of blog entries with an AngularJS powered list • Install the RESTful JSON API Plugin • Use AngularJS to display a specific blog entry • Refactor original blog post listing to use JSON API and angular.ForEach • Clean up routing URLs using HTML 5 Mode • Move Module to External JS File
  • 10. Thank You for Attending! Some Good AngularJS Resources • Some good resources for learning more about AngularJS • Pro AngularJS from APress (http://www.apress.com/9781430264484) • Ng-Book (https://www.ng-book.com/) • WintellectNow Training Videos (https://www.wintellectnow.com/Videos/Index?searchString=Angul arJS) • Accelebrate, Inc. On-site Training (http://www.accelebrate.com/) • WordPress REST API (instead of the JSON API Plugin) • http://wp-api.org/ • Download Today’s Demos • https://github.com/ericwgreene/wordpress-angularjs-jsonapi • Includes all source code and PDF of slide deck