PHP

115 entradas

Logo de Wordpress

WordPress: haciendo una plantilla de página

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.

Logo de Wordpress

WordPress: añadir taxonomías a los tipos de posts

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.

Logo de Wordpress

WordPress: añadir tipos de posts

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..

Logo de Wordpress

WordPress no publica los posts a la hora programada

Este es un howto con la solución, a un problema que me ha costado un poco resolver en un WordPress que administro. Se publicaban los posts en otra hora distinta a la programada. Además, si le daba a publicar inmediatamente, se quedaba como programado para publicar, y se publicaba dos horas más tarde. No he podido encontrar casi información por Internet, al final encontré el porqué pasaba esto, y aquí que estoy compartiéndolo por si alguien lo necesita también 😉

Drupal review

Drupal, un pedrusco de oro en la mina de los CMSs

Este CMS reluce como el oro por fuera, y por dentro es oro puro, una joya del software 😉 Es uno de los mejores CMSs Open Source que tenemos disponibles para los proyectos. Hoy os traigo una review, tratando de remarcar el porqué es uno de los más usados en el mercado, sobretodo en proyectos complejos para universidades, gobiernos y en las empresas más tecnológicas. Es uno de los CMS que hay que conocer. Espero resumir bien las principales características, sobre todo desde el punto de vista de un programador 😎 aunque trataré también temas para marketeros y agencias. Es uno de los más flexibles y escalables. Inicialmente tenía su propio framework, pero luego comenzó incorporando Symfony 2, y en las últimas versiones viene incorporando Symfony 3. Ya está integrado con Composer. Internamente, prioriza las mejores técnicas de desarrollo para garantizarte una solución robusta para tus proyectos. Externamente, es de lo más personalizable sin tener que invertir demasiado tiempo. Tiene un gran ecosistema de configuraciones, temas y módulos disponibles. Sobre todo una gran comunidad de desarrolladores con casi 50000 módulos y casi 3000 temas disponibles a fecha de hoy, en el marketplace de Drupal.org.

EasyAdmin generando a partir de la BD

Generando un panel de control en pocos minutos con EasyAdmin en Symfony

¡Hola! Jugando y jugando, probando software, aquí que vengo de nuevo y os traigo un codekata en Symfony. Es para hacer ingeniería inversa de cualquier proyecto en el que tengas una base de datos. También traigo una joya del software que se llama EasyAdmin, un bundle/componente para Symfony. Este codekata se puede aplicar a cualquier base de datos compatible con Symfony, más en concreto, con cualquiera compatible con Doctrine, que es el componente ORM que te conectará con la BD. Quizá tienes que hacer un panel de control que sólo acceda a la información X del proyecto, a ciertas tablas. También sirve para bases de datos completas. Podría ser un proyecto legacy, de un Symfony antiguo, un Magento, un ERP como Odoo con el que trabajar con Symfony, o un WordPress, un Prestashop, Drupal, etc.. Sea cual sea el proyecto la idea es la misma.

Wordpress multisite

WordPress multisite: una instalación, infinitos sitios web

Activar la opción de WordPress multisite te puede hacer muy eficiente a la hora de explotar esta herramienta profesionalmente. Por otro lado es brutalmente eficaz para mantener segura y estable a una red de sitios WordPress que tengas que mantener. Los clientes finales te lo agradecerán, ya que no tendrán que realizar tareas muy técnicas para asegurarse de que la web siga online. Y por otro lado no tendremos que recorrer cada sitio, uno a uno, para mantenerlos en buen estado. Puedes tener una única instalación de WordPress, pero con infinitas páginas web. Todos los websites se podrían administrar desde un panel de control principal. Y los usuarios podrían trabajar, o visitar cada sitio web, como si de sitios independientes se trataran. Una única instalación de WordPress que mantener actualizada, securizada, optimizada. Un sitio desde donde administrar los plugins y temas disponibles para toda la red de páginas web. Una sola instalación en un único servidor. Ahorrarás en costes de servidor, en costes de mantenimiento, menos problemas y más recursos para todos.

Logo de Wordpress

WordPress: el plugin más ligero y rápido para añadir código en el header de tus proyectos

¡Hola de nuevo! Aquí que ando poniéndome al día con WordPress, y traigo un simple codekata para hacer un plugin básico para WordPress. Con este plugin se puede añadir contenido en la cabecera del frontend. Podemos usarlo para añadir códigos de Google Analytics, Facebook, Twitter.. editar estilos o añadir librerías Javascript para modificar el frontend.. etc.. Se trata de un plugin básico del tipo ¡Hola mundo! para WordPress. Punto de partida para customizar el frontend en instalaciones de WordPress. Es tan sencillo, que con ficheros como este no necesitas crear una plantilla hija completa para empezar a personalizar el frontend. Tampoco necesitarás depender de otros módulos. Con lo que a base de pequeños plugins como este con tus personalizaciones, podrás instalar o desintalar los otros tantos módulos que hayas estado usando sin miedo a perder tus cambios 😎

