SlideShare une entreprise Scribd logo
1  sur  94
Télécharger pour lire hors ligne
Aplicaciones
web con AngularJS
y la WP REST API
@marcelotena
#WCSantander
#1

La aplicación
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Aplicación de página única
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Aplicación de página única
Enfoque por componentes
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Aplicación de página única
Enfoque por componentes
Tema para WordPress
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Aplicación de página única
Enfoque por componentes
Tema para WordPress
Datos desde dos APIs
#2

WordPress,
plugins y la
REST API
Primeros pasos
https://codex.wordpress.org/Theme_Development
Primeros pasos
1. Servidor local con Apache, MySQL y PHP:
Ejemplos: MAMP, WAMP, LAMP…
https://codex.wordpress.org/Theme_Development
Primeros pasos
1. Servidor local con Apache, MySQL y PHP:
Ejemplos: MAMP, WAMP, LAMP…
2. Instalación de WordPress
https://codex.wordpress.org/Theme_Development
Primeros pasos
1. Servidor local con Apache, MySQL y PHP:
Ejemplos: MAMP, WAMP, LAMP…
2. Instalación de WordPress
3. Creación de repositorio en Github
https://codex.wordpress.org/Theme_Development
Primeros pasos
1. Servidor local con Apache, MySQL y PHP:
Ejemplos: MAMP, WAMP, LAMP…
2. Instalación de WordPress
4. Base para nuestro tema:
- style.css
- index.php
- functions.php
3. Creación de repositorio en Github
https://codex.wordpress.org/Theme_Development
Plugins
1. WordPress REST API (Version 2)
https://es.wordpress.org/plugins/rest-api/
Plugins
2. ACF to WP REST API
https://es.wordpress.org/plugins/acf-to-wp-rest-api/
Custom Post Types
Custom Post Types
Custom Post Types
Custom Post Types
Ejemplo:

https://www.angularseries.com/wp-json/v2/series
Custom Post Types
Ejemplo:

https://www.angularseries.com/wp-json/v2/series
Consultas a la REST API
Custom Post Types
Ejemplo:

https://www.angularseries.com/wp-json/v2/series
Consultas a la REST API
1. Ruta base:
<tu-dominio>/wp-json/wp/v2/
Custom Post Types
Ejemplo:

https://www.angularseries.com/wp-json/v2/series
Consultas a la REST API
1. Ruta base:
<tu-dominio>/wp-json/wp/v2/
2. Posts:
<tu-dominio>/wp-json/wp/v2/posts
Custom Post Types
Ejemplo:

https://www.angularseries.com/wp-json/v2/series
Consultas a la REST API
1. Ruta base:
<tu-dominio>/wp-json/wp/v2/
2. Posts:
<tu-dominio>/wp-json/wp/v2/posts
3. Single-post con id=1:
<tu-dominio>/wp-json/wp/v2/posts/1
Custom Post Types
Ejemplo:

https://www.angularseries.com/wp-json/v2/series
Consultas a la REST API
1. Ruta base:
<tu-dominio>/wp-json/wp/v2/
2. Posts:
<tu-dominio>/wp-json/wp/v2/posts
3. Single-post con id=1:
<tu-dominio>/wp-json/wp/v2/posts/1
4. Filtros:
<tu-dominio>/wp-json/wp/v2/posts?page=2
Custom Post Types
Ejemplo:

https://www.angularseries.com/wp-json/v2/series
Consultas a la REST API
1. Ruta base:
<tu-dominio>/wp-json/wp/v2/
2. Posts:
<tu-dominio>/wp-json/wp/v2/posts
3. Single-post con id=1:
<tu-dominio>/wp-json/wp/v2/posts/1
4. Filtros:
<tu-dominio>/wp-json/wp/v2/posts?page=2
5. Filtros encadenados:
(…)/wp/v2/posts?
categories=2,3,6&before=2016-10-31T23:59:59
Postman
https://www.getpostman.com/
#3

Entorno
front-end: 

NPM y Gulp
Gestor de dependencias
1. NPM (incluido en NodeJS)
Automatización con Gulp
Automatización con Gulp
1. Hojas de estilo: SASS
Automatización con Gulp
1. Hojas de estilo: SASS
2. Prefijos de compatibilidad
Automatización con Gulp
1. Hojas de estilo: SASS
3. JavaScript: Dependencias y app
2. Prefijos de compatibilidad
Automatización con Gulp
1. Hojas de estilo: SASS
3. JavaScript: Dependencias y app
4. BrowserSync
2. Prefijos de compatibilidad
Automatización con Gulp
gulp-autoprefixer
gulp-concat
gulp-sass
gulp-sourcemaps
gulp-uglify
browser-sync
1. Hojas de estilo: SASS
3. JavaScript: Dependencias y app
4. BrowserSync
2. Prefijos de compatibilidad
#4

AngularJS
#4

