02a Hooks Index

Do not edit this file. It is generated from audit/manifest.json by bin/gen-hooks-reference.php and regenerated at every release, so it cannot drift from the code. For explanations and copy-paste examples, use the hand-written Hooks Reference; when the two disagree on names or arguments, THIS file wins.

Plugin version: 1.9.1 - 106 actions, 119 filters.

Actions (106)

Hook Arguments Fired from
jetonomy_admin_dashboard_after_stats none includes/admin/views/dashboard.php
jetonomy_admin_dashboard_widgets none includes/admin/views/dashboard.php
jetonomy_admin_license_tab_content none includes/admin/views/settings.php
jetonomy_admin_moderation_tab_content active_tab includes/admin/views/moderation.php
jetonomy_admin_moderation_tabs none includes/admin/views/moderation.php
jetonomy_admin_render_extensions none includes/admin/views/extensions.php
jetonomy_admin_settings_tab_content tab, group includes/admin/views/settings.php
jetonomy_admin_settings_tabs none includes/admin/views/settings.php
jetonomy_admin_space_edit_tab_content space_id, tab includes/admin/views/space-edit.php
jetonomy_admin_space_edit_tabs space_id includes/admin/views/space-edit.php
jetonomy_after_content type, object_id templates/post.php
jetonomy_after_create_flag includes/api/class-moderation-controller.php
jetonomy_after_create_post int $post_id, int $space_id, WP_REST_Request|null $request includes/api/class-posts-controller.php (REST create); includes/models/class-post.php Post::publish_scheduled() (cron-published scheduled post, $request null); includes/class-abilities.php (programmatic create, $request null)
jetonomy_after_create_reply int $reply_id, int $post_id, WP_REST_Request|null $request includes/api/class-replies-controller.php (REST create); includes/notifications/class-notifier.php on_reply_from_email() ($request null); includes/class-abilities.php (programmatic create, $request null)
jetonomy_after_create_space space_id, request includes/api/class-spaces-controller.php
jetonomy_after_delete_post includes/api/class-posts-controller.php:778
jetonomy_after_delete_reply includes/api/class-replies-controller.php:528
jetonomy_after_post_article post_id templates/post.php
jetonomy_after_replies post_id templates/post.php
jetonomy_after_resolve_flag includes/moderation/class-moderation-service.php
jetonomy_after_update_post includes/api/class-posts-controller.php
jetonomy_after_update_reply includes/api/class-replies-controller.php
jetonomy_after_update_space space, context{space_id,user_id,request} includes/api/class-spaces-controller.php
jetonomy_after_vote user_id, object_type, object_id, vote_value includes/models/class-vote.php
jetonomy_before_content type, object_id templates/post.php
jetonomy_before_replies post_id templates/post.php
jetonomy_between_replies post_id, reply templates/post.php
jetonomy_composer_toolbar templates/partials/composer.php:49
jetonomy_content_moderated action, type, id, moderator_id includes/moderation/class-moderation-service.php apply_object_status() - single choke-point; REST mod controller, admin AJAX content handler, abilities, and space-mod all funnel through here. Canonical action vocabulary: approve|spam|trash|hold.
jetonomy_email_verified user_id includes/api/class-auth-controller.php
jetonomy_fanout_post_subscribers int $post_id, int $space_id includes/notifications/class-notifier.php:226
jetonomy_fanout_reply_subscribers int $reply_id, int $post_id includes/notifications/class-notifier.php:227
jetonomy_flag_created flag_id includes/models/class-flag.php
jetonomy_flag_resolved flag_id, action includes/models/class-flag.php
jetonomy_header_nav_items user_id templates/header.php
jetonomy_idea_status_changed includes/models/class-post.php
jetonomy_join_request_approved includes/models/class-join-request.php:92
jetonomy_join_request_created request_id includes/models/class-join-request.php
jetonomy_join_request_denied includes/models/class-join-request.php:115
jetonomy_member_card_after $member, $space templates/views/space-members.php
jetonomy_membership_activated user_id, level_id, adapter includes/integrations/
jetonomy_membership_deactivated user_id, level_id, adapter includes/integrations/
jetonomy_new_post_fields post_id templates/compose.php
jetonomy_new_space_fields none templates/views/new-space.php
jetonomy_notification_created notification_id, user_id, type, object_type, object_id, message, link includes/notifications/class-notifier.php, includes/class-mentions.php
jetonomy_post_actions post_id templates/post.php
jetonomy_post_card_after_badges $post, $space templates/partials/post-card.php
jetonomy_post_created includes/models/class-post.php
jetonomy_post_deleted post_id includes/models/class-post.php
jetonomy_post_merged primary_id, secondary_id includes/models/class-post.php
jetonomy_post_meta_fields post_id templates/post-meta.php
jetonomy_post_publish_transition post_id, delta, created_at includes/models/class-post.php (Post::create when created publish; Post::update on publish transitions)
jetonomy_post_updated post_id includes/models/class-post.php
jetonomy_posts_retyped_migration total includes/db/migrations/class-migration_1_9_3.php
jetonomy_pro_first_reaction object_type, object_id, reactor_id CONSUMED by Notifier::on_first_reaction (fired by Pro reactions on 0->1)
jetonomy_profile_after_stats user_id templates/profile.php
jetonomy_profile_display_fields user_id templates/profile.php
jetonomy_profile_edit_fields user_id templates/profile-edit.php
jetonomy_purge_orphan_space $space_id (int) includes/class-space-backfill.php (Space_Backfill::run_batch)
jetonomy_purge_orphan_user $user_id (int) includes/class-privacy-backfill.php (Privacy_Backfill::run_batch)
jetonomy_reply_accepted reply_id includes/models/class-reply.php
jetonomy_reply_actions reply_id templates/reply.php
jetonomy_reply_created includes/models/class-reply.php
jetonomy_reply_deleted reply_id includes/models/class-reply.php
jetonomy_reply_publish_transition reply_id, delta, created_at includes/models/class-reply.php (Reply::create when created publish; Reply::update on publish transitions)
jetonomy_reply_split new_post_id, reply_ids includes/models/class-reply.php
jetonomy_reply_unaccepted includes/api/class-replies-controller.php:652
jetonomy_reply_updated reply_id includes/models/class-reply.php
jetonomy_reputation_changed user_id, points, reason includes/trust/class-reputation-calculator.php
jetonomy_scheduled_post_published post_id includes/class-cron.php
jetonomy_search_filters none templates/search.php
jetonomy_sidebar_about_after_meta space_id templates/sidebar.php
jetonomy_sidebar_after none templates/sidebar.php
jetonomy_sidebar_after_about none templates/sidebar.php
jetonomy_sidebar_after_managed_by templates/partials/sidebar.php:212
jetonomy_sidebar_after_popular_tags templates/partials/sidebar.php:387
jetonomy_sidebar_after_top_members templates/partials/sidebar.php:345
jetonomy_sidebar_after_trending templates/partials/sidebar.php:289
jetonomy_sidebar_before none templates/sidebar.php
jetonomy_sidebar_before_about templates/partials/sidebar.php:102
jetonomy_sidebar_before_managed_by templates/partials/sidebar.php:188
jetonomy_sidebar_before_popular_tags templates/partials/sidebar.php:356
jetonomy_sidebar_before_top_members templates/partials/sidebar.php:300
jetonomy_sidebar_before_trending templates/partials/sidebar.php:235
jetonomy_sitemap_prime_spaces $space_ids (int[]) includes/seo/class-sitemap-emitter.php (Sitemap_Emitter::emit)
jetonomy_space_card_after $space templates/views/home.php, templates/views/category.php
jetonomy_space_display_fields space templates/views/space.php
jetonomy_space_edit_fields space templates/views/space-edit.php
jetonomy_space_member_joined includes/models/class-space-member.php:69
jetonomy_space_member_left includes/models/class-space-member.php:116
jetonomy_space_member_role_changed space_id, user_id, new_role, old_role includes/models/class-space-member.php (set_role)
jetonomy_space_posts_retyped space_id, post_type, updated includes/models/class-space.php
jetonomy_space_purge_batch array $args includes/class-space-purge.php:58
jetonomy_space_purged $space_id (int), $removed (array<string,int> rows removed per table.column:ref) includes/class-space-purge.php (Space_Purge::purge)
jetonomy_space_transferred space_id, from_user_id, to_user_id includes/class-privacy.php
jetonomy_trust_evaluation cron-only includes/class-cron.php
jetonomy_trust_level_changed user_id, old_level, new_level includes/class-cron.php
jetonomy_user_blocked $blocker_id, $blocked_id includes/models/class-blocked-user.php (BlockedUser::block)
jetonomy_user_joined_space user_id, space_id includes/models/class-space-member.php
jetonomy_user_left_space int $space_id, int $user_id includes/models/class-space-member.php:107
jetonomy_user_pending_verification user_id includes/api/class-auth-controller.php
jetonomy_user_registered user_id includes/api/class-auth-controller.php
jetonomy_user_unblocked $blocker_id, $blocked_id includes/models/class-blocked-user.php (BlockedUser::unblock)
jetonomy_verification_reminder_sent user_id, user includes/notifications/class-verification-reminder.php
jetonomy_vote_cast includes/models/class-vote.php
jetonomy_vote_retracted includes/models/class-vote.php

