Ampliando un post anterior sobre Symfony, traigo hoy el cómo gestionar los roles de usuario con un panel de control dentro de un proyecto. En este post anterior sobre la gestión de la seguridad con Symfony quedó en el aire este tema, así que vamos al grano con el codekata.. ?
Automatizar la publicación de nuevas versiones es una técnica de desarrollo de aplicaciones que se denomina Despliegue Continuo o Continuous Deployment en inglés (CD). Se suele usar junto con el Continuous Integration (CI), en el que se elabora una serie de pruebas automáticas sobre el software.
Tener esto automatizado nos ahorra mucho tiempo, nos dará velocidad en todos estos pasos intermedios ya que no tendremos que repetirlos continuamente, y podremos centrarnos en desarrollar para cada iteración.
Durante las pruebas puede notificarnos en caso de errores, realizar todo tipo de chequeos, o elaborar documentación sobre el proyecto para el resto del equipo. Pero una vez que tenemos el primer paso montado del CI, es interesante seguir con el segundo paso del CD. A continuación comparto unos scripts e instrucciones para una web en WordPress, Symfony o Magento 2, con GitHub o BitBucket. Así es como funciona también aquí en JnjSite.com..
Dejo aquí un post apunte o codekata, sobre cómo convertir los datos en PHP. Más bien unas líneas de acción para trabajar con la información dentro de los programas en PHP.
Lo lógico es tratar de utilizar programación orientada a objetos para tratar de organizar el código y que sea mantenible. Utilizar código limpio, estructurado en capas, dividido según funcionalidades, etc.. pero antes de llegar a esto tenemos que lidiar quizá con operaciones más sencillas.
Hoy vuelvo con otro howto o codekata para WordPress. Esta vez es para hacer una descarga de un fichero que no existe, a partir de una URL. Es decir, es una forma de generar contenido de un fichero al vuelo, en forma de fichero y darlo en descarga al navegador que visita WP. En vez de devolver contenido HTML, CSS y JavaScript desde el servidor al navegador que nos visita, devolvemos el contenido de un fichero y le decimos al navegador que nos visita que hay que descargar.
Para hacer esto es simple la idea. Sólo hay que engancharse a un hook de WordPress antes de que se devuelva ninguna respuesta web normal al navegador. Entonces, si la URL de la petición es la que queremos, entonces devolvemos el contenido del fichero, y ponemos los HEADERS en la respuesta para que el navegador se descargue el contenido en forma de fichero.
Hoy traigo un codekata o howto para el desarrollo de plugins para WordPress, con una funcionalidad que me ha entretenido bastante el conseguir que funcione. Se trata de una forma de actualizar las tablas de la base de datos, a medida que vamos actualizando un plugin, y vamos modificando también la estructura o contenidos de la base de datos. Es decir, es un pequeño howto o tutorial para mantener versiones de la estructura y contenido de la base de datos, para un plugin de WordPress.
Una persona me ha hecho una pregunta sobre WordPress. Curioseando para responder al comentario, inspeccionando las llamadas con el Monitor de Red, me he dado cuenta de una funcionalidad muy interesante que nos brinda WordPress. Resulta que tenemos disponible otra forma de desacoplar el frontend de una instalación WordPress, pero seguir disfrutando del backend de WordPress. Podemos programar con esto en mente, para trabajar la información usando llamadas AJAX que ataquen al CMS.
Rizando el rizo un poco, estas llamadas AJAX, incluso se podrían hacer desde otro tipo de programas que no fueran webs..
Es decir, tenemos un ‘endpoint’ con la ruta wp-admin/admin-ajax.php al que podemos atacar. Y a partir de este punto de entrada podemos crear plugins o themes, con lo que podemos programarle lo que queramos en la parte de backend. Por otro lado, en la parte de frontend, al atacar este endpoint podríamos así desacoplar más todo el frontend, y usar cualquier tecnología de frontend como podría ser Angular, React, Vue, etc.. o incluso otro tipo de programas de escritorio o aplicaciones nativas de móviles.
Pequeño howto para lanzar scriptsPHP desde línea de comandos y poder trabajar sobre WordPress. Es decir, esta es una técnica con la que, por ejemplo, podríamos hacer un recorrido de todos los posts de una instalación de WordPress, para hacer un trabajo entonces sobre cada uno de ellos.
Esta forma de lanzar scripts es útil mientras que estamos contruyendo un plugin o theme. Así se pueden probar algunas funciones o pocas líneas de código, viendo sin funcionan, para luego cortar y pegar en donde tengan que ir.
Este post es un sencillo howto para ejecutar un código, antes de cualquier ejecución en PHP en una aplicación web. Sirve para montar lo que se llama un WAF en la capa de aplicación, cuyas siglas significan Web Application Firewall.
Así después, le podemos añadir toda la lógica que necesitemos. Con ésta técnica, en cada petición que se reciba en PHP, se ejecutará lo que pongas en el WAF antes de la ejecución de nuestra aplicación web.. ?
Este es un pequeño codekata o howto para crear un plugin que cree una tabla en la base de datos. Como reza la documentación oficial, no se recomienda crear nuevas tablas para almacenar los datos, pero según que caso, puede ser la mejor opción, tendremos entonces que ocuparnos nosotros de su mantenimiento.
El siguiente código simplemente es un esqueleto de plugin con el que se puede crear una tabla en el momento de la activación de dicho plugin. También cuando se desactiva el plugin se borrará dicha tabla.
Este post es un codekata o howto sobre WordPress para hacer plantillas de páginas individuales. Es decir, tenemos lo que se llaman temas completos para el frontend de WordPress. En los temas de WordPress todo el diseño web viene definido, y a veces nos traen una serie de plantillas que se pueden asignar individualmente a cada página, a cada post, a cada contenido..
Estas plantillas de página, podemos además maquetarlas y programarlas para que tengan cierto aspecto visual. Podemos crear nuevas y definir nuevas estructuras. Por ejemplo, en el tema de Customizr que estoy usando actualmente en este blog, tenemos una plantilla de página que nos proponen, y podemos crear nuevas replicándola y editándola fácilmente.
Esto es otro codekata para WordPress, para añadir lo que se llaman taxonomías a los posts. Es decir, las taxonomías son al efecto como categorías, con las que podemos clasificar los posts. Me explico un poco más, dentro de WordPress, muchos de los contenidos son posts, están dentro de la tabla de la BD wp_posts. Se pueden dividir en tipos tal y como se puede ver en el post anterior, sobre cómo registrar tipos de posts. Y además, dentro de cada conjunto de tipos de post, éstos se pueden marcar con las taxonomías/clasificaciones.
Apunte, resumen, tutorial, codekata para generar tipos de contenidos en el backend de un WordPress. En el origen de los tiempos todo eran Posts del mismo tipo.. xD ¡y se crearon los tipos de post! Con lo que ya podemos tener de base también las páginas, y podemos generar nuestros propios tipos de posts.
Esto sirve para crear páginas de gestión de por ejemplo productos, servicios, locales, personal, etc..