LLMS_REST_Webhook::process_hook( mixed $args )
Processes information from the origination action hook
Description Description
Determines if the webhook should be delivered and whether or not it should be scheduled or delivered immediately.
Parameters Parameters
- $args
-
(mixed) (Required) Arguments from the hook.
Return Return
(int|false) Timestamp of the scheduled event when the webhook is successfully scheduled. false if the webhook should not be delivered or has already been delivered in the last 5 minutes.
Source Source
File: libraries/lifterlms-rest/includes/models/class-llms-rest-webhook.php
public function process_hook( ...$args ) { if ( ! $this->should_deliver( $args ) ) { return false; } // Mark this hook's first argument as processed to ensure it doesn't get processed again within the current request, // as it might happen with webhooks with multiple hookes defined in `LLMS_REST_Webhooks::get_hooks()`. $this->processed[] = $args[0]; /** * Disable background processing of webhooks by returning a falsy * * Note: disabling async processing may create delays for users of your site. * * @param bool $async Whether async processing is enabled or not. * @param LLMS_REST_Webhook $this Webhook object. * @param array $args Numeric array of arguments from the originating hook. */ if ( apply_filters( 'llms_rest_webhook_deliver_async', true, $this, $args ) ) { return $this->schedule( $args ); } return $this->deliver( $args ); }
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
1.0.0-beta.17 | Mark this hook's first argument as processed to ensure it doesn't get processed again within the current request. And don't rely anymore on the webhook's pending_delivery property to achieve the same goal. |
1.0.0-beta.1 | Introduced. |