Filters (119)

Hook Arguments Fired from
jetonomy_admin_footer_text text includes/admin/class-admin.php
jetonomy_admin_menu_icon icon includes/admin/class-admin.php
jetonomy_admin_menu_label label includes/admin/class-admin.php
jetonomy_after_post_content '' (html), $post templates/views/single-post.php
jetonomy_after_reply_content $html, $reply templates/partials/reply-card.php
jetonomy_allow_self_upvote allowed, user_id, type, id includes/api/class-votes-controller.php - whether a member may upvote their own content (default true). Return false to block self-upvote for a stricter reputation economy. Self-downvote is always blocked.
jetonomy_app_config $data, $request includes/api/class-app-config-controller.php
jetonomy_app_connect_bridge $info (array{owner, connect_url, connect_schemes}) includes/integrations/class-app-connect.php (App_Connect::bridge_info)
jetonomy_app_connect_schemes $schemes (string[], default ["jetonomyapp"]) includes/integrations/class-app-connect.php (App_Connect::schemes)
jetonomy_attachment_card $card (string HTML), $attachment (array), $object_type (string), $object_id (int) includes/class-attachments.php (Attachments::render)
jetonomy_attachments_class $class (string, default 'jt-attachments') includes/class-attachments.php (Attachments::render)
jetonomy_author_can_reveal $can_reveal (bool, default false), $object, $viewer_id includes/class-author.php (Author::for_display)
jetonomy_before_create_post data includes/models/class-post.php
jetonomy_before_create_reply data includes/models/class-reply.php
jetonomy_before_delete_post post_id includes/models/class-post.php
jetonomy_before_delete_reply reply_id includes/models/class-reply.php
jetonomy_before_join_space user_id, space_id includes/models/class-space-member.php
jetonomy_before_set_role proceed(bool), user_id, space_id, new_role includes/models/class-space-member.php (set_role)
jetonomy_before_vote user_id, object_type, object_id, vote_value includes/models/class-vote.php
jetonomy_blocked_user_ids $ids (int[]), $viewer_id (int) includes/models/class-blocked-user.php (BlockedUser::blocked_ids)
jetonomy_can_create_space_frontend $can (bool), $user_id (int, 0 when logged out) includes/permissions/class-capabilities.php (Capabilities::can_create_space_frontend)
jetonomy_check_content content, type includes/moderation/class-content-checker.php
jetonomy_client_ip ip, remote_addr includes/functions.php Jetonomy\client_ip() - final resolved client IP; override for proxy setups the default trusted-proxy logic doesn't cover.
jetonomy_companions includes/integrations/class-companion-registry.php
jetonomy_compose_label string $label, string $space_type includes/functions.php (Jetonomy\compose_label)
jetonomy_cron_batch_size includes/class-cron.php:121
jetonomy_delete_account_network_wide $network_wide (bool, default false), $user_id includes/api/class-users-controller.php (Users_Controller::delete_wp_account)
jetonomy_display_name_choices string[] $choices, WP_User $user includes/functions.php:296
jetonomy_disposable_email_domains domains includes/api/class-auth-controller.php
jetonomy_dynamic_css $css, $settings includes/class-template-loader.php
jetonomy_email_accent_color color includes/notifications/class-notifier.php
jetonomy_email_body body, template includes/notifications/class-notifier.php
jetonomy_email_headers $headers, $type, $user, $object_type, $object_id includes/notifications/class-notifier.php
jetonomy_email_html html, template includes/notifications/class-notifier.php
jetonomy_email_logo_url url includes/notifications/class-notifier.php
jetonomy_email_subject subject, template includes/notifications/class-notifier.php
jetonomy_email_template_context context, template includes/notifications/class-notifier.php
jetonomy_email_template_path path, template includes/class-template-loader.php
jetonomy_erase_batch_size $size (int, default 1000) includes/class-privacy.php (Privacy::erase_data)
jetonomy_footer_text text templates/footer.php
jetonomy_header_logo url templates/header.php
jetonomy_home_welcome_heading templates/views/home.php
jetonomy_home_welcome_subheading templates/views/home.php
jetonomy_import_batch_seconds $seconds (float, default 15.0) includes/import/class-importer.php (Importer::run_batch)
jetonomy_import_space_visibility access, source, forum includes/import/
jetonomy_import_wpforo_guest_group guest_group includes/import/class-wpforo-importer.php
jetonomy_importers importers includes/import/class-import-manager.php
jetonomy_journey_strict_input $strict (bool, default true), $input (array), $allowed (string[]) includes/cli/journeys/class-journey-input.php (Journey_Input::unknown_keys)
jetonomy_leaderboard_items includes/api/class-leaderboards-controller.php:176
jetonomy_link_preview_cache_ttl ttl includes/api/class-posts-controller.php
jetonomy_link_preview_data data, url includes/api/class-posts-controller.php
jetonomy_link_preview_providers providers includes/api/class-posts-controller.php
jetonomy_link_preview_user_agent ua includes/api/class-posts-controller.php
jetonomy_max_space_pins includes/api/class-posts-controller.php:905
jetonomy_membership_adapter_labels $labels (array<string,string>, adapter id => display name) includes/adapters/class-adapter-registry.php (Adapter_Registry::membership_labels)
jetonomy_membership_upgrade_url $url (string, "" when none resolved), $level_id (string), $adapter_id (string, "" when unknown) includes/adapters/class-adapter-registry.php (Adapter_Registry::membership_level_url)
jetonomy_moderation_flag_resolution flag_status, action, type, id, user_id includes/moderation/class-moderation-service.php apply_object_status() - filters the status applied to an object's pending flags when content is moderated directly (default approve=dismissed, spam/trash=valid, hold=''). Return '' to leave flags pending.
jetonomy_moderation_per_page templates/views/moderation.php:54
jetonomy_new_post_submit_action url includes/blocks/
jetonomy_notification_deep_link string $url, string $object_type, int $object_id includes/functions.php:235
jetonomy_notification_email_headers headers includes/notifications/class-notifier.php
jetonomy_notification_should_send bool $should_send includes/notifications/class-notifier.php:1155; includes/models/class-notification.php:44; includes/class-mentions.php:149
jetonomy_oembed_response response, post includes/api/class-oembed-controller.php
jetonomy_orphan_purge_batch_seconds $seconds (float, default 15.0) includes/class-privacy-backfill.php (Privacy_Backfill::run_batch)
jetonomy_orphan_space_purge_batch_seconds $seconds (float, default 15) includes/class-space-backfill.php (Space_Backfill::run_batch)
jetonomy_post_list_results_for_space $results, $space_id, $user_id, $is_privileged, $sort, $offset includes/models/class-post.php (Post::list_by_space_visible)
jetonomy_post_response response, post includes/api/class-posts-controller.php
jetonomy_posts_query_args includes/models/class-post.php
jetonomy_privacy_orphan_columns $columns (array<int,array{table:string,column:string,where?:string}>) includes/class-privacy-backfill.php (Privacy_Backfill::columns)
jetonomy_profile_response response, user includes/api/class-users-controller.php
jetonomy_profile_tabs $tabs, $user, $is_own templates/views/user-profile.php
jetonomy_profile_url url, user_id includes/
jetonomy_replies_query_args includes/models/class-reply.php
jetonomy_reputation_points_for $points, $action includes/trust/class-reputation.php (Reputation::points_for)
jetonomy_reputation_points_map includes/trust/class-reputation.php:75
jetonomy_reputation_pre_change includes/trust/class-reputation.php:210
jetonomy_reserved_display_names string[] $reserved, string $normalized includes/functions.php:297
jetonomy_resolve_mention_handles array $map, string[] $handles includes/class-mentions.php:100
jetonomy_rest_attachment_data $data (array), $object_type (string), $object_id (int) includes/models/class-attachment.php (Attachment::for_rest)
jetonomy_rest_prepare_notification response, notification includes/api/class-notifications-controller.php
jetonomy_rest_prepare_post response, post includes/api/class-posts-controller.php
jetonomy_rest_prepare_reply response, reply includes/api/class-replies-controller.php
jetonomy_rest_prepare_space response, space includes/api/class-spaces-controller.php
jetonomy_rest_prepare_user response, user includes/api/class-users-controller.php
jetonomy_schema array|null $schema, string $route includes/seo/class-schema-markup.php:102
jetonomy_search_query_args args includes/api/class-search-controller.php
jetonomy_seo_meta includes/class-template-loader.php
jetonomy_show_community_nav show templates/
jetonomy_show_sidebar show templates/
jetonomy_show_sidebar_about templates/partials/sidebar.php:104
jetonomy_show_sidebar_managed_by templates/partials/sidebar.php:190
jetonomy_show_sidebar_popular_tags templates/partials/sidebar.php:358
jetonomy_show_sidebar_top_members templates/partials/sidebar.php:302
jetonomy_show_sidebar_trending templates/partials/sidebar.php:237
jetonomy_sidebar_auth_card html templates/sidebar.php
jetonomy_sitemap_changefreq $changefreq (string), $type (string), $row (array), $space_id (int) includes/seo/class-sitemap-emitter.php (Sitemap_Emitter::emit)
jetonomy_sitemap_exclude_space $exclude (bool, default false), $space_id (int) includes/seo/class-sitemap-emitter.php (Sitemap_Emitter::emit)
jetonomy_sitemap_priority $priority (float), $type (string), $row (array), $space_id (int) includes/seo/class-sitemap-emitter.php (Sitemap_Emitter::emit)
jetonomy_space_feed_posts posts, space includes/class-feed.php (Feed::render)
jetonomy_space_label string $label, bool $plural, bool $lower includes/functions.php:58
jetonomy_space_listing_visibility_sql result, user_id, alias includes/models/class-space.php
jetonomy_space_members_per_page templates/views/space-members.php:29
jetonomy_space_pending_requests_shown templates/views/space-members.php
jetonomy_space_relations $relations (array<int,array{table,column,ref,where,self}>) includes/class-space-purge.php (Space_Purge::relations)
jetonomy_space_role_permissions permissions, role includes/permissions/class-permission-engine.php
jetonomy_space_tabs $tabs, $space, $show_members templates/views/space.php
jetonomy_spaces_query_args includes/models/class-space.php
jetonomy_template_map map includes/class-template-loader.php
jetonomy_theme_dark_tokens tokens includes/integrations/class-theme-integration.php
jetonomy_theme_light_tokens tokens includes/integrations/class-theme-integration.php
jetonomy_trust_level_label label, level includes/trust/class-trust-levels.php
jetonomy_trust_level_pre_change includes/class-cli.php
jetonomy_trusted_proxies proxies includes/functions.php Jetonomy\client_ip() - site owner declares trusted reverse-proxy / CDN IPs so X-Forwarded-For is honoured for IP-bans + rate limiting. Empty by default (XFF ignored; REMOTE_ADDR used).
jetonomy_upload_allowed_types $ext_to_mime includes/api/class-media-controller.php (Media_Controller::validate_upload + upload_image)
jetonomy_upload_max_size $bytes includes/api/class-media-controller.php (Media_Controller::validate_upload)
jetonomy_use_frontend_space_edit use_frontend includes/admin/
jetonomy_user_display_name string $name, WP_User $user includes/functions.php:294
jetonomy_user_handle string $handle, WP_User $user includes/functions.php:359
jetonomy_users_query_args includes/api/class-leaderboards-controller.php