 La siguiente charla nos la va a dar Jorge Fosela, es desarrollador web desde 2003, actualmente trabaja en OpenSistemas dando soporta a la web de la Fundación VVA. Padre de dos niñas preciosas, sus ídolos son por este orden, su mujer Ana Isabel, Michael Jordan y Pablo Moratinos. Dice que le conocí antes que a mí, así que se lo perdono. Es su primera charla en una huerca y en diez minutos nos explicará cómo desarrollar un mecanismo de actualización simple para tus temas o plugins fuera de WordPress.org. Un fuerte aplauso. Bueno, mientras lo van poniendo, en primer lugar quiero dar las gracias a todos los que habéis venido aquí, a esta ponencia, dar las gracias a la organización sobre todo por haberle elegido y a los voluntarios organizadores y patrocinadores que puedan hacer posible un evento de estas características que siempre se agradece juntarnos todos y hablar un poquito de WordPress. Perfecto, ya continuamos el partido aquí. Aviso a navegantes. No recibo comisiones, lo digo porque es que voy a hablar de un servicio de terceros que aunque es de pago y tiene una versión gratuita, yo no me llevo absolutamente nada. Simplemente os lo comento porque a mí me ha venido bien como solución a este problema y no vengo a sentar cátedra. Es decir, si alguien sabe o conoce un sistema mejor o más óptimo, pues estoy encantado y abierto a escucharlo porque obviamente al final todo esto es una contribución para Hablado a Ángel de mí un poquito, José Ángel de mí. Yo voy desarrollando WordPress desde el año 2003 y abrazando a WordPress desde el año 2012, entonces no le he dejado. Actualmente trabajo en OpenSystem dando soporte tanto a usuarios, lo que es a nivel de manejar el WordPress como a la propia web en sí y en otros proyectos a nivel personal estoy dando soporte y desarrollo a AdSense IDEM que es un tema desarrollado con Dean Romero. Dean Romero para el que lo conozcas el autor de Blogger 3.0 es un tipo muy conocido dentro de la comunidad SEO. Y este chico quería desarrollar un tema para crear nichos de AdSense para poder monetizar tu propia web y ganar un dinerito con tu propia web. El objetivo principal es mostraros un camino fácil para resolución de este problema, es decir, lo que me ha pasado a mí os puede pasar a vosotros y creo que a lo mejor escribilo en un blog pues no hubiera tenido la misma repercusión y ya que me dieron la posibilidad de hacer una spictol pues prefería animarme y mostrarlo a vosotros. Despertar vuestro interés y en el sentido de que, oye, pues a mí me ha pasado que he visto otras charlas de otros ponentes y me han despertado interés para explorar esa vía y efectivamente puedo explorar otras vías para poder adelante, mejorar en definitiva el mecanismo. El planteamiento, bueno cuando me reuní con Dean me dijo, oye, ya tengo un tema desarrollado, ¿vale? Necesito a alguien que me pueda dar soporte y haga unas evoluciones de este tema, ¿no? Porque yo no tengo, o sea, el chico que lo terminó, digamos, que abandonó el proyecto porque no le interesaba continuar más y, claro, ya al principio dije, bueno, pues es una cosa bastante fácil. Tú como desarrollador o, bueno, la mayoría como desarrolladores lo que podéis hacer es subir a un FTP ese zip con el tema, engancharis una landing page donde ofrecéis un, donde tenéis un formulario de pago, donde podéis hacer un sistema de pago, pues yo qué sé, con Isida Digital Downloads o con Google Comed, me da igual o con el plugin de Stripe y ofrecéis mediante el pago, ofrecéis ese zip, le pasáis al usuario, la URL, pues ya que sea el correo de pago, etcétera. Y ya esa parte, digamos, es fácil, ¿tú quieres vender tu tema? Bueno, pues te pagan y en el momento en que te pagan, tú le ofreces el zip y no hay ningún problema. Pero, claro, yo lo que le planteé a Dean fue, digo, ¿y cómo vais a ofrecer las actualizaciones? Y me dijo, mira, yo es que soy CEO, yo no me dedico a esto. A mí el desarrollador me ha desarrollado el tema tal como yo quería, tal como yo le he pedido y me ha olvidado absolutamente de todo. Claro, yo lo que pensé es, ¿cómo ofrezco las actualizaciones? Y empecé a pensar y dije, ¿vale? A priori, cuando fuimos a sacar la primera release, porque tenía prisa en sacarla ya porque quería venderlo lo más rápido posible en el Black Friday, pues le dije, bueno, venga, la vendemos y luego hacemos las actualizaciones. Aunque me parecía poco rústico porque no estaba pensado. Pero, claro, luego lo pensé y dije, es que lo que van a tener que hacer la gente es volver a descargar el tema. Es decir, cuando yo hice la primera revisión en la que encontré fallos, pues la volví a subir y dije, oye, mira, tienes que enganchar este link y que la gente se lo descargue otra vez. Y digo, ¿qué tiene que hacer la gente? Volver a descargarse el link. Estamos hablando de usuarios, no desarrolladores. Es decir, gente que a lo mejor no tiene ni idea de qué es un FTPO, no sabe manejarlo. Entonces, para hacerlo desde el dashboard, lo que tiene que hacer es desactivar tu tema, activar otro por defecto. Yo que sé, 29-in, por ejemplo, irte a los detalles del tema que tú has subido, o sea, el AdSense IDM en este caso, meterte en los detalles del tema y darle al link de abajo a la derecha que pone borrar. Entonces, eso lo haces desde el dashboard. Y después, volver a coger el zip y volver a subirlo otra vez. Y la configuración no se pierde, porque aunque algunos me decían, oye, se va a perder la configuración, porque estamos hablando de temas de base de datos, la configuración no se pierde. Lo único que, durante breves momentos, mientras desactivas borras y vuelves a activar, pues tu web lo se vería. Pero bueno, ese es el único fallo, digamos, dentro de ese sistema. Pero a mí no me gustaba. Yo prefería que el usuario recibiera la actualización, como lo haces cuando te descargas un tema de WordPress o RGO de embato, ¿no? Entonces, es lo que encontré. La solución que encontré fue www.updates.com. En esta web, yo por lo que he leído dentro de su documentación, o lo que venía al principio, que la usa Storefront, que es el tema conocido, uno de los temas por defectos que utiliza WooCommerce. ¿En qué consiste realmente www.updates? Bueno, pues te registras, das tu nombre de usuario, es algo tan simple como eso. No tienes otro método de registro, más que nombre de usuario y password. Y en el momento en el que te registras, te ofrece un panel donde puedes añadir un tema o puedes añadir un plugin. Bien, justo debajo hay unas instrucciones que te dicen, descárgate un archivo. Ese archivo es una clase PHP que lo único que se encarga es de conectar con el API concretamente de UBP Updates y se descargaría tu tema que, digamos, lo tienen metido ellos en un repositorio en el que vas haciendo las diferentes versiones. Y luego dos líneas en el Functions PHP. Las dos líneas, o las enseñó un poquito más adelante, realmente las dos líneas son un RequireOnce en el que está requiriendo la clase que os he dicho. Bueno, esta clase, este archivo concretamente, esta clase tiene que estar en el root de tu tema o, bueno, donde lo quieras organizar, porque eso ya es, obviamente, libre de cada uno. Pasa que lo que te sugiere es en el root. Y las dos líneas son el RequireOnce de esta clase y simplemente una instanciación de esa clase y ya está. Y con eso ya tendrías el funcionamiento. Como os he dicho, es un servicio de pago, pero bueno, aquí como podéis ver, si quieres, lo puedes probar gratis. Es completamente ilimitado en ese sentido. Bueno, ilimitado no. Solo te deja añadir un tema o un plugin, pero no tienes limitación de versiones ni nada. O sea que yo por eso me animé a probarlo. Un poco lo que tiene, pues, aquí arriba vemos el nombre del tema, que es lo que yo añadí. Al fondo a la derecha vemos añadir una nueva versión. Ahí vas añadiendo las nuevas versiones. Como podéis ver, hay un listado en el que se van subiendo las versiones. Y luego, pues, el nombre del zip que has subido, el tamaño y el número de descargas que va teniendo cada una de esas. O sea, es decir, tienes además un reporte especial para que puedas ir viendo un poco cómo va evolucionando el tema, ¿no? Y luego, pues, cuando le vas a añadir una nueva versión, es tan simple esta herramienta como añadir ese fichero en concreto, darle el nombre de la versión. Yo recomiendo, aunque no es completamente incompatible, pero yo lo que recomiendo es que la versión que esté en tu style CSS, que es el que marca la versión de tu tema, pues que vaya acorde también con esto. Y luego, el version change, que dice que es donde se van a ver, digamos, el changelo, donde estás listando pues todas las los cambios o las nuevas mejoras que tenga ese tema, vienen los detalles. Esto yo lo he probado y esto no es así. Es decir, esto a lo mejor es a nivel interno, que tú puedes ver los cambios que has hecho en cada versión, pero realmente no viene como tal cuando actualizas WordPress. Estas son las dos líneas que os comentaba. Recuerda, once, añades la clase, uvpupdate.php es la clase. No voy a ponerla aquí la clase, porque es una clase bastante corta, ¿vale? Pero realmente lo que está haciendo es una llamada Lapi de uvpupdates y lo único que haces es conectar con ella y descargarte la nueva versión. Y luego instancias la clase. Las x que viste ahí son un identificador que te da uvpupdates precisamente para identificar tu tema dentro de todo el conglomerado que puedas tener ellos de temas subidos. Una vez que ya lo tengas subido y ya lo tengas empaquetado, tú subes todo ese zip con esas dos líneas de código y con la clase y en el momento en el que tú subas una nueva versión, en el panel, automáticamente te aparece actualizar ahora, si has actualizado, si no has actualizado la nueva versión, en los detalles del tema, pues bueno, ya lo rediriges a una landing page personal o lo que sea. Pero con este sistema puedes vender, digamos, tu propio tema, porque no necesitas a lo mejor, en WordPress RG, sabéis que no se pueden vender temas. Y en Bato Odin Forest, por ejemplo, te están cobrando alrededor de un 50% de comisión por cada venta. Si tú tienes un buen plan de marketing, tienes alguien que te apoye en ese sentido para poder venderlo y hacer una buena acción de venta, pues yo recomiendo esto porque, de principio, creo que para poder empezar o para tener el problema que yo he tenido, por ejemplo, para querer vender el tema y las actualizaciones, a mí me ha parecido bastante interesante. Y eso es todo. Estaré en el Happy Inesbar también por si alguien quiere hablar sobre este tema, pues estaré disponible para cualquiera de vosotros cuando queráis. Muchas gracias.