5.1.1. —perdido, buscando el diseño ideal

Wordpress: cuando hay que arreglar, ¿dónde hay que arreglar?

Cuando una función produce más problemas que soluciones, ¿uno debe arreglarla o corresponde evitarla reclearla usando otras funciones más sencillas?

Wordpress tiene funciones (especificamente, etiquetas para las plantillas) que de forma transparente realizan otras funciones un poco más tediosas. Pero, como era de esperarse, mucho control por parte de uno se puede convertir en una invasión al territorio del otro.

Tomemos el ejemplo de la función comments_popup_link() que (basicamente) produce el siguiente código: <a href="post#comments" title="titulo del post">….

En mi caso en particular yo suelo utilizar código HTML en los títulos de las anotaciones. Entre todos esos caracteres siempre puede aparecer " que provoca problemas (apareciendo sin control) cerrando @title antes de tiempo. Entonces una solución es evitar comments_popup_link() y hacer todo a mano:

<a href="<?php the_permalink(); ?>#comments" title="<? echo (strip_tags(get_the_title())); ?>

En principio hay un imprudencia por parte de Wordpress en usar el título sin arreglarlo antes, pero ¿cuál es la forma correcta de solucionar esto?

  • Agregar funciones de más bajo nivel (como get_the_title()) a la plantilla. Lo malo es que habría que copiar la misma linea en cada página, además de recordar de utilizarla en cada nueva plantilla a través del tiempo.
  • Modificar la función en los archivos de Wordpress. Lo malo es que al momento de actualizar hay que rescatar todas las lineas propias antes de que sean sobreescritas. Sumado a esto, uno no puede distribuir tan facilmente sus propias plantillas porque no todos modificaron la función.

En este caso es sencillo, pero hay otros casos en que no me resultaría tan fácil reformular con otras funciones y que en realidad me sería más fácil modificar la función que está molestando.

Where on the heck does a hack belong?

Publicado el 24 de enero de 2006 en las categorías Wordpress

5 comentarios.

Diego

Yo tocaria la funcion, sin pensarmelo dos veces

25 de enero de 2006

sosa

¿y si haces un plugin? asi al actualizar no se afectan tus modificaciones.

25 de enero de 2006

Federico

Sosa: Lo pensé, pero todavía no ví como se hacen. My fault.

25 de enero de 2006

Ismael

Opino que hacer un plugin con todas las funciones propias es la mejor solución (no es difícil). Igual no soy fanático de la arquitectura de Wordpress pero para ese tipo de extensiones los plugins estan muy bien.

25 de enero de 2006

Federico

Dos votos a favor del plugin. El plugin será considerado seriamente. :)

25 de enero de 2006

© Federico Martín Panicobpm230 (arroba) gmail (punto) com