 Después de lo que voy a decir, igual me largáis de la huerca, pero yo lo voy a soltar. A mí esta charla me parece una pasada, porque para mí eso de usar la línea de comandos es como hablar en chino. No podemos tener a nadie mejor para que nos hable de línea de comandos y sobre todo para que yo aprenda algo de esto. Además, trae sorpresa. Cuidado, ojito, Jesús Amíeiro, con comer sin hacer un solo clic y solo usando la línea de comandos. Yo me voy a sentar y, desde luego, las orejas de punta. Las voy a llevar toda la charla. Gracias. Que tal, buenos días. Bueno, vamos a empezar a hablar sobre la línea de comandos para ver si podemos aprender a montar una tienda de comer sin hacer un clic. Eso es lo que voy a tratar de que salgáis con este conocimiento. El año de comandos no es nada para superhackers, como vemos en las películas, lo podemos llegar a usar todo el mundo. Esa es la idea que tenéis que salir de aquí hoy. Y para empezar a hablar de la línea de comandos y como montar una web en Google Comers, vamos a situarnos en el norte del lugo. ¿De dónde soy yo? Porque es una zona superverde donde tenemos un producto muy, muy interesante que se llama FABA. FABA en Allego y en Asturiano es la HABA. Es un producto que se consume seco, se consume, por ejemplo, es muy típico en la FABA de Asturiana. Esta es la FABA seca y está potenciando muchísimo la economía de una zona que está bastante deprimida económicamente. ¿Cómo se planta la FABA? Pues la veis aquí en unas hileras donde va trepando y al final del verano se corta, se seca y posteriormente se comercializa. Y aquí os voy a presentar a Marusha. Marusha es una chávara que decide o seguir la tradición familiar, una tradición que ya viene de su madre, su abuela de cultivar el terreno, de no tener que emigrar como tradicionalmente hacemos los gallegos a otras zonas y comercializar ese producto. Ella la está comercializando a sitios a supermercados donde la mayor parte de esa pasta, de ese dinero se está quedando en supermercado. Entonces la idea de Marusha es cultivar esta FABA y comercializarla a través de una denominación de origen de una IGP que tienen que se llama FABA de logrenza. Entonces lo que hizo Marusha fue contactar con Iria, una amiga de la infancia, que es desarrolladora en WordPress, monta sus blogs en Google Comments y le dijo, mira, tengo este problema, quiero comercializar la FABA a toda España para quedarme yo con esa parte con la que se están quedando los intermediarios y poder obtener unos recursos económicos superiores y poder vivir mejor. Entonces lo que le dijo es no tengo demasiado dinero, vamos a ver cómo podemos montar este tinglado de una forma interesante. Bueno, entonces Iria lo estuvo analizando y qué mejor que hacerlo automatizado. La línea de comandos nos permite hacer cosas muy rápido e incluso posteriormente automatizarlas, ¿vale? Que es lo que vamos a ver a partir de ahora. Entonces obviamente Iria se cantó por WordPress, se cantó por utilizar la línea de comandos de WordPress. Ok, lo primero que tuvo que hacer Iria fue hacer la instalación de la línea de comandos, ¿vale? De la cli de WordPress y la instalación de la línea de comandos es súper sencilla. Lo único que tenemos que hacer es descargar el archivo, un punto far, darle premiosos de ejecución y moverlo a una carpeta que se dentro del pad para poder ejecutarlo desde cualquier sitio en nuestro equipo o en nuestro servidor, ¿vale? Muy sencillo. Todo esto lo vais a tener, no compíais nada porque lo vais a tener en las diapositivas. Una vez que tenemos instalada la línea de comandos de la cli de WordPress, pues lo siguiente que vamos a hacer es ver cómo funciona. Es tan sencillo como invocarla con un WP, pasar el comando subcomando, parámetros y banderas. Pues aquí lo vemos muy sencillo, un ejemplo. WP para invocarla, el comando es algo sobre el tema, el subcomando es la instalación, el parámetro es storefront y las banderas en este caso es la ayuda, ¿vale? Me va a dar la ayuda a este comando y si no le pusiera el gel pues obviamente lo que voy a hacer es instalar el tema storefront. Ok, ya tenemos una idea de cómo invocar la línea de comandos de WordPress. Fijaros que por ahora solo está hablando de WordPress, no me metí todavía en uCommerce. Vale, y para temer una tienda en uCommerce lo primero que tengo que hacer es instalar un WordPress, no me queda más. Vale, vais a ver que es súper sencillo instalar un WordPress con la línea de comandos. Creo un archivo, perdón un directorio y hacedo a ese directorio. Con este comando me instalo el core de WordPress en español, ya lo tengo instalado en español. Con este comando creo el archivo WP config de configuración dándole los parámetros de conexión a la base de datos, el nombre de la base de datos, usuario y contraseña, ya lo tendría generado y lo único que me queda es hacer la instalación, ¿vale? Con el comando del core de install, donde le paso URL, título, usuario, administrador, contraseña, administrador y correo. Es decir, la famosa instalación de cinco minutos de la que habréis oído hablar un montón de veces en WordPress, aquí la tengo hecho en un minuto. Veis que vamos muy rápido, optimizamos tiempos, optimizamos costes. Y ya tenemos el 2023 instalado, ¿vale? Ese primer paso para poder tener nuestra tienda. Lo siguiente que vamos a hacer son instalar los plugins que vamos a necesitar para montar el WooCommerce y también lo vamos a hacer con línea de comandos. Con este comando WP plugin install, le pasamos los distintos plugins que queremos instalar, el YoAz, el Contafone 7 y WooCommerce y ya los activamos. Con esto, tenemos instalados y activados esos tres plugins. Veis esta barra que tengo aquí, simplemente lo que hago es dividir esa línea en varias, ¿vale? Para poder leerla de forma más clara. Y lo siguiente que tengo que hacer es instalar el tema. En este caso voy a instalar el tema Storefront, que es un tema muy básico de comercio electrónico, pero imagino que todos lo conoceréis. Obviamente hay temas muchísimo más complejos y más optimizados, pero bueno, para tener una primera idea, es interesante. El comando es muy sencillo, WP semi-install, le paso el tema que quiero instalar y lo activo. Y ya por último, lo que voy a hacer es instalar por precaución, porque lo normal es que tuviera los paquetes de idioma instalados, pero con este comando lo que hago es instalar los paquetes de idioma del core, de los plugins y de los temas. Veis que le pasa un parámetro menos-menos-sol para que me instale los paquetes de todos los plugins y todos los temas. Nada más. Y ya tengo mi tienda montada. Veis que por ahora es relativamente sencillo, ¿verdad? Los comandos se entienden bastante bien, son bastante claros. Ok. Y por ahora no toqué nada de la clí de WooComes. Bueno, ¿qué más puedo hacer con la clí de WordPress? Un montón de historias, puedo actualizar toda la parte de WordPress, core, sins, plugins, etcétera. Puedo gestionar base datos, usuarios, menús, contenido, widgets. Puedo exportar e importar contenido y puedo hacerlo todo extensible a través de plugins de terceros para la clí. Ok. Una vez instalado todo esto, si lo hicieres de una forma manual con ratón, lo que haríais sería salvacent. Y aquí tenemos la configuración de WooComes, que estaréis hartos de verla. Haríamos clic aquí empezar a vender y lo configuraríamos, ¿verdad? Bueno, vamos a hacer todo esto con la línea de comandos. Vale, con la WooCommerce CLI. Cuando instalamos el plugin de WooCommerce, automáticamente WooCommerce instala una parte de línea de comandos para poder hacer toda esa invocación. Es decir, no tenemos que hacer nada más. Y que nos va a permitir esta CLI de WooCommerce. Un montón de historias que vamos a ver. Configurar WooCommerce, los métodos de pago, impuestos, métodos de envío, productos, pedidos, clientes, importación, exposición masiva, etcétera, etcétera. Y la ventaja que podemos hacer todo esto es meterlo dentro de scripts de base para automatizar. Ok. Antes de nada, vamos a ejecutar este comando. Fijaros que con UWP invoco la línea de comandos de WordPress. El primer parámetro es UWC, que es WooCommerce, para instanciar, para ejecutar la línea de comandos de WooCommerce. Y a partir de aquí, será todo, elementos de WooCommerce. Este tool run install page, lo que me va a hacer es, si no lo estuviera instalado, me va a instalar las páginas de checkout, todas estas páginas fundamentales para trabajar con WooCommerce. Con un comercio electrónico, vale. Y fijaros que hay aquí un parámetro, menos menos user manager, que lo vamos a utilizar en un montón de comandos, porque estamos utilizando ese usuario administrador como el usuario que ejecuta este comando. Sin ese parámetro, no nos va a funcionar. Vale. Tendríamos la web con todas las páginas creadas, como el checkout, MaiaCon, cart, etcétera, etcétera. Pero ahora mismo la tenemos vacía, no tenemos productos todavía. Vamos a ver cómo configuramos todo eso. Vale. Lo primero que lo vamos a indicar, que vamos a vender solo en España. Marusia quería empezar a vender por ahora en España, ojalá en un futuro le vaya el comercio de maravilla y pueda extenderse al resto de Europa y al resto del mundo. Pero por ahora, con este comando, fijaros que estoy trabajando dentro de la clíde de WooCommerce, porque estoy trabajando con las opciones. Vale, porque estoy trabajando con las opciones, lo mete en la tabla de WP Options de WooCommerce, no en la de WooCommerce. Vale. Fijaros que aquí no la invoco precisamente por eso, porque lo va a meter en la tabla de opciones habitual de WordPress y no en las tablas específicas de WooCommerce. Entonces, lo que le hago es meter este parámetro diciéndole, no voy a vender a todos los países, solo voy a vender algunos. Y con este segundo parámetro, WooCommerce específico, HelloWeb countries, le voy a decir que por ahora solo va a ser a España. Ok. Tengo ya los países configurados. Lo siguiente, le voy a hacer una serie de configuraciones sobre registro de acceso. En el primero es que un usuario se va a poder comprar sin registrarse, de forma anónima. La siguiente que va a poder eloguearse en el checkout. La siguiente que va a poder registrarse en el checkout. Y la siguiente que va a poder registrarse, de habilito, el registro en la tienda. Ok. Ya tengo configurado toda la parte de usuarios, de registro y de acceso. Vale. La siguiente va a ser la configuración de la propia tienda. Esto estaba en Lorenzada, en un pequeño polo de lugo. Entonces le digo, mira, la dirección es Sanchucho, la primera línea. La segunda línea es número 1 Baixo. La ciudad es Lorenzada. El país y la provincia en este caso es España-Lugo. Y el código postal, 27.751. Configurada los datos de la tienda. Vale. Lo siguiente que va a poder configurar es la moneda de la tienda. Le digo que sea Euro, que el Euro me aparezca a la derecha cuando tengo un precio. Que mis productos van a ser físicos. Deshabilito el tracking de Google Comers. Y le digo, el separador de decimales es una coma y el separador de punto de miles es un punto. Porque habitualmente en las tiendas inglesas funciona al revés. Y aquí lo que le digo, los métodos de pago. Le digo, mira, deshabilítame el pago por cheque, habilitame por transferencia bancaria y habilité malo por contrarreembolso. Vale, veis que simplemente le paso un formato JSON, un enable yes o no. En este momento ya tendría los métodos de pago, esos dos activados. Ok. Seguimos, impuestos. El impuesto habitual que tenemos en España es un IVA de un 21%. Entonces lo que vamos a decir es que Google Comers va a calcular los impuestos que va a incluir los impuestos en el precio final que nos va a mostrar. Que me va a mostrar tanto en la tienda como en el checkout el ink de impuestos incluidos. Y en la venta normal me va a mostrar el texto y va incluido. Cuando me ponga 10 euros y va incluido el texto. Y ya fijaros que ahora estamos utilizando WP Option. Ahora me meto en un comando de la cli de Google Comers. Y aquí lo que voy a crear es el impuesto del 21% de IVA. Es decir, le digo, WP, WC, tax create. Es bastante indicativo lo que significa. El país España, el porcentaje del 21%. El nombre IVA, 21%. Pridaz uno, no es compuesto, no me lo aplica al envío y el usuario que quiero utilizar. Vale, impuestos listos. Siguiente, métodos de envío. Esta es la parte quizá un poco más compleja de lo que voy a explicar. Vamos a ir por partes. Lo primero, fijaros cómo funciona esto. Aquí estoy creando en base una variable y lo creo con lo que me devuelve este comando. El shipping zone create. Lo que estoy creando simplemente es una zona de envío para España. Y al decirle con este parámetro por Celain que puede volver el ID con el que se creó esa zona de envío en la base de datos. Y ese ID, que es un número, lo voy a meter en esta variable. ¿Por qué? Porque lo voy a utilizar posteriormente. Por ahora solo tengo creado una zona que le llamo España. Nada más. No está asignada todavía al país España. Eso lo vamos a ver a continuación. Lo siguiente que hago es, creo, un método de envío a España que le voy a llamar flat rate, es decir, tarifa plana. Y lo habilito. ¿Veis que aquí utilicé esta variable para meterla como parámetro? Ok. La siguiente parte es actualizar una serie de opciones para lo que acabo de crear, para esta método de zona de envío. Lo hago como wpOption. El momento que le digo es que no me apliques tasas, no me apliques impuestos. El título es mrv y el coste es 4,99 euros. Y ya para finalizar, fijaros, aquí lo que estoy diciendo es una SQL directamente a la base de datos. Y lo que estoy básicamente diciendo es, para la zona que creé antes con este ID, en la localización España, que es un país, me la vas a crear. Tengo que crear ese método de envío que le llamo mrv con una tasa fija de 4,99 euros para enviar solo a España. Lo siguiente es que era una categoría para meter mis productos con lo asigno a esta variable de categoría ID con el comando wpWCProductCAD y con estos parámetros. Y ahora ya vamos a pasar a crear los productos. Antes de crear los productos, lo que tengo es en mi equipo una URL donde están las imágenes, la meto en una variable, inserto mediante el comando wpMediaImport, esa imagen en la media de WordPress y meto su ID en esta variable. Y ya para finalizar, creo el producto, creo una bolsa de medio kilo de fabas. wpWCProductCAD, name fabas de Lorenzal, de tipo simple con este SKU, precio de 10 euros, esta categoría que venía de antes, esta imagen y con este usuario. Tengo producto creado y si lo hago cuatro veces para tener producto de medio kilo, un kilo, dos kilos y cinco kilos, pues tendría esto. Tengo ya mi comercio electrónico creado. Entonces solo cualquier usuario podría venir, podría hacer clic en este botón de añadir al carrito, podría volver a hacer clic en ver carrito y pasar al checkout. Ahí tenemos 10 euros que acostaba el producto, 4,99 euros que cuesta el envío tarifa plana y ya hacemos clic en finalizar compra para acabar el checkout. Meto todos mis datos, dirección, código postal, población, provincia, bla, bla, bla, le indico que el método de pago va a ser contra el reembolso y finalizar pedido. Vale, esto me parecería estos datos en el frontend de pedido realizado, obviamente recibiría un correo electrónico y ya lo que tendría que hacer, ya la otra parte, Marucha, la comerciante podría listar los pedidos que tenga mediante la clí de e-commerce y fijaros que son los pedidos que estuvieran en estatus estado procesando y esto, por ejemplo, podría sacar mediante el mayor mayor un archivo CCV y ese archivo CCV podría jugar, por ejemplo, con lo que dijo Antesanti, de poder automatizar en otras herramientas. Es decir, esto es la potencia que tienes de poder jugar con otros sistemas. Obviamente lo podría hacer con el vaquén y en las primeras veces va a utilizar el vaquén, no va a querer nada automatizado porque va a hacer pocas ventas al principio. Vale, pero si todo fue bien, lo que deberíamos recibir cuando, al día siguiente, un paquete como esto de Fabas Marucha de Lorenzá con la IGP de Faba de Lorenzá. Vale, y al día siguiente podríamos disfrutar de una maravillosa fabada que, obviamente, es cojonuda para estos días de tanto frío aquí. Yo soy Jesús Amiayro, soy programador en Automatic y quedo a vuestra disposición para luego las preguntas que tengáis. ¿Os habéis dado cuenta de que hacer tiendas sin tocar un botón? Desde luego, más rápido, no puede ser. Aquí está la prueba. Me acaba de llegar. Señores, empezamos la ronda de preguntas. Y, señoras, tenemos unos minutitos. Muchísimas gracias. ¿Se oye? Sí. Existen comandos Clip para los add-ons, tipo subscription, los oficiales de WoW, los add-ons que traen WoCommerce, el de subcripciones, por ejemplo. Lo desconozco. Lo desconozco. Depende de cada desarrollador de incluidos. Cualquier tema, perdón, cualquier plugin que te encuentres en el repositorio, un plugin privado sin otros repositorios fuera del oficial, pueden uno traerlos, pero lo desconozco. Gracias, Jesús. Me ha gustado bastante. Me ha faltado que hubas que luego decías con procesos batch. Cuando veía todo esto, digo, joder, esto es como cuando hacía SSH, yo no me aprendía todos los comandos, pero me tenía mi chuleta, quiere montar una tienda, copia, pega, le cambia los cuatro parámetros y tiras para adelante. ¿Los procesos batch para cargar un montón de comandos estos del tirón? Bueno, es igual. Ya no os explicarás otro día cómo se hacen. El porcelain, la bandera porcelain. ¿Qué era? No me entera muy bien. ¿Te devuelve el ID con el que se creó ese registro en la base de datos? Sí, el menos menos porcelain te devuelve el ID. Entonces, eso lo puedes asignar en una variable batch y utilizarla como parámetro en los siguientes comandos. Vale, nada, gracias, muy chulo. Se toparon de listados y eso. Sí, después, si queréis, vemos los procesos batch que tengo ahí algunos escritos bastante interesantes. Luego te secuestro un rato. Perfecto. Pero solo por encima, es posible en un batch llamar un crón para que haga un batch limpia de transients, por ejemplo, directamente después de limpiar transients llame a un rocket para que limpie la cache, etcétera, etcétera. Para que limpie transients, sí, porque la clí de e-commerce lo soporta. Para que lo haga en WP Rocket, depende si los de WP Rocket lo han insertado como un comando clí, pero si lo tienen, claro que sí. Y eso lo puedes ejecutar. Dices, mira, hasta es la mañana que mi bueno tiene tráfico en España, lo hago. Exactamente, eso es lo que tengo que hacer de forma repetitiva. Tú a te cuenta, un proceso batch, un batch, por ejemplo, un script batch, lo puedes lanzar desde un crón. Están pensados realmente para eso. Bueno, entre muchísimas otras cosas, pero eso lo puedes hacer y funciona perfectamente. Hola. Gracias. No conocía, por ejemplo, el comando de la opción para meter parámetros y me ha gustado mucho. Yo quería preguntarte que igual no existe y igual lo estoy buscando el otro día. Si se puede ejecutar WP clí desde una carpeta anterior, o hay que meterse con el batch en la carpeta para ejecutarlo. Hay un comando para una bandera, menos-menos-path, en la que tú le pasas el director donde está instalado WordPress, al que quieres atacar y con eso es suficiente. Es decir, tú puedes ejecutar, imagínate que haces tu carpeta home y tienes 10 WordPress instalados en esa máquina, pasando el flag-menos-path, puedes variar a qué WordPress atacas. Genial, gracias.