AngularJS
versión < 9
versión < 9
versión < 9
Estructura de la aplicación
Estructura de la aplicación
Estructura de la aplicación
Módulo principal y enlace de
la aplicación (bootstrapping)
Módulo principal y enlace de
la aplicación (bootstrapping)
1. app.js
Módulo principal y enlace de
la aplicación (bootstrapping)
1. app.js
2. header.php
Módulos secundarios
Módulos secundarios
1. components/home/home.js
Módulos secundarios
1. components/home/home.js
2. components/about/about.js
Servicios: Acceso a los datos
1. services/series.service.js
Servicios: Acceso a los datos
1. services/series.service.js
Servicios: Acceso a los datos
1. services/series.service.js
Servicios: Acceso a los datos
1. services/series.service.js
Servicios: Acceso a los datos
1. services/series.service.js
Servicios: Acceso a los datos
1. services/series.service.js
Servicios: Personalizar la respuesta
Servicios: Personalizar la respuesta
Servicios: Personalizar la respuesta
Servicios: Personalizar la respuesta
Servicios: Personalizar la respuesta
Servicios: Personalizar la respuesta
Vistas según la URL: UI-Router
Vistas según la URL: UI-Router
1. index.php
Vistas según la URL: UI-Router
1. index.php
Vistas según la URL: UI-Router
Vistas según la URL: UI-Router
1. home.component.js
Vistas según la URL: UI-Router
1. home.component.js
Vistas según la URL: UI-Router
1. home.component.js
Vistas según la URL: UI-Router
1. home.component.js
Vistas según la URL: UI-Router
1. home.component.js
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Estructura de la vista “Home”
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Estructura de la vista “Home”
home	(/)
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Estructura de la vista “Home”
list-item
home	(/)
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Estructura de la vista “Home”
list-item
home	(/)
thumbnail
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Estructura de la vista “Home”
list-item
home	(/)
thumbnail
actors
https://github.com/marcelotena/wcsantander16-demo
https://www.angularseries.com/
Estructura de la vista “Home”
list-item
home	(/)
thumbnail
actors
rating
Componentes
Componentes
1. home.component.html (template)
Componentes
1. home.component.html (template)
Componentes
Componentes
1. home/list-item/list-item.component.html
Componentes
1. home/list-item/list-item.component.html
Componentes
1. home/list-item/list-item.component.html
Componentes
1. home/list-item/list-item.component.html
Componentes
1. home/list-item/list-item.component.html
Componentes
Componentes
1. home/list-item/actors/actors.component.js
Componentes
1. home/list-item/actors/actors.component.js
Componentes
1. home/list-item/actors/actors.component.js
Componentes
1. home/list-item/actors/actors.component.js
Componentes
1. home/list-item/actors/actors.component.js
¿Preguntas?
@marcelotena
#WCSantander

Contenu connexe

En vedette

Wordpress ante el mundo web moderno
Wordpress ante el mundo web modernoWordpress ante el mundo web moderno
Wordpress ante el mundo web modernoBienvenido Muelas
 
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...Federico Toledo
 
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)Micael Gallego
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 
State of the Word 2016
State of the Word 2016State of the Word 2016
State of the Word 2016photomatt
 

En vedette (11)

Wordpress ante el mundo web moderno
Wordpress ante el mundo web modernoWordpress ante el mundo web moderno
Wordpress ante el mundo web moderno
 
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
NetConfUy 2016 - Cómo asegurar la performance de aplicaciones móviles tanto e...
 
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
Tema 3: Despliegue de aplicaciones web (Desarrollo Aplicaciones Web)
 
Vistiendo a WordPress
Vistiendo a WordPressVistiendo a WordPress
Vistiendo a WordPress
 
Amazon API Gateway
Amazon API GatewayAmazon API Gateway
Amazon API Gateway
 
Arquitectura para aplicaciones web
Arquitectura para aplicaciones webArquitectura para aplicaciones web
Arquitectura para aplicaciones web
 
Arquitectura de aplicaciones
Arquitectura de aplicacionesArquitectura de aplicaciones
Arquitectura de aplicaciones
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
State of the Word 2016
State of the Word 2016State of the Word 2016
State of the Word 2016
 
Cómo insertar Widgets en Wordpress - Parte 2
Cómo insertar Widgets en Wordpress - Parte 2Cómo insertar Widgets en Wordpress - Parte 2
Cómo insertar Widgets en Wordpress - Parte 2
 
Construya APIs seguras y escalables
Construya APIs seguras y escalables Construya APIs seguras y escalables
Construya APIs seguras y escalables
 

Similaire à WordCamp Santander 2016 - Aplicaciones web con AngularJS y la REST API de WordPress

Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020Micael Gallego
 
Desarrollo de aplicaciones multiplataforma 2/2
Desarrollo de aplicaciones multiplataforma 2/2Desarrollo de aplicaciones multiplataforma 2/2
Desarrollo de aplicaciones multiplataforma 2/2Ignacio Muñoz Vicente
 
Frameworks y herramientas para la web del futuro
Frameworks y herramientas para la web del futuroFrameworks y herramientas para la web del futuro
Frameworks y herramientas para la web del futuroBBVA API Market
 
Microservices y la era Post Industrial de la Web
Microservices y la era Post Industrial de la WebMicroservices y la era Post Industrial de la Web
Microservices y la era Post Industrial de la WebRoberto Allende
 
