Adventures in WordPress

Entendiendo la Programación Orientada a Eventos

Un primer paso muy recomendable para empezar a entender cómo funciona WordPress a nivel código, independientemente de si trabajamos con plugins o themes, es conocer el paradigma de programación orientada a eventos, ya que en él se basan la mayoría de las posibilidades de extensión que tenemos disponibles. Es importantísimo conocer este paradigma a la hora de interactuar con el código de WordPress, ya que desconocerlo puede llevar a muchísimo trabajo innecesario, o a mucho tiempo perdido en mantenimiento, mejoras y arreglo de bugs.

Read more

PHP on macOS Sierra can’t access SSL data

So I was having this issue with Composer not being able to update dependencies or even self updating to its newer version. I’m on a Mac, and this didn’t happen while using El Capitán, but I recently installed Sierra, which didn’t break a thing right until now.

I did some digging, and it became apparent that PHP couldn’t obtain SSL certificates while using both Git and cURL. Finally, after some googling around, this article did the trick.

Read more

Useful Articles for Developers

This is sort of a compilation of articles I ran into over the last week. I think they can be useful for both myself and other developers, either doing WordPress-related work or not. Some of them are very technical, while others just share personal experiences, and the rest fall in the middle.

Read more

A veces hay que parar con la autoayuda

Los verdaderos realistas saben que la historia la cuentan solo los ganadores. Los manejadores de feeds como Feedly, Pocket y otros nos permiten ajustar ciertas sugerencias de artículos de acuerdo a lo que, con el tiempo, se van dando cuenta de que nos gusta. Y si somos gente medianamente reflexiva, autocrítica, y con no pocas inseguridades o cierta tendencia a la depresión, corremos el peligro de recaer en lecturas de autoayuda, aunque estén disfrazadas de algún otro genero.

Read more

Quick Tip: How to Disable Page Templates in Child Themes

While developing a website with WordPress, you’ve probably been or will be in the following situation:

You created a Child Theme, inheriting a number of page templates from the parent theme. The thing is, maybe you don’t want some of those page templates. You don’t want your users to select it, or you’re not gonna support it, or it’s not fully compatible with the modifications you’ve made, or you just simply don’t like it. Whatever the reason is, you’d like to remove it from the dropdown in the page editor when creating a new page.

Before WordPress 3.9, there were some bizarre and pretty much complicated things to accomplish this. However, wlth the introduction of the theme_page_templates filter, it has become a really easy task to do.

Read more

Psicología del Programador: Conociéndose a Sí Mismo

Todos los desarrolladores alguna vez estuvieron muy entusiasmados por empezar un nuevo proyecto determinado. Les parecía muy emocionante, y les representaba un desafío que estaban ansiosos por encarar. Pero a muchos les pasó algo que también es bastante común: a medida que el proyecto avanzaba (o no avanzaba) se encontraron con que se sentían cada vez más desmotivados, con que perdían las ganas, y con que ese proyecto que tanto les interesaba al principio se terminó convirtiendo en una carga. El trabajo se extendió, imprevisiblemente, por meses, incluso por años. Hasta que un día decidieron abandonarlo, o lo terminaron con una calidad que no los conformó. O sí los conformó, pero ya estaban tan alejados emocionalmente que perdieron esa satisfacción que da un trabajo bien hecho.

Este post va a tener como punto central una pregunta: ¿hasta qué punto nosotros mismos, como desarrolladores, somos responsables de que nos pase esto?

Read more

El problema de la autovalidación

A veces los programadores tendemos a pensar que nuestra manera de resolver problemas es la mejor posible. La autovalidación en sí misma no es mala, pero cuando se convierte en vicio está lejos de ser realista. Basta con buscar un poco de información en internet acerca de algún problema que estemos intentando resolver, y nos vamos a encontrar con un montón de propuestas diferentes, a veces hasta contradictorias, y unas cuantas discusiones acerca de por qué ciertas soluciones son perfectas y las demás son producto de los pensamientos de una mente idiota. Nuestra propia solución probablemente no esté fuera del cuestionamiento de los críticos. De hecho, hasta podemos estar increíblemente errados.

Read more

Why Using Shortcodes Inside Templates Isn’t Always a Good Idea

The WordPress Shortcode API is going through a great deal of a refactoring process, which was necessary since a long time ago. Though still in its initial stages, one of the main goals is to provide more strict guidelines about the way shortcodes should be used, specially regarding what can and what cannot be passed as attributes, being HTML code the more complicated case. This is part of an ongoing discussion that began when WordPress 4.2.3 was launched, and lots of sites broke because they were using shortcodes in a way the update didn’t support anymore.

I’ll skip my point of view about the way the update was managed by the Core team, and I won’t dare to say that there’s a “wrong” way to use shortcodes, since I think that any provided tool should be used in any possible way that’s allowed by its internal logic. I’m just gonna stick to talk about a practice that can help to prevent some issues with the Shortcode API.

Read more

Programar no es (tan) complicado

Aprender a programar no es exactamente fácil, pero tampoco es lo más difícil del mundo. La dificultad no tiene tanto que ver con entender la sintaxis de un lenguaje, o los conceptos básicos de la programación en general, sino con aprender a manejar distintos problemas que van a ser encontrados de forma inevitable mientras escribamos código. La sintaxis y los conceptos básicos son cosas muy sencillas y que resultan incluso muy intuitivas, porque en general tienen que ver con la vida cotidiana de cualquier persona que haya aprendido a leer y escribir, sin importar demasiado qué tan bien lea o escriba.

Read more