SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
WordPress y
JavaScript
¡Hola!
Mi nombre es Juan Pablo De la torre Valdez
Desarrollador Web, Freelancer e Instructor en Udemy.
2
“
Learn JavaScript, Deeply
-Matt Mullenweg
State of the Word, WordCamp EU 2015
3
#WCGDL
JavaScript en
WordPress
Aunque el tema ha ganado
popularidad el último año,
JavaScript no es algo nuevo en
WordPress.
4
#WCGDL
WordPress ya utiliza
JavaScript
▫ Customizr.
▫ La Librería Multimedia.
▫ Las Revisiones de los Posts.
▫ Administración de Menús.
▫ Gutenberg.
▫ En cada versión nueva de
WordPress, JavaScript va
tomando más importancia.
Se puede integrar JavaScript a tus
Themes o Plugins personalizados. Así
como Aplicaciones Web.
5
#WCGDL
Agregar JavaScript en
tu Theme.
En un Theme (functions.php) :
<?php
function mitheme_scripts() {
wp_enqueue_script(
'filterizr',
get_template_directory_uri() . '/js/jquery.filterizr.js',
array('jquery'),
'1.2.3',
true
);
}
add_action(‘wp_enqueue_scripts’, ‘mitheme_scripts’);
6
#WCGDL
En un Plugin ( mi_plugin.php ) :
<?php
function miplugin_scripts() {
wp_enqueue_script(
'ga-recetas-js',
plugins_url( 'ga-rest-api.js', __FILE__),
array(),
'1.0.0',
true
);
}
add_action(‘wp_enqueue_scripts’, miplugin_scripts);
7
Agregar JavaScript en
tu Plugin
#WCGDL
wp_localize_script( $script, $nombre, $datos );
Función que se desarrolló para pasar
traducciones de texto.
Una excelente forma de pasar datos en PHP a
JavaScript.
Se utilizaba para llamados Ajax en WordPress
(WP-AJAX)
Pasar Datos de PHP a JavaScript
8
#WCGDL
Ejemplo con código.
9
En tu código PHP:
wp_localize_script(
'ga-recetas-js',
'ruta_rest_api',
array(
'url' => rest_url( 'wp/v2/recetas-api/' )
)
);
En tu código JS:
( function() {
const url = ruta_rest_api.url ;
// consultar con $.ajax, fetch o axios
})();
#WCGDL
WP REST API y
JavaScript
Con WP REST API puedes crear
aplicaciones web SPA o móviles con
cualquier tecnología que soporte
HTTP.
10
#WCGDL
WordPress REST API.
▫ Disponible desde la versión 4.7.
▫ Consumir y mostrar los datos en
cualquier lenguaje o Framework
Front End o Backend debido a la
respuesta JSON o crear
aplicaciones web o móviles.
▫ WP REST API provee los
endpoints o rutas para acceder a
los datos de tu sitio web.
11
Ejemplos de Endpoints o Routes
/wp-json/wp/v2/posts
/wp-json/wp/v2/posts/1
/wp-json/wp/v2/categories
/wp-json/wp/v2/tags
/wp-json/wp/v2/pages
/wp-json/wp/v2/comments
12
/wp-json/wp/v2/taxonomies
/wp-json/wp/v2/media
/wp-json/wp/v2/users
/wp-json/wp/v2/types
/wp-json/wp/v2/statuses
/wp-json/wp/v2/settings
http://www.tusitio.com/{ruta}
Ejemplo con AXIOS
1.- Enqueue a Axios y app.js
wp_enqueue_script( 'axios', get_template_directory_uri() . '/js/axios.js', array(), '0.9', true );
wp_enqueue_script( 'app', get_template_directory_uri() . '/js/app.js', array(), '1.0.0', true );
2.- Pasar a nuestro script los datos de PHP.
wp_localize_script( 'app', 'rest_url', array( 'url' => rest_url('/') ) );
3.- Leer los Posts y enviar petición con Axios. (app.js)
axios.get(`${ rest_url.url }wp/v2/posts`)
.then(respuesta => {
respuesta.data.map(post => console.log(post) )
});
13
No hay límites.
Gracias a WP REST API es posible realizar proyectos
que antes eran inimaginables en WordPress
14
#WCGDL
Gutenberg y JavaScript
▫ Permite crear un sitio web de
forma visual por medio de
bloques.
▫ Disponible a partir de la Versión 5
de WordPress ( se puede instalar
como Plugin).
▫ JavaScript y React son las
tecnologías más utilizadas para
Gutenberg.
▫ Si vendes un Theme o Plugins lo
ideal es que soporte Gutenberg.
15
#WCGDL
Cómo crear un bloque
de Gutenberg
En un Plugin (PHP) :
<?php
function mi_plugin_gutenberg_blocks() {
wp_enqueue_script(
'ga-block',
plugins_url('block.build.js', __FILE__),
array( 'wp-blocks', 'wp-i18n', 'wp-element'),
filemtime( plugin_dir_path( __FILE__ ) . 'block.build.js' )
);
}
add_action('enqueue_block_editor_assets',
‘mi_plugin_gutenberg_blocks’);
16
17
Cómo crear un bloque de Gutenberg (JavaScript)
// importamos elementos desde gutenberg
const { registerBlockType } = wp.blocks;
const { RichText } = wp.editor;
registerBlockType('plugin/nombre_bloque', {
title: 'Nombre del Bloque', // se mostrará en Gutenberg
icon: 'icono', // dashicon
category: 'formatting', // categoría de gutenberg
attributes: {}, // los datos u objetos del bloque
edit: () => {
// lo que se verá en el Editor de Gutenberg
},
save: () => {
// Cuando se guarda el bloque (render a los attributes)
  }
});
#WCGDL
¿Cuánto JavaScript
debo saber?
JavaScript Moderno (ES6+).
▫ Arrow Functions
▫ Template Literals
▫ Eventos
▫ Destructuring
▫ Modules
▫ Objetos y Classes
▫ Fetch API y Promises
▫ Async / Await
▫ React
▪ ReactDOM
▪ JSX
▪ State y setState
▪ Class y Functional Components
▪ Props
18
19
¡Gracias!
¿Tienes preguntas?
@JuanDevWP
fb.com/juan.delatorre.1257