Herramientas web "Ajax"
Herramientas web "Ajax"Herramientas web "Ajax"
Herramientas web "Ajax"IngDarkseid
 
Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Maximiliano Firtman
 
Hack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJSHack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJSCarlos Azaustre
 
Curso Básico de AngularJS
Curso Básico de AngularJSCurso Básico de AngularJS
Curso Básico de AngularJSCarlos Azaustre
 
Desarrollo de Mobile Web Apps
Desarrollo de Mobile Web AppsDesarrollo de Mobile Web Apps
Desarrollo de Mobile Web AppsAsier Marqués
 
Presentacion #bbmnk
Presentacion #bbmnkPresentacion #bbmnk
Presentacion #bbmnkJuan Miqueo
 
UDA-Componentes RUP. Migas
UDA-Componentes RUP. MigasUDA-Componentes RUP. Migas
UDA-Componentes RUP. MigasAnder Martinez
 
Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....
Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....
Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....Software Guru
 
Herramientas para desarrollar rápidamente
Herramientas para desarrollar rápidamenteHerramientas para desarrollar rápidamente
Herramientas para desarrollar rápidamenteCarlos Toxtli
 
105.desarrollo rest-con-rails
105.desarrollo rest-con-rails105.desarrollo rest-con-rails
105.desarrollo rest-con-railsERWIN AGUILAR
 
Iniciándose en el desarrollo de aplicaciones para share point 2013
Iniciándose en el desarrollo de aplicaciones para share point 2013Iniciándose en el desarrollo de aplicaciones para share point 2013
Iniciándose en el desarrollo de aplicaciones para share point 2013Haaron Gonzalez
 
Programación Reactiva, Javascript Isomorfo y Meteorjs !
Programación Reactiva, Javascript Isomorfo y Meteorjs !Programación Reactiva, Javascript Isomorfo y Meteorjs !
Programación Reactiva, Javascript Isomorfo y Meteorjs !ouuyeah
 

Similaire à WordCamp Santander 2016 - Aplicaciones web con AngularJS y la REST API de WordPress (20)

Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020Curso Angular 9 - CodeURJC - Marzo 2020
Curso Angular 9 - CodeURJC - Marzo 2020
 
Desarrollo de aplicaciones multiplataforma 2/2
Desarrollo de aplicaciones multiplataforma 2/2Desarrollo de aplicaciones multiplataforma 2/2
Desarrollo de aplicaciones multiplataforma 2/2
 
Frameworks y herramientas para la web del futuro
Frameworks y herramientas para la web del futuroFrameworks y herramientas para la web del futuro
Frameworks y herramientas para la web del futuro
 
Backbeam
BackbeamBackbeam
Backbeam
 
Microservices y la era Post Industrial de la Web
Microservices y la era Post Industrial de la WebMicroservices y la era Post Industrial de la Web
Microservices y la era Post Industrial de la Web
 
Herramientas web "Ajax"
Herramientas web "Ajax"Herramientas web "Ajax"
Herramientas web "Ajax"
 
Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)
 
Hack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJSHack2Progress - Desarrollando una aplicación web con AngularJS
Hack2Progress - Desarrollando una aplicación web con AngularJS
 
Curso Básico de AngularJS
Curso Básico de AngularJSCurso Básico de AngularJS
Curso Básico de AngularJS
 
Desarrollo de Mobile Web Apps
Desarrollo de Mobile Web AppsDesarrollo de Mobile Web Apps
Desarrollo de Mobile Web Apps
 
Ajax tsis
Ajax tsisAjax tsis
Ajax tsis
 
Presentacion #bbmnk
Presentacion #bbmnkPresentacion #bbmnk
Presentacion #bbmnk
 
UDA-Componentes RUP. Migas
UDA-Componentes RUP. MigasUDA-Componentes RUP. Migas
UDA-Componentes RUP. Migas
 
Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....
Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....
Desarrollando de aplicaciones web modernas para Linux, Windows y Mac con ASP....
 
Herramientas para desarrollar rápidamente
Herramientas para desarrollar rápidamenteHerramientas para desarrollar rápidamente
Herramientas para desarrollar rápidamente
 
105.desarrollo rest-con-rails
105.desarrollo rest-con-rails105.desarrollo rest-con-rails
105.desarrollo rest-con-rails
 
Iniciándose en el desarrollo de aplicaciones para share point 2013
Iniciándose en el desarrollo de aplicaciones para share point 2013Iniciándose en el desarrollo de aplicaciones para share point 2013
Iniciándose en el desarrollo de aplicaciones para share point 2013
 
Tur cuenca
Tur cuencaTur cuenca
Tur cuenca
 
Ruby on Rails y AngularJS
Ruby on Rails y AngularJSRuby on Rails y AngularJS
Ruby on Rails y AngularJS
 
Programación Reactiva, Javascript Isomorfo y Meteorjs !
Programación Reactiva, Javascript Isomorfo y Meteorjs !Programación Reactiva, Javascript Isomorfo y Meteorjs !
Programación Reactiva, Javascript Isomorfo y Meteorjs !
 

WordCamp Santander 2016 - Aplicaciones web con AngularJS y la REST API de WordPress