Raspberry Pi & GNU/Linux: montando un sistema embebido con una interfaz web

Ya hace tiempo que no escribo con tantos problemas que está habiendo con el COVID19.. así que aquí estoy de nuevo tratando de no perder las buenas costumbres. Aquí que traigo un codekata para la Raspberry Pi. Se trata de un tutorial para montar un sistema embebido con una interfaz web en una Raspberry Pi. Imaginemos por ejemplo que la Raspberry maneja una serie de relés que encienden y apagan dispositivos, se podrían manejar desde una web. O imaginemos quizá que esta Raspberry te pudiera hacer una encuesta desde una tableta, y en función a tus respuestas, iluminar el café, chocolate o perfume de la tienda que más te va a gustar. O quizá quieres montar una API REST para interactuar con varias Raspberry que tenemos conectadas en la red de tu casa o local, para hacer algo más complejo. Así se podría coordinar las tareas en red que le corresponda a cada Raspberry, desde alguna unidad central. Si te parece interesante, sigue leyendo que este es tu post.. 😉

Symfony manejando los bounces y complaints

Symfony: cómo evitar ser SPAM controlando los bounces y complaints de tus emails

Hoy traigo un codekata bien cargado, sobre Symfony y los emails. Este post, junto con el anterior sobre cómo enviar muchos emails.. te dará el poder de enviar infinitos emails gratis. Pero un gran poder conlleva una gran responsabilidad 😀 o serás marcado como el supervillano de los emails, el SPAMMER 😱 Fuera de bromas, este es un post de pruebas, un codekata usando la última versión 5 de Symfony, con Symfony Flex, y Swiftmailer para el envío de los emails. Con este codekata podemos controlar que los emails que enviamos, lleguen a destino correctamente, para que no nos marquen como SPAMMERS. Evitamos así que nuestro servidor entre en listas negras de bloqueo. He elegido Symfony, el framework PHP de referencia para grandes proyectos web. También Swiftmailer ya que quería invertir poco tiempo, y viene muy bien integrado con Symfony 😜 La misma teoría y lógica también serviría para cualquier otro lenguaje como Java o Python.

GNU/Linux: optimizando servidores

AWS & GNU/Linux: optimizando aplicaciones web

Aquí estoy de nuevo dejando mi granito de arena en todo esto de la informática. Hoy traigo un howto para la optimización de servidores web. Simplemente, son unas propuestas de configuraciones totalmente estándar y disponibles en las documentaciones oficiales. Pero que mejoran mucho el rendimiento de aplicaciones web, hechas en lenguajes como HTML, CSS, Javascript, PHP, Java, Python, SQL, DQL.. Este post es para optimizar aplicaciones web del tipo WordPress, Prestashop, Magento, Drupal, Symfony.. etcétera. Es una visión general de cómo funcionan las cosas a bajo nivel. Digo a bajo nivel, porque están muy de moda las arquitecturas server-less, o los servidores auto-administrados, que también necesitan su optimización. Pero aquí nos remangaremos la camisa, y nos embarraremos hasta el cuello mientras que vamos investigando, aprendiendo y aplicando, para cada proyecto en concreto. Este es un post para los que nos gusta trabajar los servidores, para los que nos gusta ponernos manos a la obra, para experimentar nosotros mismos con los proyectos, rascando cada milisegundo para conseguir que todo vaya lo más rápido posible..

Symfony, enviando muchos muchos emails

Symfony: cómo enviar muchos, muchos, muchos emails gratis

Ya estoy por aquí otra vez. Hoy traigo un code-kata muy divertido, también peligroso 😱 si lo ejecutas sin medida, o sin configurarlo bien 😀 Pero estos códigos fuentes pueden hacerte ahorrar mucho dinero, a tí o a la empresa donde trabajes 🤑 No es una tarea complicada, simplemente se trata de enviar muchos emails, muchos, del orden de miles o decenas de miles de emails al mes. Esta es una tarea tan antigua como programar el propio envío de los emails dentro de los servidores de correo electrónico. Es decir, en este post tienes el cómo hay que programar el envío de emails, lo más profesionalmente posible. No sólo en Symfony con PHP, sino también para otros lenguajes de programación, y en otro tipo de aplicaciones. En CMSs como Magento por ejemplo, esto ya viene incluso construido y listo para trabajar, simplemente hay que usarlo. Pero si lo estas construyendo tú mismo, este es tu post 😉