Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

App todo gas: WordPress no es solo para web

707 views

Published on

Presentación de la ponencia App todo gas: WordPress no es solo para web de la WordCamp Sevilla 2018

Published in: Technology
  • DOWNLOAD THE BOOK INTO AVAILABLE FORMAT (New Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download Full EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download Full doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THE can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THE is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBOOK .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, CookBOOK, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, EBOOK, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THE Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THE the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THE Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

App todo gas: WordPress no es solo para web

  1. 1. Según la definición de Wikipedia: “La interfaz de programación de aplicaciones, abreviada como API del inglés: Application Programming Interface,​ es un conjunto de subrutinas, funciones y procedimientos (o métodos, en la programación orientada a objetos) que ofrece cierta biblioteca para ser utilizado por otro software como una capa de abstracción. Una API representa la capacidad de comunicación entre componentes de software.” ¿Qué es una API-Rest?
  2. 2. ¿Qué es una API-Rest?
  3. 3. Por ejemplo: https://2018.sevilla.wordcamp.org/wp-json/wp/v2/posts “A las URLs que reciben o retornan información de un Web API se les llama endpoints” ¿Qué es un End-Point?
  4. 4. Te devuelve todos los tipos de type post que hay en el WordPress que sean visibles para la API Get estados Devuelve los estados de las entradas Get comentarios Devuelve los comentarios /wp-json/wp/v2/types /wp-json/wp/v2/statuses Get tipos /wp-json/wp/v2/comments
  5. 5. Devuelve todas las taxonomías hasta de los custom post type Get categoría Devuelve las categorías Get etiquetas Devuelve las etiquetas /wp-json/wp/v2/taxonomies /wp-json/wp/v2/categories /wp-json/wp/v2/tags Get taxonomía
  6. 6. Get usuario ./wp-json/wp/v2/media Devuelve los archivos subidos a medios Get páginas Devuelve las páginas ./wp-json/wp/v2/pages Get medios ./wp-json/wp/v2/users/<id_usuario>
  7. 7. ./wp-json/wp/v2/posts Get entrada ./wp-json/wp/v2/post/<id> Devuelve los 10 últimos artículos de WordPress *Para poder traer más entradas le añadimos ./wp-json/wp/v2/posts/?per_page=50 Devuelve la entrada con el ID que le hemos indicado El límite está en 100 Get entradas
  8. 8. Get entradas ./wp-json/wp/v2/posts https://2018.sevilla.wordcamp.org/wp-json/wp/v2/posts
  9. 9. ./wp-json/wp/v2/posts ID del post https://2018.sevilla.wordcamp.org/wp-json/wp/v2/posts Get entradas
  10. 10. ./wp-json/wp/v2/posts https://2018.sevilla.wordcamp.org/wp-json/wp/v2/posts Contenido Get entradas URL Entrada
  11. 11. ./wp-json/wp/v2/posts https://2018.sevilla.wordcamp.org/wp-json/wp/v2/posts ID de usuario autor Get entradas
  12. 12. ./wp-json/wp/v2/users/<id_usuario> https://2018.sevilla.wordcamp.org/wp-json/wp/v2/users/7425830 Get usuario
  13. 13. ./wp-json/wp/v2/users/<id_usuario> https://2018.sevilla.wordcamp.org/wp-json/wp/v2/users/7425830 Nombre usuario URL web Get usuario
  14. 14. ./wp-json/wp/v2/users/<id_usuario> https://2018.sevilla.wordcamp.org/wp-json/wp/v2/users/7425830 URL Avatar Get usuario
  15. 15. En móvil
  16. 16. /wp/v2/users/7425830 /wp/v2/posts Campo date Campo name Campo except Campo title Campo _links > wp:attachment Post ID En móvil https://2018.sevilla.wordcamp.org/wp-json Campo author
  17. 17. /wp/v2/posts/3 Campo _links > wp:attachment Campo content Campo title /wp/v2/users/7425830 Campo name En móvil https://2018.sevilla.wordcamp.org/wp-json Campo author Campo date Campo avatars_URL > 48
  18. 18. Rutas especiales donde vamos a poder definir nuestras propias funciones y ajustar las llamadas a nuestras necesidades. Custom endpoint Crear los custom endpoint en un plugin. ¡Nunca en el tema!
  19. 19. register_rest_route( 'wordapp/v1', '/noticias', array( 'methods' => 'GET', 'callback' => 'listar_noticias', ) ); Registrar una ruta propia: Método de llamada Función que se ejecutará Custom endpoint Ruta /wp-json/wordapp/v1/noticiasURL resultante
  20. 20. function listar_noticias(){ $listado_noticias = array(); return $listado_noticias; } Función que ejecuta la llamada al endpoint: Construir un custom endpoint
  21. 21. function listar_noticias(){ $listado_noticias = array(); $args = array( 'numberposts' => 10 ); $posts_array = get_posts( $args ); return $listado_noticias; } Construir un custom endpoint
  22. 22. function listar_noticias(){ ... foreach ($posts_array as $entrada){ array_push($listado_noticias,[ ]); } return $listado_noticias; } Construir un custom endpoint
  23. 23. function listar_noticias(){ ... foreach ($posts_array as $entrada){ array_push($listado_noticias,[ ‘ID’ => $entrada -> ID, ]); } return $listado_noticias; } Construir un custom endpoint
  24. 24. function listar_noticias(){ ... foreach ($posts_array as $entrada){ array_push($listado_noticias,[ ‘ID’ => $entrada -> ID, 'fechaEntrada' => $entrada ->post_date, 'tituloEntrada' => $entrada ->post_title, 'extractoEntrada' => $entrada ->post_excerpt, ‘nombreAutor’ => get_author_name( $entrada -> post_author), ]); } return $listado_noticias; } Construir un custom endpoint
  25. 25. register_rest_route( 'WordAPP/v1', '/noticia/(?P<id>d+)', array( 'methods' => 'GET', 'callback' => 'noticia_por_id', ) ); Con parámetros en la URL Parámetro Construir un custom endpoint /wp-json/wordapp/v1/noticia/<id>URL resultante Método de llamada Función que se ejecutará Ruta
  26. 26. function noticia_por_id ($data){ $datosNoticia=array(); return $datosNoticia; } Construir un custom endpoint
  27. 27. function noticia_por_id($data){ $datosNoticia=array(); $noticia=get_post($data[‘id’]); return $datosNoticia; } Construir un custom endpoint
  28. 28. function noticia_por_id($data){ ... $datosNoticia=[ 'fechaEntrada' => $noticia ->post_date, ‘tituloEntrada' => $noticia ->post_title, 'contenidoEntrada' => $noticia ->post_excerpt, ‘nombreAutor’ => get_author_name( $noticia -> post_author), ‘avatarURL’ => get_avatar_url( $noticia -> post_author ), ]; return $datosNoticia; } Construir un custom endpoint
  29. 29. Plugin preparado con CE https://github.com/VictorSTM/PluginAPIWCSevilla Plugin con los custom endpoints programados en:
  30. 30. https://wplovescarla.com/
  31. 31. Paco Marchante Víctor Sáenz @pacomarchante @victorsaenzTM ¡Gracias!

×