Los códigos cortos nunca deben incluirse con los temas. Período.

Bienvenido, por aquí Pablo y en esta ocasión os traigo otro nuevo tutorial.

ThemeForest recientemente actualizado su Requisitos de envío de temas de WordPress para ser más estricto y más en línea con las mejores prácticas de desarrollo de temas de WordPress.

Las pautas requieren el uso de varias de las funciones principales de WordPress, enlaces de tema estándar y no permiten funciones PHP (como base64 y fopen) que realmente nunca debería haber tenido lugar en un tema de WordPress para empezar.

Básicamente, prácticamente WordPress.org’s Política de revisión de temas, más o menos algunas cosas.

En general, es un paso en la dirección correcta y avanza hacia promover las mejores prácticas en uno de los mercados de temas de WordPress más populares en la red. Solo hay un problema …

Códigos cortos admisibles

Sin embargo, una cosa que me llamó particularmente la atención fue cómo Se permitió cierta funcionalidad de shortcode «admisible» (es decir, incluyéndolos directamente a través del archivo functions.php del tema). Los enumerados como «admisibles» incluyen los siguientes:

  • botones
  • tablas de precios
  • contenedores de imágenes
  • dropcaps
  • liza

Los códigos cortos inadmisibles incluyen: mapas, acordeones y conmutadores, contenido en caja, columna, formularios de contacto, gráficos.

El problema con los códigos cortos en los temas

Realmente no puedo decirlo mejor que Justin Tadlock ya tiene. Uno de los problemas más notables es que cuando un usuario cambia de tema, el los códigos cortos ya no se analizarán.

Digamos que el tema «Super Awesome» tenía una función de código abreviado que mostraba un gran botón verde con un enlace cuando escribías algo como [button url=»http://example.com»]Botón verde grande[/button].

Botón verde grande

Cuando cambia a otro tema (seamos sinceros, la gente se aburre fácilmente de los temas), ya no hay un gran botón verde. En lugar, ves el shortcode sin analizar en la publicación como si fuera cualquier otro contenido, como este:

[button url=”http://example.com”]Botón verde grande[/button]

Parece feo, confuso y fuera de lugar, y es un Dolor para que el usuario regrese y elimine / reemplace todos ellos.

El otro problema con los códigos cortos en los temas

Algo que Tadlock repasó en su artículo «Cómo lidiar con la locura de los códigos cortos» es que muchos códigos cortos son tan simples y similares a HTML que incluso podría ser mejor indicar a los usuarios que escriban un poco (* jadeo *) código HTML real.

Lo mismo [button url=»http://example.com»]Botón de texto[/button] shortcode en mi ejemplo anterior podría ser reescrito fácilmente como algo como:

Texto del botón aquí

Si bien es posible que no haya código CSS que diseñe el selector .button en un tema nuevo, al menos aparecerá un enlace normal. Que es una gran mejora sobre un sin analizar [button] código abreviado que aparece en el contenido de una publicación.

Además, creo que todos los usuarios de WordPress debe tener al menos un conocimiento básico del código HTML. Enseñarles, incluso en pequeñas partes (como cómo construir un enlace), ayudará. Si pueden entender un shortcode, no se necesitará mucho más para que comprendan HTML básico.

¡Pero a los usuarios no les importa!

Un argumento común que veo defendiendo todo tipo de malas prácticas cuando se trata del desarrollo de temas es que a los usuarios simplemente no les importa. Quiero decir, tal vez nunca quieran actualizar su tema, en cuyo caso, este El problema del shortcode sería un punto discutible.

El problema es que algunos usuarios inevitablemente querrá cambiar de tema algún día. Algunos usuarios querrán instalar un complemento que podría entrar en conflicto con algún otro código mal pensado en un tema.

Entonces, probablemente les importe, y probablemente se pregunten si el tema que compraron con cientos de códigos cortos incorporados y otros las características superfluas realmente valieron la pena.

La forma correcta de incluir códigos cortos

Ponlo en un complemento. Un complemento realmente simple. No necesita un panel de opciones separado. Simplemente copie y pegue literalmente lo que fuera a incluir a través del archivo functions.php de su tema, y ponerlo en un complemento en lugar.

Incluso podría incluirse con algo como Activación del complemento TGM para que sea necesario en la activación del tema. O no. UNA el tema sigue siendo un tema sin códigos cortos.

De esta forma, si el usuario cambia de tema, el los códigos cortos seguirán funcionando, porque esa funcionalidad es manejada por el complemento que aún está activo.

Quizás el complemento también podría poner en cola estilos para los códigos cortos también. De esta forma, los grandes botones verdes que incluiste con el [button] El shortcode seguirá siendo grandes botones verdes, independientemente del tema utilizado.

¿Por qué ThemeForest permitió códigos cortos «admisibles»?

Es difícil decir cuál fue exactamente el razonamiento detrás de esta decisión. Japh Thomson, un evangelista de WordPress en Envato (la empresa matriz de ThemeForest) dijo esto al respecto en un comentario en WPMU.org:

La funcionalidad compleja de shortcode realmente debería residir en un complemento, no en un tema. También tiene sentido si considera que la mayoría de nuestros autores tienen varios temas.

Obviamente, lo entiende. Entonces es un misterio para mí por qué habría códigos cortos «admisibles» en absoluto. Y sí, me doy cuenta de que usó la palabra «complejo» en la cita anterior, y los códigos cortos admisibles tienden a ser bastante simples (mayúsculas, listas, etc.).

Tan simple como puede ser un shortcode, el los problemas que describí anteriormente seguirán existiendo. ThemeForest ha demostrado ser receptivo a los comentarios de la comunidad, por lo que es posible que esta regla se modifique en el futuro.

Conclusión

Me doy cuenta de esta publicación parece un poco quisquilloso, y estas nuevas pautas son definitivamente un gran paso en la dirección correcta. Pero realmente no hay ninguna razón por la que se deba permitir un shortcode en un tema, simple o no.

¿Puedes pensar en una situación en la que un tema lanzado públicamente necesita incluir la funcionalidad de código corto a través de su propio functions.php?

– Laboratorio de temas (@themelab) 9 de julio de 2013

Alerta de spoiler: No obtuve ninguna respuesta a ese tweet con un ejemplo real de un shortcode absolutamente necesario para ser incluido en un tema publicado públicamente.

Eso es porque es simplemente no es fácil de usar para que un usuario regrese y reemplace cientos de códigos cortos de botones después de cambiar a un tema que no tiene exactamente el mismo soporte de códigos cortos.


Por hoy, me despido.

Deja un comentario