Los ganchos son proporcionados por WordPress para permitir que su plugin se 'enganche' al resto de WordPress; es decir, para llamar a funciones de su plugin en momentos específicos, y así poner en marcha su plugin. MemberMouse define su propio conjunto de ganchos que puede utilizar para 'engancharse' a MemberMouse y así poder llamar a funciones de su plugin cuando se produzcan eventos específicos en MemberMouse.
He aquí un ejemplo básico:
function memberAdded($data)
{
// realizar acción
}
add_action('mm_member_add', 'memberAdded');
En este ejemplo, utilizamos el botón 'add_action()para indicar que el método 'memberAdded()' debe ser llamado cuando MemberMouse ejecute una acción 'mm_member_add'. Para saber más sobre cómo trabajar con la API de acciones de WordPress leer este artículo.
Categorías de ganchos de WordPress
MemberMouse Referencia de acción
La siguiente tabla enumera todas las acciones de MemberMouse, una descripción de cuándo se ejecutan y qué datos se pasarán a cualquier función enganchada a la acción.
Acción | Descripción | Datos transmitidos |
mm_member_add | Esta acción se ejecuta cuando se añade un nuevo miembro a MemberMouse. | datos de los miembros |
mm_member_membership_change | Esta acción se ejecuta cuando se cambia el nivel de afiliación de un miembro. | datos de los miembros |
mm_member_status_change | Esta acción se ejecuta cuando cambia el estado de la cuenta de un afiliado. | datos de los miembros |
mm_member_account_update | Esta acción se ejecuta cuando se actualizan determinados datos de la cuenta de un afiliado. Esto incluye: nombre, apellidos, dirección de correo electrónico, nombre de usuario, número de teléfono, notas, dirección de facturación, dirección de envío, método de cálculo de días como afiliado y datos de campos personalizados. | datos de los miembros |
mm_member_delete | Esta acción se ejecuta cuando se elimina la cuenta de un miembro. | datos de los miembros |
mm_bundles_add | Esta acción se ejecuta cuando se añade un paquete a la cuenta de un miembro. | datos de los miembros, datos del paquete |
mm_bundles_status_change | Esta acción se ejecuta cuando cambia el estado de un paquete en la cuenta de un miembro. | datos de los miembros, datos del paquete |
mm_producto_compra | Esta acción se ejecuta cuando se envía un pedido, antes de su validación y pago. | datos de los miembros, datos del pedido |
mm_compra_completa | Esta acción se ejecuta cuando se completa una compra. Está disponible en MemberMouse 3.0.6 y versiones posteriores. | datos de los miembros, datos del pedido |
mm_pago_recibido | Esta acción se ejecuta cuando se recibe un pago. | datos de los miembros, datos del pedido |
mm_payment_rebill | Esta acción se ejecuta cuando se recibe un pago de refacturación. | datos de los miembros, datos del pedido |
mm_payment_rebill_declined | Esta acción se ejecuta cuando se rechaza un pago de refacturación. | datos de los miembros, datos del pedido |
mm_reembolso_emitido | Esta acción se ejecuta cuando se emite una devolución. | datos de los miembros, datos del pedido |
mm_commission_initial | Esta acción se ejecuta cuando se debe realizar el seguimiento de una comisión de afiliación inicial. | datos de afiliación |
mm_commission_rebill | Esta acción se ejecuta cuando se debe realizar el seguimiento de una comisión de afiliado refacturada. | datos de afiliación |
mm_commission_cancel | Esta acción se ejecuta cuando una comisión de afiliado debe ser cancelada. | datos de afiliación |
Atributos de datos por tipo
Todos los datos se pasan a las funciones como una matriz asociativa y se puede acceder a ellos de la siguiente manera:
$data["first_name"]
$data["last_name"]
$data["email"]
En las secciones siguientes se enumeran los atributos de datos disponibles para cada tipo.
Datos de los miembros
Atributo | Descripción |
member_id | El ID asignado al miembro por MemberMouse. |
registrado | La fecha en que el afiliado se registró en el formato AAAA-MM-DD HH:MM:SS. |
last_logged_in | La fecha en que el miembro se conectó por última vez en el formato AAAA-MM-DD HH:MM:SS. |
última_actualización | La fecha en que se actualizó por última vez la cuenta del miembro en el formato AAAA-MM-DD HH:MM:SS. |
días_como_miembro | El número de días que el miembro ha sido miembro. |
estado | El estado de la cuenta del miembro como un número entero: 1 = activa, 2 = cancelada, 3 = bloqueada, 4 = en pausa, 5 = vencida, 6 = pendiente de activación, 7 = error, 8 = caducada, 9 = pendiente de cancelación. |
nombre_estado | El estado de la cuenta del miembro como una cadena (es decir. activo, canceladoetc.). |
is_complimentary | Indica si la cuenta del usuario es gratuita o no. Será 'true' si la cuenta es de cortesía y 'false' si no lo es. |
nivel_de_afiliación | ID del nivel de afiliación asociado a la cuenta del afiliado. |
nombre_nivel_socio | Nombre del nivel de afiliación asociado a la cuenta del afiliado. |
nombre | Nombre de pila del afiliado. |
apellido | Apellido del afiliado. |
nombre de usuario | El nombre de usuario del miembro. |
correo electrónico | Dirección de correo electrónico del afiliado. |
teléfono | El número de teléfono del afiliado. |
cf_# | Muestra el valor del campo personalizado con ID #. Por ejemplo, si el ID del campo personalizado que almacena la fecha de nacimiento es 4, para mostrar la fecha de nacimiento del usuario se utilizará "cf_4". |
dirección_facturación | Dirección de facturación del afiliado. |
ciudad_facturación | La ciudad de facturación del socio. |
estado_de_facturación | Estado de facturación del afiliado. |
código_zip_facturación | El código postal de facturación del afiliado. |
país_de_facturación | País de facturación del afiliado. |
dirección_de_envío | Dirección de envío del afiliado. |
ciudad_de_envío | La ciudad de envío del miembro. |
estado_de_envío | Estado de envío del afiliado. |
código_zip_de_envío | El código postal de envío del afiliado. |
país_de_envío | País de envío del afiliado. |
Datos del paquete
Atributo | Descripción |
bundle_id | ID del paquete. |
nombre_paquete | El nombre del paquete. |
días_con_paquete | El número de días que el paquete ha estado activo en la cuenta del miembro. |
bundle_status | Estado del paquete: 1 = activo, 2 = cancelado, 3 = bloqueado, 4 = en pausa, 5 = vencido, 6 = pendiente de activación, 7 = error, 8 = vencido, 9 = pendiente de cancelación. |
bundle_is_complimentary | Indica si el paquete es complementario o no. Será "true" si el paquete es complementario y "false" si no lo es. |
nombre_estado_paquete | El estado del paquete como una cadena (es decir. activo, canceladoetc.). |
bundle_date_added | La fecha en que el paquete se añadió a la cuenta del miembro en el formato AAAA-MM-DD HH:MM:SS. |
bundle_last_updated | La fecha en que el paquete se actualizó por última vez en la cuenta del miembro en el formato AAAA-MM-DD HH:MM:SS. |
Datos del pedido
Atributo | Descripción |
número_pedido | El número de referencia asignado al pedido por MemberMouse. |
order_transaction_id | El ID de transacción asociado a la orden. Puede utilizarse como ID único para todos los pagos asociados a un pedido. Cuando un cliente adquiere una suscripción, cada pago de refacturación forma parte del mismo pedido, por lo que todos compartirán el mismo ID de pedido. Cada pago de refacturación tendrá un ID de transacción único. |
total_pedido | El total del pedido que es igual a (subtotal - descuento) + gastos de envío. |
subtotal_pedido | El subtotal del pedido. |
descuento_pedido | El descuento aplicado al pedido. |
pedido_envío | Gastos de envío aplicados al pedido. |
método_envío_pedido | El nombre del método de envío elegido por el cliente al realizar el pago. |
dirección_facturación_pedido | La dirección de facturación asociada al pedido. |
order_billing_city | La ciudad de facturación asociada al pedido. |
order_billing_state | El estado de facturación asociado al pedido. |
order_billing_zip_code | El código postal de facturación asociado al pedido. |
order_billing_country | El país de facturación asociado al pedido. |
dirección_envío_pedido | La dirección de envío asociada al pedido. |
ciudad_envío_pedido | La ciudad de envío asociada al pedido. |
estado_envío_pedido | El estado de envío asociado al pedido. |
código_zip_envío_pedido | El código postal de envío asociado al pedido. |
país_envío_pedido | El país de envío asociado al pedido. |
productos_pedidos | Matriz de productos asociados al pedido. Consulte el Datos del producto tabla siguiente para conocer los parámetros disponibles para cada producto. |
pedir_cupones | Una matriz de cupones asociados al pedido. Consulte el Datos del cupón tabla siguiente para conocer los parámetros disponibles para cada cupón. |
precios_pedidos | Matriz de prorrateos asociados a la orden. Véase el Datos de prorrateo tabla siguiente para conocer los parámetros disponibles para cada elemento de prorrateo. |
ID_afiliado_pedido | El ID de afiliado asociado a la orden. |
order_subaffiliate_id | El ID de subfilial asociado a la orden. |
dirección_ip_pedido | La dirección IP asociada a la orden. |
Datos de afiliación
Atributo | Descripción |
ID_afiliado_pedido | El ID de afiliado asociado a la orden. |
order_subaffiliate_id | El ID de subfilial asociado a la orden. |
member_id | El ID asignado al miembro por MemberMouse. |
número_pedido | El número único asociado al pedido concatenado con el ID de transacción asociado al pago (es decir, 1456-3462). Esto garantiza que el número de pedido proporcionado aquí sea único en todas las transacciones de refacturación asociadas al pedido. |
total_pedido | El total del pedido disponible para comisiones, que es igual al total del pedido menos los descuentos y los gastos de envío. |
dirección_ip_pedido | La dirección IP asociada a la orden. |
productos_pedidos | Matriz de productos asociados al pedido. Consulte el Datos del producto tabla siguiente para conocer los parámetros disponibles para cada producto. |
pedir_cupones | Una matriz de cupones asociados al pedido. Consulte el Datos del cupón tabla siguiente para conocer los parámetros disponibles para cada cupón. |
precios_pedidos | Matriz de prorrateos asociados a la orden. Véase el Datos de prorrateo tabla siguiente para conocer los parámetros disponibles para cada elemento de prorrateo. |
rebill_commission_flat_rate | Esto sólo se incluirá en los eventos de refacturación de comisiones. Basándose en el perfil de comisión aplicado al pedido, indica si hay una sobrecomisión de tarifa plana que debería tenerse en cuenta. |
rebill_commission_percent | Esto sólo se incluirá en los eventos de refacturación de comisiones. En función del perfil de comisión aplicado al pedido, indica si hay un porcentaje de comisión adicional que deba tenerse en cuenta. |
Datos del producto
Los datos de los productos se almacenan como una matriz de objetos codificados en JSON en el atributo 'order_products' y se incluyen con los Datos del pedido y los Datos del afiliado. Antes de interactuar con la matriz, asegúrese de decodificar JSON de la siguiente manera:
json_decode(stripslashes($data["order_products"]);
Este código de ejemplo asume que los datos fueron pasados a su script en una variable llamada '$data'. La siguiente tabla muestra los parámetros disponibles para cada elemento de la matriz 'order_products'.
Atributo | Descripción |
id | El ID del producto. |
nombre | El nombre del producto. |
sku | La SKU del producto. |
importe | El importe pagado por cada unidad del producto. |
cantidad | El número de este producto comprado. |
total | El precio total pagado equivale al importe * cantidad. |
is_recurring | Indica si este producto tiene una suscripción asociada o no. Los valores posibles son 'true' o 'false'. |
importe_recurrente | El importe pagado en cada periodo de facturación. |
período_facturación | Un número entero que representa la duración del periodo de facturación. Para determinar la duración completa del periodo de facturación, combínelo con rebill_frequency (es decir, 1 mes, 30 días, 2 semanas, etc.). |
frecuencia_de_facturación | Cadena que indica la unidad de medida utilizada para el periodo de facturación. Los valores posibles son días, semanas, meses o años. |
Datos del cupón
Los datos de los cupones se almacenan como una matriz de objetos codificados en JSON en el atributo 'order_coupons' y se incluyen con los Datos del pedido y los Datos del afiliado. Antes de interactuar con la matriz, asegúrese de decodificar JSON de la siguiente manera:
json_decode(stripslashes($data["cupones_pedido"]);
Este código de ejemplo asume que los datos fueron pasados a su script en una variable llamada '$data'. La siguiente tabla muestra los parámetros disponibles para cada elemento de la matriz "order_coupons".
Atributo | Descripción |
id | ID del cupón. |
nombre | El nombre del cupón. |
código | El código del cupón. |
Datos de prorrateo
Los datos de prorrateo se almacenan como una matriz de objetos codificados en JSON en el atributo 'order_prorations' y se incluyen con los Datos del pedido y los Datos del afiliado. Antes de interactuar con la matriz, asegúrese de decodificar JSON como se indica a continuación:
json_decode(stripslashes($data["order_prorations"]);
Este código de ejemplo asume que los datos fueron pasados a su script en una variable llamada '$data'. La siguiente tabla muestra los parámetros disponibles para cada elemento de la matriz 'order_prorations'.
Atributo | Descripción |
importe | Importe del prorrateo. |
descripción | La descripción asociada a la compra. |