 Vamos a presentaros al siguiente ponente, ¿vale? Este es Fernando, es desarrollador web desde hace unos 10 años. También es podcaster, junto a su socio hace en el podcast más informal del ecosistema WordPress, llamado Repositorio WordPress o WP. Su relación con la comunidad de WordPress España empezó con la primera Workamp Bilbao, y desde entonces no ha parado de ir por toda España de Workamp en Workamp, como asistente, voluntario en este último año como ponente. El título de su charla es administrar HuCommerce con WPekli. Muchas gracias. Muchas gracias. Se me doy así, ¿no? Bueno, lo primero es pedirnos disculpas por lo que pueda salir de aquí, que tengo un gripazo de cuidado, así que a saber que sale. Venga, vamos allá, administrar un HuCommerce con WPekli. Bueno, como me han presentado, soy Fernando. Trabajo ahora mismo como desarrollador WordPress, basado en WordPress, en una empresa junto a mi socio, Óscar, que se llama UYEA, y hacemos básicamente trabajo de desarrollo, y últimamente utilizando WordPress básicamente como framework, ¿vale? Muy interesante. Y bueno, como freelance y podcast también repositorio WordPress. Venga, pues vamos allá. Perdón, ¿eh? ¿Qué es WPekli? ¿Kli? La palabra Kli viene de command line interface, que es el interface de línea de comandos, ¿vale? Lo que es la terminal. Todos los más antiguos del lugar, os acordáis del Linux antiguo, del MS2, todo se hacía por terminal. Entonces, WordPress tiene una herramienta para poder manejar y administrar prácticamente todo lo que podemos hacer con WordPress desde el back en la web, lo podemos hacer desde el terminal, ¿vale? De hecho, en sus objetivos que dicen que cualquier acción que pueda realizar desde el admin de WordPress va a haber un equivalente en WordPress Kli, ¿vale? En WPekli. Ya sea de reinstalar el propio WordPress, instalar plugins, temas, crear posts, infinidad de cosas. Todo lo que se ocurra, lo vamos a poder hacer desde la terminal. ¿Y por qué hacerlo desde la terminal? Bien, hoy en día que tan en voga está el ser más productivo, nuestro tiempo cuesta dinero, vamos a intentar hacer las cosas más rápidamente. Con la terminal, vamos a poder automatizar un montón de acciones que hacemos en mucho menor tiempo. Menos tiempo significa menor dinero para el cliente, lo cual significa ser más productivo, ¿vale? Bien, por el principio. WordPress Kli, ¿cómo lo instalamos? Vamos a la terminal. Aquí os dejo esta presentación, os la dejaré, ¿vale? ¿Cómo indican desde el propio proyecto que está aquí la dirección de cómo instalar WordPress Kli? Que básicamente es bajarte el WPK far y darle permisos, y ya está, ¿vale? Esto cuando lo hagáis a través de una consola Linux, cuando por ejemplo estáis trabajando local o cojáis un VPS y lo tengáis que instalar, porque la mayoría de hosting que tiene servicio hosting compartido, hoy en día la mayoría ya traen por defecto el WPK, ¿vale? La mayoría. Nada, esto es simplemente una vez que lo instalas, le das el flag info y si está bien instalado nos trae la información del sistema. Madre mía, dejarme que vea un poco de agua. ¿Cómo funciona WPK? WPK Kli son una serie de comandos, ¿de acuerdo? Cada uno valdrá por una cosa. Entonces, el formato siempre es este. Primero, bueno, el dólar es, lo pongo ahí como el símbolo de la terminal, ¿de acuerdo? Primero, lanzamos WP, que va a lanzar el Kli, luego un comando, en este caso Plugin, un subcomando, los comandos que tienen subcomandos, en este caso Instal, un parámetro y un flag. Este comando que nos haría nos instala el Plugin, WordPress EO y le activa. Con esta línea lo instalamos y la activamos. Que fijaos, esto, lo que os decía antes, podemos tardar cinco segundos, diez segundos a escribirlo, pero si tenemos que entrar al back, vas, le buscas, le instala, luego le tienes que activar, se tarda bastante más, ¿vale? Si alguno está de acuerdo con lo que digo, que me lo diga, ¿eh? Discutimos aquí. Venga. Algunos ejemplos de comandos que tenemos en el WP Kli. Por ejemplo, el Core. Core es un comando todo relacionado con el Core de WordPress. ¿Qué podemos hacer? Core de Alloa, nos descarga este comando sin más, nos descarga la última versión de WordPress en el repositorio. La última versión estable. El Core Instal, nos lo instalaría. Esto lleva más subcomandos, ¿vale? Pero bueno, con WordPress Kli podemos instalar un multisite, también simplemente dándole multisite install, nos descarga WordPress y nos insta un multisite. Update. Actualizar. Check update. Simplemente mira a ver si en el repositorio hay alguna actualización del Core. Y multisite convert. Nos convierte una instalación normal a multisite. ¿Vale? En todo cuando os deje la presentación en todos pongo enlaces podemos acceder al comando. Debe. Operaciones sobre la base de datos. La base de datos evidentemente estas operaciones sobre la base de datos que tenemos configurada en el WP config, ¿vale? Accede con ese usuario esa contraseña que tenemos ahí. Podemos crear. Podemos exportar la base de datos. Podemos importar una base de datos. Ver el tamaño. Optimizar. Y luego este comando que no es DB es un comando en sí pero que es súper útil que es el search replays. Este comando si habéis hecho alguna vez alguna migración de un sitio a otro ¿Sabéis qué coñazo es? Con perdón. No sé si puedo decir eso. Cuando migráis de una URL o sea quiero decir tengo mi sitio midiominio.com con eso a otro dominio.com Nos llevamos los archivos nos llevamos la base de datos y no funciona nada porque en la base de datos todo está haciendo referencia al primer dominio. ¿Vale? Hay por ahí herramientas pero el WordPress directamente search replays el primer dominio segundo dominio y te lo reemplaza todo ¿vale? Más plug-in. Lo que os decía instalar un plug-in listarnos los plug-ins que tenemos buscar un plug-in en el repositorio es como la búsqueda que podéis hacer desde el repositorio de WordPress pero dentro de vuestra instalación hacer un update verificar si un plug-in se ha modificado archivos con los archivos del repositorio que es el checksum este y luego podemos borrar hay muchos más, lo que pasa es que os pongo aquí algunos ejemplos ¿vale? os recomiendo que investiguéis un poquito sobre los comandos este es Scaffold este es muy interesante Scaffold es que quería decir Pandamio me parece algo así ¿no? y esto es lo que nos hace son unos comandos que por ejemplo ChaiCin nos crea automáticamente el tema que tengamos activo plug-in o sea, yo pongo Scaffold plug-in bueno, tienen más parámetros y lo que nos hace es crearnos el código básico para crear un plug-in y ya lo tenemos ahí y a partir de ahí podemos hacer las funcionalidades bloc este nos genera un bloque para Gutenberg que en la charla de Sevilla estuvimos haciendo una en la workhand de Sevilla una charla sobre esto también te genera el código básico para hacer un bloque de Gutenberg y a partir de ahí las funcionalidades taxonomía y luego el underscore se crea un tema basado en underscore ¿vale? que es un no sé, conocéis underscore es un tema gratuito que es un tema base para partir de ahí poder hacer lo que queréis perdón ¿eh? madre mía que más la bariña mucho más mucho más cosas si la pago ¿vale? bien, luego tenemos esto que son los paquetes son una serie de comandos creados y mantenidos por la comunidad cualquiera puede hacer un paquete lo publica en un repositorio que hay dentro de clí y simplemente poniendo para acá je instale el nombre del paquete ya cualquiera se puede instalar en ese paquete ¿vale? son como si fuesen plugins para el WordPress ¿vale? por ejemplo este paquete WP paquete install y le digo el nombre del paquete este está muy interesante es WP sec este paquete lo que hace es hay una página que se llama bullen de habilidades no recuerdo como se llama entonces lo que nos hace es chequear nuestra instalación nuestros plugins, temas, etc lo chequea con esa base de de de esa página y nos dice si tenemos algún plugin que hay que actualizar porque es peligroso y demás ¿vale? este de aquí bien otra cosa muy interesante podemos conectarnos con WordPress Clip en remoto a otro servidor evidentemente los dos servidores tienen que tener instalado WordPress Clip ¿vale? y es tan sencillo como que yo estoy un servidor le digo WP y le meto el SSH y usuario donde se tiene que conectar y que me haga un listado de plugins y ahí lo que me va a hacer es un listado de plugins de ese otro servidor con lo cual os conectáis a uno y desde ahí podéis manejar varias instalaciones que tengáis en otros sitios ¿vale? ahí está el resultado yo estoy en este servidor le he lanzado el SSH y un listado de plugins y aquí me está devolviendo el listado de plugins de ese segundo servidor como veis en el listado os dice el nombre este nombre que os aparece no es el nombre del plugins sino el Slack la URL si está activo si necesite actualización y la versión ¿vale? así de un vistazo podemos ver lo que tenemos ahí bien hasta aquí el tema del WordPress Clip así unos esbozos que es lo que podemos hacer y ahora ¿cómo podemos llevar esto a BuCommerce en este caso? bien, hay muchísimos muchísimos, hay unos cuantos plugins que en su desarrollo dan soporte a Clip ¿vale? tienen comandos específicos para poder gestionarlos desde la terminal uno de estos plugins muy potente es BuCommerce BuCommerce tiene un apartado de Clip donde vamos a poder hacer prácticamente de todo ¿vale? desde la terminal bien, lo que dicen es esto podemos administrar una tienda con BuCommerce desde consola a través de WP Clip eso es lo que nos están diciendo si vais a la dirección que os pongo ahí ellos tienen en BuCommerce y en GitHub todos los comandos tiene como una especie de wiki con los comandos que tiene para Clip ¿vale? los comandos para Clip de BuCommerce siempre es primero el WP para lanzar el Clip y luego tiene como una capa WC, es decir WP WC y luego el comando que sea de BuCommerce aquí tenés una lista de comandos que podéis hacer con clientes, productos envíos tax impuestos perdonar vale y también tiene el help en todas las opciones esto no sé si os lo he dicho en todos los comandos de WP Clip si al final ponéis barra barra help todas las opciones de ese comando bien entonces tiene esta pila de ellos por ejemplo bueno esto es como sacar la ayuda si yo le digo WP WC product create barra barra help me va a sacar la ayuda de el comando crear producto un ejemplo sería este aquí le digo WC o sea crear producto flag name esto es el nombre del producto producto de prueba para la work ponte vedra, el Slack la descripción el SKU el precio y le voy a dar un precio oferta y luego al final en estas opciones en el Clip de BuCommerce le tenemos que poner el usuario porque solamente puede dar de alta en este caso un producto el que sea administrador de la tienda alguien que tenga prebiélagios si no le das el usuario te va a decir que te falta entonces con este comando de aquí lo que vemos en el front nos genera automáticamente esto el título, el precio el precio en oferta el SKU y la descripción que le hemos dicho ¿de acuerdo? que chulo bien, lo mismo con crear clientes creo cliente, le digo el email le digo el nombre el apellido el usuario, la contraseña y luego el que lo crea ¿de acuerdo? exactamente igual si no sabéis porque nadie lo va a saber de memoria todos los flags que tenemos para crear cliente en este caso le dais al help en este caso si que nos va a pedir unos datos mínimos que son el email usuario y contraseña me parece que son los tres que te pide como obligatorios ¿de acuerdo? ¿vale? entonces esto ese comando nos genera en el back el cliente ¿de acuerdo? bien ahora vamos a pasar al modo pro es decir esto que hemos hecho está muy bien pero al final se trata de ganar tiempo y claro, si tenemos que estar escribiendo customer, cript, no se que al final tardamos menos yendo al back de WordPress y creando ¿vale? pues os voy a contar cómo lo hacemos en modo pro esto está basado en un hecho real como decían las películas de los sábados por la tarde el cliente tú vas a hacer una tienda online de un cliente que ya tiene sus productos y sus clientes y te dice pero todo eso hay que importarlo o sea, tenemos que meter todo eso ¿vale? y tú le dices, bien lo que debemos hacer es en una hoja de cálculo tú me vas metiendo producto, descripción y precio todo seguido y lo mismo con los clientes y le dices y te voy a programar una herramienta que no veas tú para importarte todo se que ha encantado entonces mientras el cliente tu cliente está metiendo sus datos tú deberías de estar programando pero no estás jugando porque sabes que tienes ¿y cómo haríamos esto? mirad un ejemplo de lo que vuestro cliente va a poner en la hoja de cálculo decimos me pones un correo electrónico nombre, apellido usuario y contraseña de acceso ¿vale? por ejemplo, podía poner más datos ¿vale? y te lo va poniendo todo entonces tú que ya tienes preparado un archivo bueno, esto lo único que tenéis que hacer es, por ejemplo de una hoja de cálculo de Google lo exportáis con clientes TSW es decir, es como un archivo de texto separado por tabuladores que sólo tiene todos los programas entonces tú te creas un archivo por lotes bueno, así es como lo hago yo ¿eh? no quiere decir que esto sea dogma si no ves como yo lo hago me creo un archivo por lotes importar clientes.sh ¿y qué es lo que hago con esto? hay un comando en Linux que es set que te sirve para reemplazar caracteres entonces yo aquí con este comando lo que hago es reemplazar los tabuladores por esta barrita de aquí después bueno le añado una línea no, hago un eco comillas, comillas ¿por qué? porque voy a leer ese archivo y para que haya una línea al final ¿vale? y entonces llegue y porque si no no te le no te le la última línea y después le hago un while le digo tú vas leyendo este este archivo y cada vez que encuentres este símbolo me vas a leer estas variables uno, nombre o sea email, nombre, apellido usuario, contraseña esos son si recordáis son las columnas que había pintado el cliente ¿no? pues le digo que cada, cada simbolito de esos divide uno, cada una de las variables y simplemente le hago el comando este que hemos visto antes solo que le hago referencia a la variable entonces va haciendo ahí un bucle y mientras no se acaba el fichero nos va generando los clientes da igual uno, cien o dos mil y esto, lo lanzas una vez y automáticamente ya lo ha creado todo ¿vale? y el cliente está alucinado con el script que lo has hecho esto con los clientes y ¿cómo hacemos con los productos? por lo mismo producto descripción y precio podéis meter más campos evidentemente y hacemos la misma operación bucle solo que aquí le decimos crear producto ¿de acuerdo? espero que más o menos de todas formas si tenéis cualquier duda hacemos un ademon directo cascará pero ¿vale? bueno eso es como quedaría los productos en nuestro van y nada más, muchas gracias no sé si da tiempo a preguntas no sé si tenéis alguna pregunta el micro solo llega hasta la amistad hola hola mira como estamos en los productos ya para terminar y que te lo montes de todo lo que nos interesa era que metas también las imágenes las imágenes, se pueden meter también como un campo y que metes la url eso, sí, sí, sí se pueden meter bueno, no sé si metes la url o tienes que meter la idea de la imagen y la tienes que haber subido no estoy seguro que con la url es muy fácil sí no estoy seguro si es que sí, sí, claro holas si, si, por FTP te subes todo a más al cliente le dices que le pongas el nombre de editar pero bueno, lo que puedes hacer si, si, si pero tú siempre vas a tener que subir aunque tú cojas una carpeta por FTP y la subas WordPress tiene que actualizar o sea, en la base de datos tiene que decir que eso que tienes ahí es una imagen o sea, no te vale solo con subirla tienes que actualizar en la base de datos también pero yo creo, no lo sé pero sí que lo podemos mirar a ver si poniendo la url te lo sube y si no lo hacemos hola hola hola Ferrando interesante la charla cuando hablabas de search and replays decías que típico movimiento de cambio de carpeta dentro del dominio o mover el otro dominio se come eso, los campos ser realizados o no los campos ser realizados si, en el lugar del P options las beta options hay muchos campos que están ser realizados eso puede hacer un search and replays en un campo ser realizado a la buena de dios yo creo que lo rompes funciona te hace una búsqueda por absolutamente toda la base de datos cada vez que encuentre la cadena que tú le dices si, pero la correa si, ya te entiendo pero yo creo que lo cambia una pregunta si bueno de hecho este chico dice que lo ha probado y que lo hace al hacerlo de la actualización de productos, bueno subirlos y puesta actualizar también y no hay límite de timeouts no, bueno será el límite del servidor pero no es como una petición web que suele ser no, no, en principio no nada, no porque tú estás en la terminal, estás actuando contra el servidor vale, es que vía web nos ha pasado con una web que tiene 90.000 referencias claro y se te queda colgado y hay que hacer particionales que se huben muchos trozos claro, aquí en principio no tiene que haber ningún tipo de problema porque estás actuando directamente contra el servidor has probado así un número grande o no, grande no pero bueno, yo no creo que no te puedo asegurar pero vamos alguien más, agua cuando te conectas en remoto a otro WordPress ese otro WordPress tiene que tener algo especial para que te puedas conectar en remoto cuando te conectas en remoto el otro WordPress lo único que tienes que tener es acceso SSH porque te conectas por SSH y tener el WordPress clístalado nada más de hecho yo muchas veces lo hago desde local y si tienes imagínate de instalaciones de mantenimiento pues tú desde tu terminal en local vas mirando que es lo que hace falta hacer no la tienes que establecer tú puedes tener tú en la terminal puedes tener cuando vas o depende la terminal tú puedes hacer atajos tienes que poner la cadena nos corta os recordamos que si tenéis muchas más dudas y preguntas que hacerle a Fernando él va a estar todo por aquí entre las chales y demás podéis cazarlo lo que él lo tenéis puerto responder os recordamos que bueno todo aquel que le haya realizado una pregunta tiene derecho a que le dé una carta y que también hay aquí en la mesa y bueno eso, que él puede repartir carta son limitadas así que nada gracias a todos