Estoy tratando de ampliar la funcionalidad de otro complemento. Necesito obtener datos de él en una matriz para usar de manera diferente al complemento original. (En este caso, plugins WPMUDev Categorías y Listados). ¿Hay algo en el Codex? ¿Cómo puedo crear un complemento que pueda usar otras funciones de complementos? ¿Puedo ampliarlos y construir las funciones de los nodos principales? No estoy seguro de si estos complementos están usando clases o simplemente funciones directas.
Solo estoy tratando de obtener datos del complemento en un widget de barra lateral (en un elemento de opción de formulario), pero eventualmente lo usaré también para el área de contenido mediante el uso de códigos cortos personalizados. Por ahora solo necesito un lugar para comenzar.
Respuestas:
Sí, es posible crear un complemento que amplíe otro complemento. Aquí hay algunas ideas sobre cómo podría hacerlo:
Un complemento puede configurar su propia acción y enganchar filtros (usando las funciones
do_action
yapply_filter
) al igual que lo hace el núcleo de WordPress. Si el complemento al que se dirige hace esto, puede usar estos ganchos para cambiar la funcionalidad.Si un complemento utiliza una estructura orientada a objetos, puede ampliar las clases y construir sobre el complemento original.
Puede leer los datos almacenados en la base de datos por el complemento original y usarlos en su código de complemento.
Puede llamar a cualquier función desde el complemento original que desee, después de haber comprobado que el complemento está activo y cargado (consulte a continuación). Solo tenga en cuenta los efectos que pueda tener la función además del valor devuelto.
Deberá verificar si ese complemento original está activado o no. Podrías usar la
is_plugin_active
función; sin embargo, esto solo funciona en las páginas de administración. Alternativamente, puede usarfunction_exists
oclass_exists
para verificar si una función o clase particular del complemento original está disponible, lo que le indicaría que se está ejecutando.Recuerde que cada vez que se actualiza el complemento original, debe probar su complemento con la nueva versión para buscar algo nuevo que pueda entrar en conflicto con su complemento.
fuente