Como solución para los diversos problemas especificados anteriormente: dificultad de mantenimiento del código, control de versiones, búsqueda de errores, tiene esta posibilidad ligeramente "klugey":
Cree funciones (nómbrelas cuidadosamente, de acuerdo con lo que hacen) en un archivo que siempre se incluye; si tiene un módulo personalizado que está escribiendo para el sitio, es un excelente lugar para colocar estas funciones. El php que ingrese es simplemente: return my_specialfunc($somevar);
- $somevar
aquí podría ser el objeto del nodo en el que se trabajó, o cualquier otra variable relevante aquí.
Creo que todavía quiero la flexibilidad, en algunos lugares, de llamar a mi propio código. Al usar esta técnica, mantener el código es fácil, ya que se trata simplemente de modificar la función en el archivo. La detección de errores es fácil ya que la función se mostrará en una traza inversa.
Tenga en cuenta, sin embargo, que esto no resuelve los posibles problemas de seguridad. Estos dependen en gran medida de la seguridad del núcleo de Drupal. En general, el código contenido en la base de datos es a menudo un gran obstáculo para la seguridad: las funcionalidades que utilizan el código contenido en la base de datos tienden a ser mucho más propensas a la explotación, y la seguridad a su alrededor debe ser más estricta. Sin embargo, Drupal en general ha sido bastante bueno para mantener la seguridad de estos problemas: han surgido y luego se han parcheado / resuelto rápidamente con nuevas versiones.