Más contenido relacionado

La actualidad más candente

Despliegue de aplicaciones web en Microsoft Azure
Despliegue de aplicaciones web en Microsoft AzureDespliegue de aplicaciones web en Microsoft Azure
Despliegue de aplicaciones web en Microsoft AzureVíctor Moreno
 
Cómo incrustar una página web en el TwinSpace
Cómo incrustar una página web en el TwinSpaceCómo incrustar una página web en el TwinSpace
Cómo incrustar una página web en el TwinSpaceeTwinning España
 
Angular js Frontenders Valencia
Angular js Frontenders ValenciaAngular js Frontenders Valencia
Angular js Frontenders ValenciaJavier Ruiz
 
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?Martin Siniawski
 
Introducción a web matrix
Introducción a web matrixIntroducción a web matrix
Introducción a web matrixMICTT Palma
 
WordPress multi-idioma: WPML vs MultilingualPress
WordPress multi-idioma: WPML vs MultilingualPressWordPress multi-idioma: WPML vs MultilingualPress
WordPress multi-idioma: WPML vs MultilingualPressWordPress Tarragona
 
Los mejores trucos para aumentar la velocidad en joomla!
Los mejores trucos para aumentar la velocidad en joomla!Los mejores trucos para aumentar la velocidad en joomla!
Los mejores trucos para aumentar la velocidad en joomla!Carlos M. Cámara
 
WordPress Multi-idioma - WPML vs MultiLingualPress
WordPress Multi-idioma - WPML vs MultiLingualPressWordPress Multi-idioma - WPML vs MultiLingualPress
WordPress Multi-idioma - WPML vs MultiLingualPressAlbert Calzada Ribalta
 
Mi primera App con GAE
Mi primera App con GAEMi primera App con GAE
Mi primera App con GAEGDG Lima
 
Máquinas Virtuales en Microsoft Azure con C# .Net
Máquinas Virtuales en Microsoft Azure con C# .NetMáquinas Virtuales en Microsoft Azure con C# .Net
Máquinas Virtuales en Microsoft Azure con C# .NetVíctor Moreno
 
