Los marcos de trabajo de WordPress obtienen un nuevo hogar acogedor: includeWP
Publicado: 2016-07-27A principios de este año (marzo de 2016), el equipo de revisión de complementos emitió una declaración en make.wordpress.org de que los marcos ya no están permitidos en el repositorio oficial de complementos.
Decidimos encargarnos de crear un repositorio digno para los marcos de trabajo de WordPress y creamos IncludeWP. Un hogar, o mejor dicho, una tabla de clasificación, para mostrar todos los marcos de trabajo de código abierto para los desarrolladores de complementos y temas de WordPress. Una ventanilla única para que los desarrolladores evalúen lo que hay actualmente en el mercado.
Había comenzado como un proyecto paralelo de fin de semana divertido y refrescante que el equipo había decidido realizar hace tres semanas, y el plan era lanzarlo de inmediato. Pero, durante los años, adopté el hábito de no publicar nada antes de recibir comentarios de personas en cuya opinión confío, así que decidí preguntar primero a algunos de mis amigos de la comunidad de WordPress.
Recibimos excelentes comentarios y algunas sugerencias de interfaz de usuario, pero un comentario atrajo la mayor parte de mi atención: Luca Fracassi de Addendio dijo: “Vova, sería genial si pudiera hacer clic en un marco y ver qué complementos y temas realmente lo están usando .”
"¡Demonios si! Eso sería sorprendente." Pensé dentro de mí. Pero no hay forma de que dediquemos nuestro tiempo a buscar y agregar manualmente esos complementos y temas.
El repositorio de includeWP había comenzado como un proyecto paralelo de fin de semana divertido y refrescante para el equipo de Freemius.Tweet
Después de un poco de ida y vuelta con Luca, nos dimos cuenta de que podemos aprovechar las API de WordPress.org y SVN para identificar automáticamente la asociación de complementos y temas con marcos en WordPress.org. Así que decidimos unir fuerzas.
Luca pasó unos días desarrollando una lógica de identificación de marco y la ejecutó en .org, y amablemente expuso un punto final de API personalizado para que nosotros consumiéramos esos datos. Aprovechamos el punto final de Luca para obtener los datos de complementos y temas de WordPress.org y los presentamos en la página del marco.
Nos tomó otra semana finalizarlo, ¡pero ahora es 10 veces más poderoso! Los desarrolladores pueden ver qué otros productos están utilizando el marco. Y en el espíritu del código abierto, está disponible para uso público en GitHub.
¿Por qué los frameworks, SDK y bibliotecas de WordPress son geniales?
¡La reutilización del código es increíble! De hecho, es parte de los fundamentos del desarrollo. Tan sencillo como eso. Mire WooCommerce, la plataforma de comercio electrónico en línea más popular, que comenzó como una bifurcación de Jigoshop.
Como desarrolladores, intentamos optimizar nuestro propio código y asegurarnos de que no haya redundancia. Pero cuando se trata del trabajo de otros desarrolladores, de repente somos muy exigentes.
Siendo un desarrollador, sé lo que estás pensando...
“Nadie puede escribir código como yo”. Noticia de última hora: hay muchos desarrolladores talentosos, ¡así que deja de ser un snob y comienza a reutilizar!
Además, miles de desarrolladores utilizan algunos marcos, se implementan en cientos de miles de sitios web y se han estado ejecutando en producción durante muchos años. Es muy probable que esas bibliotecas sean mucho más a prueba de errores que su código recién escrito.
“Puedo construirlo yo mismo, no necesito ningún marco” – ¡Sí, puedes! ¿Pero por qué? ¿Por qué querrías reinventar la rueda? Lo entiendo; hay una curva de aprendizaje cuando no es su código. Pero por otro lado, aprender un framework con documentación sólida seguramente será más rápido que desarrollar todo por tu cuenta, desde cero.
“¿Por qué necesito los gastos generales? Solo uso un pequeño subconjunto de lo que maneja la biblioteca. ¡Hack, el marco está tan inflado que es más grande que mi complemento! – La mayoría de los complementos comienzan con solo una pequeña funcionalidad. Tal vez hoy eso es todo lo que necesita, pero a medida que evolucione su complemento o tema de WordPress, probablemente agregará más cosas. Tener unos cimientos sólidos te facilitará la vida y te ahorrará mucho tiempo en el futuro. Intente planificar a largo plazo y elija un marco que se adapte mejor a sus necesidades y hoja de ruta.
En pocas palabras: deja de perder el tiempo reescribiendo las mismas cosas una y otra vez. Hay como 20 marcos diferentes que manejan campos personalizados
¿Por qué hemos decidido abrir el proyecto de código abierto?
Una de las razones por las que comenzamos con Freemius para WordPress es por su increíble comunidad y la mentalidad de código abierto. Creemos firmemente en el código abierto y su poder, y esa es una de nuestras formas de retribuir al ecosistema.
En segundo lugar, estoy predicando sobre la reutilización del código. Lo menos que puedo hacer es brindar la opción para que otros desarrolladores reutilicen nuestro código para sus proyectos. Al reutilizar esta base de código, todos pueden crear fácilmente un minisitio de lista de tipo de categoría similar para los repositorios de GitHub.
Al reutilizar este código base, todos pueden crear fácilmente un minisitio de lista de tipo de categoría similar para los repositorios de GitHub.Tweet
Un escollo del marco de WordPress: control de versiones
WordPress no es un sistema operativo y no hay silos entre los diferentes complementos y temas. Además, el núcleo de WordPress no tiene un mecanismo de dependencia de bibliotecas. Esto significa que si dos complementos usan el mismo marco con diferentes versiones, puede desencadenar problemas de compatibilidad con versiones anteriores, generar errores y, en el peor de los casos, romper el sitio por completo.
Así que siga mi consejo amistoso: antes de elegir su marco, biblioteca o SDK favorito, debe asegurarse de que maneje el control de versiones.
Debe asegurarse de que su marco elegido maneje el control de versiones.Tweet
Cómo elegir los marcos correctos para su complemento o tema
Bueno, eso depende.
Si estuviera comenzando un nuevo complemento o tema de WordPress, vería lo siguiente (no necesariamente en este orden):
- Primero verificaría lo que hay en el mercado para comprender el conjunto diferente de características y funcionalidades que ofrecen los marcos.
- Definitivamente examinaría la popularidad de los proyectos. Los proyectos más populares probablemente tengan una comunidad más fuerte detrás de ellos, lo que significa que debería ser más fácil obtener ayuda/consejos. Probablemente también signifique que los errores principales del marco ya fueron eliminados.
- Pasaría más tiempo examinando nuevos marcos. A medida que avanzan las prácticas de desarrollo web. Además, el núcleo de WordPress está evolucionando, los nuevos marcos pueden ser más eficientes, aprovechar los nuevos mecanismos centrales: hacer más con menos código.
- Preguntaría a mis amigos desarrolladores de la comunidad de WordPress, personas en las que confío y que pueden brindarme comentarios sinceros basados en su experiencia.
¡Tengo un marco! ¿Cómo puedo agregarlo a includeWP?
¡Pan comido! El sitio web es un proyecto de código abierto en GitHub, simplemente bifurque el repositorio de includeWP, agregue su marco como <name>.php en la carpeta src/frameworks y envíe una solicitud de extracción.
Asegúrese de seguir algunas pautas simples:
- GPL: el marco debe tener una licencia GPL, por lo que los complementos y los temas que lo usan se pueden enumerar en WordPress.org (un marco que no es GPL hace que el complemento no sea GPL).
- GitHub: el marco debe tener un repositorio público en GitHub al que podamos vincularnos y obtener estadísticas.
- Cíñete al formato: Completa todos los mismos campos que los otros marcos en src/frameworks.
- WordPress.org (opcional): si el marco ya aparece como un complemento en WordPress.org, agregue una referencia al slug del complemento.
- Breve descripción: mantenga la descripción de la página de resumen breve y agradable.
¿Qué es lo siguiente?
Ahora es tu turno de correr la voz a la comunidad. Cuéntaselo amigos, compártelo en Twitter, protagoniza el proyecto en GitHub… ¡y reutiliza!