¿Por qué?
A veces, una solución fácil para alterar el comportamiento de WordPress en sí mismo o un complemento podría ser alterar los archivos del complemento o WordPress directamente. Cuando surge una idea así, la respuesta habitual es:
No hackear el núcleo.
¿Por qué generalmente es una mala idea cambiar los archivos principales?
¿Considerar?
A veces, sin embargo, las cosas que pueden ser críticas para un sitio son simplemente imposibles de hacer, de una manera agradable sin alterar los archivos principales. En una situación así, ¿qué debe tener en cuenta antes de seguir adelante y comenzar a hackear el núcleo?
¿Cómo?
Ha considerado todas las opciones, pero la única solución es hackear archivos principales. ¿Cómo deberías hacer esto? ¿De qué manera tener un núcleo alterado influirá en los flujos de trabajo, como la actualización?
admin_body_class
y loadmin_footer
que significa capturar toda la página . Acabo de probarlo y hay que buscar> 2 MB de contenido para la sección correspondiente, luego analizar y modificar antes de la salida. O bien, puedo agregar una línea de código a la parte derechamy-sites.php
y usar una herramienta de diferencias para aplicar el parche después de las actualizaciones (suponiendo que se haya modificado). Es realmente difícil argumentar en contra de modificar el núcleo en escenarios como este.Respuestas:
Si debe hackear el núcleo, considere hacerlo de una manera que lo haga extensible para otros.
Agregar un gancho de acción
Nueve de cada diez veces, podría hacer lo que quisiera si solo hubiera una
do_action
llamada adicional en un archivo específico. En ese caso, agregue la acción, documente y envíe un parche a través de Trac . Si hay una buena razón para su parche (es decir, no es el único que lo usaría), entonces probablemente pueda agregarlo al núcleo.A continuación, cree un complemento personalizado (¡no tiene que liberarlo / distribuirlo!) Que se vincule a este nuevo enlace y realice cualquier función que necesite que haga.
Refactorizar un archivo central
Otras veces, es posible que solo necesite un fragmento de código para comportarse de manera diferente. Pase una variable por referencia, por ejemplo, o devuelva un valor en lugar de repetirlo. Tómese un tiempo para sentarse y refactorizar el código para que haga lo que necesita que haga ... luego envíe un parche a través de Trac para que el resto de nosotros pueda beneficiarse de su trabajo.
¿Ves un tema en desarrollo aquí? Hackear el núcleo no es necesariamente un no-no ... es algo que la mayoría de los desarrolladores desalientan en gran medida a los nuevos usuarios o programadores novatos (si nos pregunta cómo hacer algo, le sugeriremos un complemento cada vez incluso antes) considerando sugerir que hackear el núcleo).
Hackear es la forma en que WordPress se desarrolla y evoluciona, pero es peligroso para alguien que solo está aprendiendo PHP o sin experiencia trabajando con archivos WP. Comience con un complemento antes de tocar el núcleo: si rompe un complemento, puede desinstalarlo rápidamente (eliminándolo a través de FTP si es necesario) ... pero si rompe el núcleo, pueden ocurrir cosas malas en su sitio y potencialmente en su base de datos también.
Pero si se encuentra en una situación en la que un hack de núcleo es inevitable, realice el cambio. Además, publique su cambio en una ubicación destacada (si su blog es muy visible, eso podría ser suficiente ... pero le sugiero a Trac porque así es como los cambios de la comunidad se llevan a la próxima versión). Su cambio podría ser la bala mágica que podría solucionar problemas en cientos de sitios diferentes ... así que contribuya a la comunidad que lo ayudó a construir su sitio.
Si el cambio se confirma, entonces su pirateo se convierte en parte del núcleo y no tendrá que preocuparse por ello en el futuro. Si no es así, al menos tiene documentación detallada sobre cómo volver a implementar el hack después de actualizar WP en 3 meses.
fuente
Bueno, eso es porque es una sugerencia para el primer nivel, usuarios sin experiencia. Esos piratas informáticos romperían su instalación, no pueden asegurarse de que sus cambios persistan en una actualización, etc.
Seguro que puedes hackear el núcleo, por ejemplo, usando un sistema de gestión de versiones como SVN. Le ayuda a mantener sus propios cambios en el código central en línea con las actualizaciones del proyecto. También ayuda a crear parches para Wordpress y enviarlos al proyecto.
Hackear es de hecho hacer que Wordpress evolucione.
Consideraciones
Si no desea instalar un SVN completo y aún sabe qué (algunos) archivos ha cambiado, puede usar más herramientas de bajo nivel como Diff / Merge (para win: WinMerge ) o editores con capacidades de comparación (p. Ej. Notepad ++ con Comparar Plugin ). En Linux, puede instalar fácilmente utilidades de línea de comandos que hacen lo mismo. El editor Geany viene con una buena integración de shell por cierto. .
Prefiero Eclipse PDT para los trabajos difíciles. Pero eso no es para la edición rápida o pirateo.
Por lo tanto, diría que si está utilizando las herramientas adecuadas y desea tener cuidado, piratear el núcleo es el camino a seguir. Si está pirateando algo que queda en algún otro servidor de usuarios de Noob (sí, Wordpress es bastante popular), solo proporcione un complemento que se pueda eliminar fácilmente si rompe algo.
fuente
Los problemas son:
Si deseas hacer esto, hazte la vida más fácil:
// PATCH START
y// PATCH END
)A veces esto es 100% inevitable, pero casi siempre puedo encontrar otra forma de lograr cosas, o alterar las especificaciones debido al costo probable del tiempo dedicado a hacer esto. Es solo una pesadilla de mantenimiento, y muchas personas optan por hackear el núcleo, en lugar de buscar la solución adecuada.
fuente