WPO: Lo que debes saber sobre como optimizar correctamente tu WordPress
WPO: Lo que debes saber sobre como optimizar correctamente tu WordPressWPO: Lo que debes saber sobre como optimizar correctamente tu WordPress
WPO: Lo que debes saber sobre como optimizar correctamente tu WordPressRaiola Networks
 

La actualidad más candente (18)

Consejos clave para_crear_proyectos_web
Consejos clave para_crear_proyectos_webConsejos clave para_crear_proyectos_web
Consejos clave para_crear_proyectos_web
 
Despliegue de aplicaciones web en Microsoft Azure
Despliegue de aplicaciones web en Microsoft AzureDespliegue de aplicaciones web en Microsoft Azure
Despliegue de aplicaciones web en Microsoft Azure
 
Andrea Olivera
Andrea OliveraAndrea Olivera
Andrea Olivera
 
Como colocar una radio a tu blogger
Como colocar una radio a tu bloggerComo colocar una radio a tu blogger
Como colocar una radio a tu blogger
 
myprofly
myproflymyprofly
myprofly
 
Cómo incrustar una página web en el TwinSpace
Cómo incrustar una página web en el TwinSpaceCómo incrustar una página web en el TwinSpace
Cómo incrustar una página web en el TwinSpace
 
Angular js Frontenders Valencia
Angular js Frontenders ValenciaAngular js Frontenders Valencia
Angular js Frontenders Valencia
 
Aplicando excepciones en java web
Aplicando excepciones en java webAplicando excepciones en java web
Aplicando excepciones en java web
 
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
Cómo volarle la peluca a tus usuarios con la velocidad de tu sitio?
 
Introducción a web matrix
Introducción a web matrixIntroducción a web matrix
Introducción a web matrix
 
Pres2
Pres2Pres2
Pres2
 
WordPress multi-idioma: WPML vs MultilingualPress
WordPress multi-idioma: WPML vs MultilingualPressWordPress multi-idioma: WPML vs MultilingualPress
WordPress multi-idioma: WPML vs MultilingualPress
 
Los mejores trucos para aumentar la velocidad en joomla!
Los mejores trucos para aumentar la velocidad en joomla!Los mejores trucos para aumentar la velocidad en joomla!
Los mejores trucos para aumentar la velocidad en joomla!
 
Angular - Introduccion
Angular - IntroduccionAngular - Introduccion
Angular - Introduccion
 
WordPress Multi-idioma - WPML vs MultiLingualPress
WordPress Multi-idioma - WPML vs MultiLingualPressWordPress Multi-idioma - WPML vs MultiLingualPress
WordPress Multi-idioma - WPML vs MultiLingualPress
 
Mi primera App con GAE
Mi primera App con GAEMi primera App con GAE
Mi primera App con GAE
 
Máquinas Virtuales en Microsoft Azure con C# .Net
Máquinas Virtuales en Microsoft Azure con C# .NetMáquinas Virtuales en Microsoft Azure con C# .Net
Máquinas Virtuales en Microsoft Azure con C# .Net
 
WPO: Lo que debes saber sobre como optimizar correctamente tu WordPress
WPO: Lo que debes saber sobre como optimizar correctamente tu WordPressWPO: Lo que debes saber sobre como optimizar correctamente tu WordPress
WPO: Lo que debes saber sobre como optimizar correctamente tu WordPress
 

Similar a WordPress y JavaScript

WordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.org
WordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.orgWordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.org
WordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.orgRaúl Martínez
 
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...Asociación Webmasters Cantabria
 
manual de jquery
manual de jquerymanual de jquery
manual de jqueryAngel Luna
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Facescok12v
 
Servicios web
Servicios webServicios web
Servicios webitoomac02
 
Servicios web
Servicios webServicios web
Servicios webitoomac02
 
Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02Josefina Moratalla
 
Test Unitarios y E2E front y Back
Test Unitarios y E2E front y BackTest Unitarios y E2E front y Back
Test Unitarios y E2E front y BackEric Zeidan
 
WordPress como back-end de nuestras apps
WordPress como back-end de nuestras appsWordPress como back-end de nuestras apps
WordPress como back-end de nuestras appsJaime Fernández
 
El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7Ymbra
 
