Skip to content

Hooks Reference (Pro)

Learnomy overviewFree + ProGet Learnomy →

Every action and filter Learnomy Pro fires that Free does not, grouped by extension. Hooks Pro shares with Free are on the Hooks Reference.

172 hooks: 92 filters and 80 actions. This page is generated from the code by bin/gen-hooks-reference.php; do not edit it by hand.

Arguments are shown as the call passes them, after the hook name. For a filter the first argument is the value you return. “Fired in” is the first place the hook is called; a number in brackets means it is called from that many places.

Hook Type Arguments What it is for Fired in
learnomy_pro_aq_conditions_runtime_ready filter false Filters whether conditional question rules are honoured at attempt time, which gates saving them over REST. includes/extensions/advanced-quizzes/class-extension.php:1345
Hook Type Arguments What it is for Fired in
learnomy_pro_ai_generate_text filter null, $prompt, $action Short-circuit AI text generation. Return a non-null string to bypass. includes/extensions/ai-authoring/class-ai-author-service.php:91
learnomy_pro_ai_overage action $user_id, $kind, $used, $limit Fires when an instructor generates past an AI limit under ‘notify’. includes/extensions/ai-authoring/class-ai-quota-gate.php:169
learnomy_pro_ai_request_timeout filter 60.0 Filter the HTTP timeout (seconds) for Learnomy AI generation requests. includes/extensions/ai-authoring/class-ai-author-service.php:62
Hook Type Arguments What it is for Fired in
learnomy_pro_analytics_ai_slot action $period Render seam for an AI summary of this report. includes/extensions/analytics/views/dashboard.php:108
learnomy_pro_analytics_recompute_cap filter self::RECOMPUTE_CAP Filters the cap on entities recomputed in one daily analytics run. includes/extensions/analytics/class-analytics-service.php:225
learnomy_pro_report_can_read filter $ids, $user_id Grant read access to courses the viewer does not teach. includes/extensions/analytics/class-report-query.php:175
Hook Type Arguments What it is for Fired in
learnomy_assignment_grading_response_controls action $sub, $grading Fires inside the assignment grading form so an extension can render extra grading controls, such as rubric scoring. includes/extensions/assignments/views/admin-assignments.php:312
learnomy_pro_assignment_created action $id, $insert Fires after an assignment definition is created. includes/extensions/assignments/class-assignment-service.php:236
learnomy_pro_assignment_deleted action $id Fires after an assignment and its submissions are deleted. includes/extensions/assignments/class-assignment-service.php:313
learnomy_pro_assignment_graded action $submission_id, $score, $submission Fires after a submission is graded. includes/extensions/assignments/class-assignment-service.php:412
learnomy_pro_assignment_resubmit_requested action $submission_id, $feedback Fires after an instructor asks a learner to resubmit. includes/extensions/assignments/class-assignment-service.php:438
learnomy_pro_assignment_submitted action $id, $assignment_id, $user_id Fires after a learner submits an assignment. includes/extensions/assignments/class-assignment-service.php:359
learnomy_pro_assignment_updated action $id, $prepared Fires after an assignment definition is updated. includes/extensions/assignments/class-assignment-service.php:286
Hook Type Arguments What it is for Fired in
learnomy_pro_credly_revoke_async filter true Filters whether revoking a Credly badge is queued in the background. includes/extensions/certificates-pro/class-extension.php:448
learnomy_pro_credly_sync_async filter true Filters whether syncing Credly badges is queued in the background. includes/extensions/certificates-pro/class-extension.php:1020
Hook Type Arguments What it is for Fired in
learnomy_pro_cli_commands action Fires after Pro CLI commands are registered. Other add-ons can hook. includes/cli/class-cli.php:205
learnomy_pro_demo_modules filter $default Filters the demo-data modules the playground CLI can seed and wipe. includes/cli/class-playground.php:169
Hook Type Arguments What it is for Fired in
learnomy_admin_cohort_detail_panels action $cohort Fires below the cohort tab panels on the cohort admin screen. includes/extensions/cohorts/class-extension.php:1205
learnomy_cohorts_slug filter 'cohorts' Filters the URL slug for the public cohort pages. includes/extensions/cohorts/class-extension.php:1688
learnomy_pro_cohort_at_risk_cadence_days filter self::AT_RISK_CADENCE_DAYS, $cohort Filters how often, in days, at-risk nudges repeat for a cohort. includes/extensions/cohorts/class-cohort-notifier.php:192
learnomy_pro_cohort_at_risk_grace filter self::AT_RISK_PROGRESS_GRACE, $cohort How far a cohort member’s progress may trail the cohort’s pace before they count as at risk. includes/extensions/cohorts/class-cohort-service.php:96
learnomy_pro_cohort_at_risk_inactive_days filter self::AT_RISK_INACTIVE_DAYS, $cohort Filters the days of inactivity after which a cohort member counts as at risk. includes/extensions/cohorts/class-cohort-service.php:103
learnomy_pro_cohort_authoritative_sources filter array( 'purchase', 'manual', 'webhook', 'membership', 'space' ), $course_id, $user_id Filters the enrollment sources that are let through when a course requires a cohort. includes/extensions/cohorts/class-extension.php:1409
learnomy_pro_cohort_autoplace_on_purchase filter true, $course_id, $user_id, $source Filters whether a user enrolling from an authoritative source is auto-placed into the course’s sole open cohort. includes/extensions/cohorts/class-extension.php:1425
learnomy_pro_cohort_created action $id, $row Fires after a cohort definition is created. includes/extensions/cohorts/class-cohort-service.php:341
learnomy_pro_cohort_deleted action $id Fires after a cohort is deleted. includes/extensions/cohorts/class-cohort-service.php:446
learnomy_pro_cohort_email_body filter $message, $type, $cohort Filters the body message of a cohort lifecycle notification. includes/extensions/cohorts/class-cohort-notifier.php:270 (2)
learnomy_pro_cohort_email_enabled filter true, $type, $cohort Filters whether cohort emails of a given type may be sent. includes/extensions/cohorts/class-cohort-notifier.php:349
learnomy_pro_cohort_email_subject filter $title, $type, $cohort Filters the subject of a cohort lifecycle notification. includes/extensions/cohorts/class-cohort-notifier.php:262 (2)
learnomy_pro_cohort_member_actions action $cohort, $course Fires inside the enrolled-member card’s action row on a. includes/extensions/cohorts/views/single-cohort.php:401
learnomy_pro_cohort_member_added action $cohort_id, $user_id Fires after a member is added to a cohort. includes/extensions/cohorts/class-cohort-service.php:544
learnomy_pro_cohort_member_removed action $cohort_id, $user_id Fires after a member is removed from a cohort. includes/extensions/cohorts/class-cohort-service.php:560
learnomy_pro_cohort_progress_max_rows filter self::PROGRESS_MAX_ROWS, $cohort_id Filters the maximum number of members enriched with progress in a cohort progress view. includes/extensions/cohorts/class-cohort-service.php:747
learnomy_pro_cohort_reminder_lead_days filter self::LEAD_DAYS, $cohort Filters the lead time, in days, for cohort reminder emails. includes/extensions/cohorts/class-cohort-notifier.php:90
learnomy_pro_cohort_updated action $id, $update Fires after a cohort is updated. includes/extensions/cohorts/class-cohort-service.php:398
Hook Type Arguments What it is for Fired in
learnomy_pro_default_drip_rule filter null, $lesson_id, $course_id Allow other code to set a default drip rule when a lesson is created. includes/extensions/content-drip/class-extension.php:884
Hook Type Arguments What it is for Fired in
learnomy_pro_completing_statuses filter array( 'completed', 'passed' ) Filters the content-standard statuses that count as completed for Free progress. includes/class-content-standards-bridge.php:40
learnomy_pro_content_standard_completed action $user_id, $lesson_id, $status, $context Fires after a content-standard module (SCORM/xAPI/…) completes a Free. includes/class-content-standards-bridge.php:88
learnomy_pro_delete_data_on_uninstall filter $delete_on_uninstall Allow integrations (e.g. a CLI force-delete or a reset command) to override. uninstall.php:42
learnomy_pro_edd_item_id filter 1662700 Filters the EDD product ID for Learnomy Pro, so staging or dev can override it. learnomy-pro.php:126
Hook Type Arguments What it is for Fired in
learnomy_pro_elementor_enrol_safety_net filter true, $course, $lrn_el_cta Whether to append the enrol bar to an Elementor template that offers no. includes/extensions/elementor/templates/single-course-elementor.php:139
Hook Type Arguments What it is for Fired in
learnomy_builder_create_slug filter 'create-course' Filters the URL segment for the create-course page under the instructor base. includes/extensions/frontend-builder/class-extension.php:211
learnomy_builder_edit_slug filter 'edit-course' Filters the URL segment for the edit-course page under the instructor base. includes/extensions/frontend-builder/class-extension.php:224
learnomy_instructor_slug filter 'instructor' Filters the instructor base URL segment, shared with Free. includes/extensions/frontend-builder/class-extension.php:198
learnomy_pro_builder_lesson_content_panel action Render seam for a Pro-registered content-type’s panel inside the. includes/extensions/frontend-builder/templates/partials/lesson-editor.php:202
learnomy_pro_course_builder_credly_slot action (int) $course_edit_id Slot for Pro extensions to add a course-settings control next. includes/extensions/frontend-builder/templates/course-editor.php:1470
learnomy_pro_course_builder_settings_slot action (int) $course_edit_id Course-settings slot for any integration, in the frontend builder. includes/extensions/frontend-builder/templates/course-editor.php:1491
learnomy_pro_lesson_revision_restored action $lesson_id, $revision_id, $user_id Fires after a lesson is restored to an earlier revision. includes/extensions/frontend-builder/rest/class-revisions-controller.php:277
learnomy_pro_quiz_advanced_settings action isset( $lrn_advanced_quiz_id ) ? (int) $lrn_advanced_quiz_id : 0 Pro extension hook - advanced-quizzes injects its Pool /. includes/extensions/frontend-builder/templates/partials/quiz-editor.php:807 (2)
Hook Type Arguments What it is for Fired in
learnomy_gradebook_cap filter 'manage_options' Filters the capability required to use the Gradebook admin. includes/extensions/gradebook/class-gradebook-admin.php:51
Hook Type Arguments What it is for Fired in
learnomy_pro_learning_path_completed action $certificate_id, $user_id, $path_id Fires when a learning path certificate is issued. includes/extensions/learning-paths/class-extension.php:1176
learnomy_pro_learning_path_enrolled action $enrollment_id, $user_id, $path_id, $source Fires when a student enrolls in a learning path. includes/extensions/learning-paths/class-path-service.php:335
learnomy_pro_learning_path_purchased action $txn_id, $user_id, $path_id, (float) ( $path->price ?? 0 ), $gateway, $enrollment_id Fires after a paid learning-path enrollment lands. Downstream:. includes/extensions/learning-paths/class-extension.php:1012
learnomy_pro_path_draft_retention_days filter 30 Days a never-touched draft path is kept before it is swept. includes/extensions/learning-paths/class-extension.php:1049
learnomy_pro_paths_per_page filter 12 Paths shown per catalogue page. includes/extensions/learning-paths/class-paths-catalog-view-data.php:80
Hook Type Arguments What it is for Fired in
learnomy_lti_link_by_email filter true, $claims, $platform Filters whether an LTI launch may link to an existing account by matching email. includes/extensions/lti/class-launch.php:230
learnomy_lti_new_user_role filter 'subscriber', $claims, $platform Filters the role given to a user created by an LTI launch. includes/extensions/lti/class-launch.php:271
learnomy_pro_lti_force_keygen_failure filter false Filters whether LTI key generation should be treated as failed. includes/extensions/lti/class-jwks.php:58
learnomy_pro_lti_link_refused action (int) $by_email->ID, (string) $platform->issuer, $email_unverified ? 'email_unverified'... Fires when an LTI launch matches an existing account by email but refuses to link to it. includes/extensions/lti/class-launch.php:258
Hook Type Arguments What it is for Fired in
learnomy_pro_allow_pause filter true, $sub Filters whether a subscription may be paused. includes/extensions/membership-pro/class-pause-service.php:231
learnomy_pro_gift_issued action $codes, $plan_id, $buyer_id Fires after gift codes are generated for a plan. includes/extensions/membership-pro/class-gift-service.php:114
learnomy_pro_gift_redeemed action $code, $user_id, $sub_id Fires after a gift code is redeemed. includes/extensions/membership-pro/class-gift-service.php:269
learnomy_pro_membership_space_access filter $access, $user_id, $space_ids Let B.8 (Spaces integration) decide whether the user actually. includes/extensions/membership-pro/class-extension.php:682
learnomy_pro_plan_change_failed action (int) $change->subscription_id, (int) $change->to_plan_id, $change_id, 'subscription_mi... Fires when a scheduled plan change fails to apply. includes/extensions/membership-pro/class-plan-change-service.php:440 (3)
learnomy_pro_plan_change_queued action (int) $sub->id, (int) $sub->plan_id, (int) $new_plan->id, (int) $change_id, $effective_... Fires once a plan change has been queued for execution at the. includes/extensions/membership-pro/class-plan-change-service.php:385
learnomy_pro_plan_changed action $sub_id, (int) $sub->plan_id, $new_plan_id, $change_id, $quote Fires after an immediate plan change completes. includes/extensions/membership-pro/class-plan-change-service.php:272 (2)
learnomy_pro_plan_changed_at_provider action (int) $sub->id, (int) $sub->plan_id, (int) $new_plan->id, $provider_ref, $change_id Fires after a scheduled plan change has been applied at the. includes/extensions/membership-pro/class-plan-change-service.php:566
learnomy_pro_proration_provider filter $provider, $sub Filters the proration provider used to price and apply a plan change. includes/extensions/membership-pro/class-proration-service.php:228
learnomy_pro_refund_issued action $refund_txn_id, $transaction_id, $refund_amount, $reason Fires after a refund is issued for a transaction. includes/extensions/membership-pro/class-refund-service.php:147
learnomy_pro_stripe_charge_refunded action $resource Fires when Stripe reports a refunded charge. includes/extensions/membership-pro/class-extension.php:785
learnomy_pro_stripe_invoice_succeeded action (int) $sub->id, $provider_sub_id Fires once Pro has acknowledged a Stripe invoice success. Sites. includes/extensions/membership-pro/class-extension.php:860
Hook Type Arguments What it is for Fired in
learnomy_qti_import_cap filter 'learnomy_manage_own_courses' Filters the capability required to import QTI packages. includes/extensions/qti/class-extension.php:89 (2)
learnomy_qti_interaction_mappers filter $map, $this Filters the map from QTI interaction types to question builder callables. includes/extensions/qti/class-question-builder.php:130
learnomy_qti_max_package_mb filter 50 Filters the maximum QTI package size, in megabytes. includes/extensions/qti/class-package-importer.php:40
Hook Type Arguments What it is for Fired in
learnomy_scorm_cmi_saved action $user_id, $lesson_id, $state Fires after a learner’s SCORM CMI state is saved. The Content-Standards. includes/extensions/scorm/rest/class-controller.php:300
learnomy_scorm_max_package_mb filter 100 Filters the maximum SCORM package size, in megabytes. includes/extensions/scorm/class-package-importer.php:78 (2)
learnomy_scorm_report_cap filter 'manage_options' Filters the capability required to view the SCORM tracking report. includes/extensions/scorm/class-extension.php:221
Hook Type Arguments What it is for Fired in
learnomy_admin_space_detail_panels action $space, $lrn_active_tab Fires at the end of the admin space detail screen so an extension can render extra panels. includes/extensions/spaces/views/admin-space-detail.php:523
learnomy_admin_space_detail_tabs filter $lrn_tabs, $space Filter the Learnomy Space-detail tabs. Integrations (e.g. a BuddyNext. includes/extensions/spaces/views/admin-space-detail.php:106
learnomy_pro_list_spaces filter Space::list_spaces( $filters, $per_page, $offset ), $filters Filter the list of spaces returned by a query. Extensions can. includes/extensions/spaces/class-space-service.php:409
learnomy_pro_manage_space_view_data filter $resolved, $space Filter the full view-data map handed to manage-space.php. includes/extensions/spaces/view-data/class-manage-space-view-data.php:322
learnomy_pro_my_spaces_view_data filter $resolved, $user_id Filter the full view-data handed to my-spaces.php. Extensions. includes/extensions/spaces/view-data/class-my-spaces-view-data.php:67
learnomy_pro_signup_picker_enabled filter true Site-wide off switch for the sign-up picker. includes/extensions/spaces/class-signup-picker.php:112
learnomy_pro_signup_picker_spaces filter $out Filter the spaces offered on the sign-up form. includes/extensions/spaces/class-signup-picker.php:158
learnomy_pro_space filter Space::find( $id ), $id Filter a single space row resolved by id. Extensions can attach. includes/extensions/spaces/class-space-service.php:378
learnomy_pro_space_before_member_purge action $id, $lrn_granted_courses Fires while the roster and course assignments are both still. includes/extensions/spaces/class-space-service.php:349
learnomy_pro_space_by_slug filter Space::find_by_slug( $slug ), $slug Filter a single space row resolved by slug. Mirrors. includes/extensions/spaces/class-space-service.php:389
learnomy_pro_space_can_add_member filter true, $space_id, $user_id, $role Veto a member-add before the DB write. Default true; return false. includes/extensions/spaces/class-space-service.php:614
learnomy_pro_space_can_assign_course filter true, $space_id, $course_id Veto a course assignment before the DB write. Return false to. includes/extensions/spaces/class-space-service.php:439
learnomy_pro_space_can_manage filter $is_admin || $is_owner, $space, $user_id Filter the can-manage decision for /spaces/{slug}/manage/. includes/extensions/spaces/view-data/class-manage-space-view-data.php:59 (5)
learnomy_pro_space_can_remove_member filter true, $space_id, $user_id Veto a member removal. Default true. Owner-self-removal block. includes/extensions/spaces/class-space-service.php:672
learnomy_pro_space_can_suspend_member filter true, $space_id, $user_id Veto a suspension. Default true. includes/extensions/spaces/class-space-service.php:719
learnomy_pro_space_course_assigned action $space_id, $course_id Fires after a course is assigned to a space. includes/extensions/spaces/class-space-service.php:450
learnomy_pro_space_course_removed action $space_id, $course_id Fires after a course is removed from a space. includes/extensions/spaces/class-space-service.php:464
learnomy_pro_space_course_scope_changed action $space_id, $course_id, $scope, $previous A space course’s access scope changed. Spaces uses this to enroll. includes/extensions/spaces/class-space-service.php:504
learnomy_pro_space_courses filter $courses, $space_id Filter the courses assigned to a space. Extensions can reorder,. includes/extensions/spaces/class-space-service.php:584
learnomy_pro_space_create_data filter $row, $data Filter the row about to be inserted. Extensions can stamp extra. includes/extensions/spaces/class-space-service.php:92
learnomy_pro_space_created action $id, $data Fires after a space is created. includes/extensions/spaces/class-space-service.php:103
learnomy_pro_space_deleted action $id Fires after a space is deleted. includes/extensions/spaces/class-space-service.php:363
learnomy_pro_space_enroll_fanout_batch filter self::ENROLL_FANOUT_BATCH, $space_id, $course_id Filter the per-page size of the space auto-enroll fan-out. Lower it. includes/extensions/spaces/class-extension.php:3218 (5)
learnomy_pro_space_expiry_batch filter 100 Rows processed per page of the space-subscription expiry sweep. includes/extensions/spaces/class-extension.php:4984
learnomy_pro_space_expiry_grace_days filter 7 Days past the paid period before an unpaid space is deactivated. includes/extensions/spaces/models/class-space-subscription.php:163
learnomy_pro_space_expiry_max_iterations filter 50 Hard ceiling on how many pages a single sweep tick may run. includes/extensions/spaces/class-extension.php:5003
learnomy_pro_space_front_header_end action $space, $is_member Fires at the end of the space header ROW (a flex container). Integrations. includes/extensions/spaces/views/single-space.php:428
learnomy_pro_space_group_course_assigned action $group_id, $course_id, (int) $group->space_id Fires after a course is assigned to a space group. includes/extensions/spaces/class-space-group-service.php:371
learnomy_pro_space_group_course_removed action $group_id, $course_id, (int) $group->space_id Fires after a course is removed from a space group. includes/extensions/spaces/class-space-group-service.php:397
learnomy_pro_space_group_created action $id, $space_id Fires after a Space group is created. includes/extensions/spaces/class-space-group-service.php:63
learnomy_pro_space_group_deleted action $group_id, $space_id Fires after a space group is deleted. includes/extensions/spaces/class-space-group-service.php:144
learnomy_pro_space_group_manager_assigned action $group_id, $user_id, (int) $group->space_id Fires after a manager is assigned to a space group. includes/extensions/spaces/class-space-group-service.php:327
learnomy_pro_space_group_manager_removed action $group_id, $user_id, (int) $group->space_id Fires after a manager is removed from a space group. includes/extensions/spaces/class-space-group-service.php:344
learnomy_pro_space_group_member_added action $group_id, $user_id, (int) $group->space_id Fires after a member is added to a space group. includes/extensions/spaces/class-space-group-service.php:173
learnomy_pro_space_group_member_removed action $group_id, $user_id, (int) $group->space_id Fires after a member is removed from a space group. includes/extensions/spaces/class-space-group-service.php:201
learnomy_pro_space_group_updated action $group_id, (int) $group->space_id Fires after a space group is updated. includes/extensions/spaces/class-space-group-service.php:101
learnomy_pro_space_kpis filter self::compute_kpis( $space_id, $visible_member_ids ), $space, $members Filter the computed KPI summary (members / active_7d /. includes/extensions/spaces/view-data/class-manage-space-view-data.php:242
learnomy_pro_space_member_added action $space_id, $user_id, $role Fires after a member is added to a space. includes/extensions/spaces/class-space-service.php:656
learnomy_pro_space_member_columns filter $lrn_member_columns, (int) ( $space->id ?? 0 ) Filters the columns of the space owner’s members table. includes/extensions/spaces/views/dashboard-widgets/space-owner-members.php:151
learnomy_pro_space_member_removed action $space_id, $user_id Fires after a member is removed from a space. includes/extensions/spaces/class-space-service.php:683
learnomy_pro_space_member_resumed action $space_id, $user_id Fires after a membership is restored. The Extension listens and. includes/extensions/spaces/class-space-service.php:773
learnomy_pro_space_member_role filter $role, $space_id, $user_id Filter the role string before write. Default ‘student’; the. includes/extensions/spaces/class-space-service.php:627
learnomy_pro_space_member_role_changed action $space_id, $user_id, $role Fires after a space member’s role changes (e.g. promoted to. includes/extensions/spaces/rest/class-controller.php:3248
learnomy_pro_space_member_suspended action $space_id, $user_id Fires after a membership is suspended. The Extension listens and. includes/extensions/spaces/class-space-service.php:742
learnomy_pro_space_members filter Space_Member::members_for_space( $space_id, $filters, $limit, $offset ), $space_id, $fi... Filter the members list returned for a space. Extensions can. includes/extensions/spaces/class-space-service.php:787
learnomy_pro_space_option filter (bool) self::setting( $space, $key, $default ), $key, $space Filter one resolved space option. includes/extensions/spaces/models/class-space.php:692
learnomy_pro_space_option_schema filter $schema Filter the per-space option schema. includes/extensions/spaces/models/class-space.php:606
learnomy_pro_space_owner_can_assign_course filter $allowed, $space_id, $course_id, $user_id Filter whether a non-admin space owner/manager may add this. includes/extensions/spaces/rest/class-controller.php:1889
learnomy_pro_space_plans_contact_email filter (string) get_option( 'admin_email' ) Filters the contact email used by the plans page contact-to-buy fallback when no gateway is configured. includes/extensions/spaces/view-data/class-plans-public-view-data.php:51
learnomy_pro_space_plans_contact_url filter '' Filters the contact page URL used by the plans page contact-to-buy fallback. includes/extensions/spaces/view-data/class-plans-public-view-data.php:60
learnomy_pro_space_provisioned action $space_id, $user_id, $plan, $txn_id Fires after a space is auto-provisioned from a Space_Plan. includes/extensions/spaces/class-extension.php:4435
learnomy_pro_space_request_created action (int) $id, $space_id, $user_id, $type, $args Fires after a space self-service request is created. The notifier. includes/extensions/spaces/class-space-service.php:1315
learnomy_pro_space_request_declined action $request_id, (int) $req->space_id, $req->type, (int) $req->requested_by, $req Fires after a request is declined. includes/extensions/spaces/class-space-service.php:1439
learnomy_pro_space_request_resolved action $request_id, (int) $req->space_id, $req->type, (int) $req->requested_by, $req Fires after a request is resolved. Notifier emails the requester. includes/extensions/spaces/class-space-service.php:1407
learnomy_pro_space_roster_export_page_size filter 500, $space_id Filter the roster-export page size. The whole roster still exports;. includes/extensions/spaces/rest/class-controller.php:2997
learnomy_pro_space_seat_pack_cta_limit filter 10 Filter how many active seat packs the upgrade CTA row offers. includes/extensions/spaces/models/class-space-seat-pack.php:53
learnomy_pro_space_seats_added action $space_id, $user_id, $seats_added, $new_limit, $pack, $txn_id Fires after a seat pack is added to a space. Notifier listens. includes/extensions/spaces/class-extension.php:4535
learnomy_pro_space_status_changed action $id, (string) $update['status'], $previous_status includes/extensions/spaces/class-space-service.php:272
learnomy_pro_space_status_fanout_batch filter self::ENROLL_FANOUT_BATCH, $space_id Filter the per-page size of the association freeze sweep. includes/extensions/spaces/class-extension.php:3670
learnomy_pro_space_subscription_cancelled action (int) $sub->space_id, (int) $sub->id, $stripe_sub Fires when a recurring space is cancelled. Notifier listens. includes/extensions/spaces/class-extension.php:4811
learnomy_pro_space_subscription_expired action (int) $sub->space_id, (int) $sub->id Fires when a space subscription truly ends. Notifier. includes/extensions/spaces/class-extension.php:5034
learnomy_pro_space_subscription_past_due action (int) $sub->space_id, (int) $sub->id, $invoice Fires when a recurring space payment fails. Notifier listens. includes/extensions/spaces/class-extension.php:4792
learnomy_pro_space_subscription_renewed action (int) $sub->space_id, (int) $sub->id, $invoice Fires after a space subscription renewal extends the period. includes/extensions/spaces/class-extension.php:4717
learnomy_pro_space_trial_batch filter 100 Rows converted per page of the trial sweep. includes/extensions/spaces/class-extension.php:4871
learnomy_pro_space_trial_ended action (int) $sub->space_id, $subscription_id Fires when a space trial converts to a paid subscription. includes/extensions/spaces/class-extension.php:4852
learnomy_pro_space_trial_max_iterations filter 50 Hard ceiling on pages per trial sweep tick. Runaway guard only. includes/extensions/spaces/class-extension.php:4883
learnomy_pro_space_update_data filter $update, $id, $data Filter the partial-update payload right before the DB write. includes/extensions/spaces/class-space-service.php:231
learnomy_pro_space_updated action $id, $update Fires after a space is updated. includes/extensions/spaces/class-space-service.php:255
learnomy_pro_space_writable_settings filter $is_admin ? array_merge( $owner_settable, $admin_settable ) : $owner_settable, $is_admi... Boolean space settings writable through this route. includes/extensions/spaces/rest/class-controller.php:1652
learnomy_pro_spaces_email_body filter $message, $kind, $space, $email Same as subject, for the body. includes/extensions/spaces/class-notifier.php:1407
learnomy_pro_spaces_email_subject filter $subject, $kind, $space, $email Filter the email subject for this specific Spaces notification. includes/extensions/spaces/class-notifier.php:1405
learnomy_pro_spaces_fanout_batch_size filter 100 Filters how many recipients each Spaces notification fan-out batch handles. includes/extensions/spaces/class-notifier.php:1451
learnomy_pro_spaces_index_redirect filter $target Filter the destination of the bare /learning-spaces/ index redirect. includes/extensions/spaces/class-extension.php:2370
learnomy_spaces_label filter \Learnomy\entity_label( 'space', 'plural' ) Filters the plural display label for Learning Spaces. includes/extensions/spaces/class-extension.php:2089
learnomy_spaces_my_label filter /* translators: %s: the site's name for Learnomy Spaces, e.g. "Learning Spaces". */ spr... Filters the member-facing “My …” label for Learning Spaces. includes/extensions/spaces/class-extension.php:2103
learnomy_spaces_slug filter 'learning-spaces' Filters the URL slug for the public Learning Spaces pages. includes/extensions/spaces/class-extension.php:2050
Hook Type Arguments What it is for Fired in
learnomy_payout_reversal_failed action (int) $paid_payout->id, $reversal->get_error_message(), $debt_id Fires when reversing a paid payout after a refund fails. includes/extensions/stripe-connect/class-refund-handler.php:166
learnomy_payout_reversed action (int) $paid_payout->id, $instructor_id, $owed Fires after a paid payout is reversed in response to a refund. includes/extensions/stripe-connect/class-refund-handler.php:207
learnomy_pro_payouts_async filter true Filters whether instructor payouts are settled in the background. includes/extensions/stripe-connect/class-connect-service.php:579
learnomy_pro_stripe_transfer_event action $type, $transfer->id, $update Fires after a Stripe transfer webhook event has updated the payout record. includes/extensions/stripe-connect/class-extension.php:400
learnomy_stripe_account_connected action $instructor_id, $body['stripe_user_id'] Fires after an instructor connects a Stripe account. includes/extensions/stripe-connect/class-connect-service.php:299
learnomy_stripe_connect_return_url filter $url, $user_id, $outcome Filters where an instructor lands after Stripe Connect onboarding. includes/extensions/stripe-connect/class-extension.php:798
learnomy_stripe_transfer_created action $instructor_id, $transfer_id, $amount, $currency Fires after a Stripe transfer to an instructor is created and recorded. includes/extensions/stripe-connect/class-connect-service.php:510
learnomy_withdrawal_failed action $withdrawal_id, $transfer->get_error_message() Fires when the Stripe transfer for a withdrawal fails. includes/extensions/stripe-connect/class-extension.php:537
learnomy_withdrawal_paid action $withdrawal_id, $transfer['stripe_transfer_id'] Fires after the Stripe transfer for a withdrawal succeeds. includes/extensions/stripe-connect/class-extension.php:547
Hook Type Arguments What it is for Fired in
learnomy_pro_milestone_earned action $user_id, $milestone_id, $source Fires when a learner earns a milestone. Consumers: notifications,. includes/extensions/user-journey/class-award-service.php:80
learnomy_pro_milestone_revoked action $user_id, $milestone_id Fires when a milestone grant is removed by an admin. includes/extensions/user-journey/class-award-service.php:99
learnomy_pro_milestone_rule_types filter null, $rule, $user_id Let extensions evaluate custom rule types. Return true/false to. includes/extensions/user-journey/class-award-service.php:176
Hook Type Arguments What it is for Fired in
learnomy_pro_webhook_deliveries_per_run filter self::PER_RUN Filters how many webhook deliveries may be sent per run before the rest are deferred. includes/extensions/webhooks-pro/class-dispatcher.php:173
learnomy_pro_webhook_delivery_retention_days filter 30 Days of webhook delivery-log history to keep. Older rows are purged. includes/extensions/webhooks-pro/class-dispatcher.php:391
learnomy_pro_webhooks_event_slugs filter $defaults Filter the action → slug map used to fan webhook events out. includes/extensions/webhooks-pro/class-extension.php:541
Hook Type Arguments What it is for Fired in
learnomy_pro_wpf_gate_copy filter $copy Filter the WP Fusion required-tag gate copy. includes/extensions/wp-fusion/class-tag-service.php:402
Hook Type Arguments What it is for Fired in
learnomy_xapi_iri_base filter home_url() Filters the base IRI used for this site’s xAPI activity identifiers. includes/extensions/xapi/class-statement-builder.php:88
learnomy_xapi_statement filter $statement, $event, $ctx Filter a single xAPI statement just before it is queued for delivery. includes/extensions/xapi/class-dispatcher.php:205