Introducción a Zend Framework
Introducción a Zend FrameworkIntroducción a Zend Framework
Introducción a Zend FrameworkIrontec
 

Similar a WordPress y JavaScript (20)

WordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.org
WordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.orgWordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.org
WordCamp Sevilla 2016 - Creación de un plugin con subida a WordPress.org
 
Introducción a VueJS
Introducción a VueJSIntroducción a VueJS
Introducción a VueJS
 
Dar lab1819
Dar lab1819Dar lab1819
Dar lab1819
 
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
La potencia sin control no sirve de nada, claves para aprovechar el uso de Wo...
 
Manual de jquery
Manual de jqueryManual de jquery
Manual de jquery
 
Jquery
JqueryJquery
Jquery
 
manual de jquery
manual de jquerymanual de jquery
manual de jquery
 
Jsf Java Server Faces
Jsf   Java Server FacesJsf   Java Server Faces
Jsf Java Server Faces
 
Gwt III - Avanzado
Gwt III - AvanzadoGwt III - Avanzado
Gwt III - Avanzado
 
Servicios web
Servicios webServicios web
Servicios web
 
Servicios web
Servicios webServicios web
Servicios web
 
Cv dennys-jose-marquez-reyes-desarrollador-web
Cv dennys-jose-marquez-reyes-desarrollador-webCv dennys-jose-marquez-reyes-desarrollador-web
Cv dennys-jose-marquez-reyes-desarrollador-web
 
Ntics- Acosta
Ntics- AcostaNtics- Acosta
Ntics- Acosta
 
Ntics
NticsNtics
Ntics
 
Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02Cursowordpress 091124113422-phpapp02
Cursowordpress 091124113422-phpapp02
 
Wordpress
Wordpress Wordpress
Wordpress
 
Test Unitarios y E2E front y Back
Test Unitarios y E2E front y BackTest Unitarios y E2E front y Back
Test Unitarios y E2E front y Back
 
WordPress como back-end de nuestras apps
WordPress como back-end de nuestras appsWordPress como back-end de nuestras apps
WordPress como back-end de nuestras apps
 
El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7El universo JavaScript en Drupal 7
El universo JavaScript en Drupal 7
 
Introducción a Zend Framework
Introducción a Zend FrameworkIntroducción a Zend Framework
Introducción a Zend Framework
 

Último

Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 

Último (19)

Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 

WordPress y JavaScript

  • 2. ¡Hola! Mi nombre es Juan Pablo De la torre Valdez Desarrollador Web, Freelancer e Instructor en Udemy. 2
  • 3. “ Learn JavaScript, Deeply -Matt Mullenweg State of the Word, WordCamp EU 2015 3
  • 4. #WCGDL JavaScript en WordPress Aunque el tema ha ganado popularidad el último año, JavaScript no es algo nuevo en WordPress. 4
  • 5. #WCGDL WordPress ya utiliza JavaScript ▫ Customizr. ▫ La Librería Multimedia. ▫ Las Revisiones de los Posts. ▫ Administración de Menús. ▫ Gutenberg. ▫ En cada versión nueva de WordPress, JavaScript va tomando más importancia. Se puede integrar JavaScript a tus Themes o Plugins personalizados. Así como Aplicaciones Web. 5
  • 6. #WCGDL Agregar JavaScript en tu Theme. En un Theme (functions.php) : <?php function mitheme_scripts() { wp_enqueue_script( 'filterizr', get_template_directory_uri() . '/js/jquery.filterizr.js', array('jquery'), '1.2.3', true ); } add_action(‘wp_enqueue_scripts’, ‘mitheme_scripts’); 6
  • 7. #WCGDL En un Plugin ( mi_plugin.php ) : <?php function miplugin_scripts() { wp_enqueue_script( 'ga-recetas-js', plugins_url( 'ga-rest-api.js', __FILE__), array(), '1.0.0', true ); } add_action(‘wp_enqueue_scripts’, miplugin_scripts); 7 Agregar JavaScript en tu Plugin
  • 8. #WCGDL wp_localize_script( $script, $nombre, $datos ); Función que se desarrolló para pasar traducciones de texto. Una excelente forma de pasar datos en PHP a JavaScript. Se utilizaba para llamados Ajax en WordPress (WP-AJAX) Pasar Datos de PHP a JavaScript 8
  • 9. #WCGDL Ejemplo con código. 9 En tu código PHP: wp_localize_script( 'ga-recetas-js', 'ruta_rest_api', array( 'url' => rest_url( 'wp/v2/recetas-api/' ) ) ); En tu código JS: ( function() { const url = ruta_rest_api.url ; // consultar con $.ajax, fetch o axios })();
  • 10. #WCGDL WP REST API y JavaScript Con WP REST API puedes crear aplicaciones web SPA o móviles con cualquier tecnología que soporte HTTP. 10
  • 11. #WCGDL WordPress REST API. ▫ Disponible desde la versión 4.7. ▫ Consumir y mostrar los datos en cualquier lenguaje o Framework Front End o Backend debido a la respuesta JSON o crear aplicaciones web o móviles. ▫ WP REST API provee los endpoints o rutas para acceder a los datos de tu sitio web. 11
  • 12. Ejemplos de Endpoints o Routes /wp-json/wp/v2/posts /wp-json/wp/v2/posts/1 /wp-json/wp/v2/categories /wp-json/wp/v2/tags /wp-json/wp/v2/pages /wp-json/wp/v2/comments 12 /wp-json/wp/v2/taxonomies /wp-json/wp/v2/media /wp-json/wp/v2/users /wp-json/wp/v2/types /wp-json/wp/v2/statuses /wp-json/wp/v2/settings http://www.tusitio.com/{ruta}
  • 13. Ejemplo con AXIOS 1.- Enqueue a Axios y app.js wp_enqueue_script( 'axios', get_template_directory_uri() . '/js/axios.js', array(), '0.9', true ); wp_enqueue_script( 'app', get_template_directory_uri() . '/js/app.js', array(), '1.0.0', true ); 2.- Pasar a nuestro script los datos de PHP. wp_localize_script( 'app', 'rest_url', array( 'url' => rest_url('/') ) ); 3.- Leer los Posts y enviar petición con Axios. (app.js) axios.get(`${ rest_url.url }wp/v2/posts`) .then(respuesta => { respuesta.data.map(post => console.log(post) ) }); 13
  • 14. No hay límites. Gracias a WP REST API es posible realizar proyectos que antes eran inimaginables en WordPress 14
  • 15. #WCGDL Gutenberg y JavaScript ▫ Permite crear un sitio web de forma visual por medio de bloques. ▫ Disponible a partir de la Versión 5 de WordPress ( se puede instalar como Plugin). ▫ JavaScript y React son las tecnologías más utilizadas para Gutenberg. ▫ Si vendes un Theme o Plugins lo ideal es que soporte Gutenberg. 15
  • 16. #WCGDL Cómo crear un bloque de Gutenberg En un Plugin (PHP) : <?php function mi_plugin_gutenberg_blocks() { wp_enqueue_script( 'ga-block', plugins_url('block.build.js', __FILE__), array( 'wp-blocks', 'wp-i18n', 'wp-element'), filemtime( plugin_dir_path( __FILE__ ) . 'block.build.js' ) ); } add_action('enqueue_block_editor_assets', ‘mi_plugin_gutenberg_blocks’); 16
  • 17. 17 Cómo crear un bloque de Gutenberg (JavaScript) // importamos elementos desde gutenberg const { registerBlockType } = wp.blocks; const { RichText } = wp.editor; registerBlockType('plugin/nombre_bloque', { title: 'Nombre del Bloque', // se mostrará en Gutenberg icon: 'icono', // dashicon category: 'formatting', // categoría de gutenberg attributes: {}, // los datos u objetos del bloque edit: () => { // lo que se verá en el Editor de Gutenberg }, save: () => { // Cuando se guarda el bloque (render a los attributes)   } });
  • 18. #WCGDL ¿Cuánto JavaScript debo saber? JavaScript Moderno (ES6+). ▫ Arrow Functions ▫ Template Literals ▫ Eventos ▫ Destructuring ▫ Modules ▫ Objetos y Classes ▫ Fetch API y Promises ▫ Async / Await ▫ React ▪ ReactDOM ▪ JSX ▪ State y setState ▪ Class y Functional Components ▪ Props 18