Skip to content

Hooks and Filters

The addon exposes actions and filters for customizing activity text, notification recipients, and listing pagination. Every hook below is fired or consumed in the plugin code. The addon registers no REST routes and no AJAX actions.

Hook Type Fired
reign_geodirectory_addon_loaded Action After the main addon class is constructed.

Each filter lets you rewrite the activity action string before it is stored.

Filter Arguments Applies to
reign_geodir_add_location_activity_filter $post_action, $location, $member_id New place activity text
reign_geodir_add_favorite_activity_filter $post_action, $location, $member_id Favorite activity text
reign_geodir_add_location_review_activity_filter $post_action, $comment_action, $member_id Review activity text (on insert)
reign_geodir_add_location_review_transition_activity_filter $post_action, $comment_action, $member_id Review activity text (on later approval)
Filter Arguments Applies to
reign_peepso_geodir_add_location_activity_filter $post_action, $location_title, $member_id New place activity content
reign_peepso_geodir_add_location_review_activity_filter $activity_content, $location, $user_id Favorite activity content (applied in the favorite handler)
reign_geodir_add_location_review_activity $activity_content, $location, $user_id Favorite activity content, applied just before the PeepSo post is created
Filter Arguments Purpose
geodir_review_users_lists $users (array of user IDs) Recipients of a review notification (BuddyPress). Default is the listing author plus all administrators.
reign_geodir_new_place_notification_batch_size $batch_size (default 200) Number of members notified per background batch for a new-place notification (BuddyPress).
bp_geodir_add_location_notification_format $return, $location_id, $notification_id, $format New-place notification display text/link.
bp_geodir_marked_favorite_notification_format $return, $member_id, $location_id, $notification_id, $format Favorite notification display text/link.
bp_geodir_marked_review_notification_format $return, $member_id, $location_id, $notification_id, $format Review notification display text/link.
Filter Arguments Purpose
reign_geodir_peepso_places_per_page $per_page (default 12) Page size for the PeepSo profile Places listing.
modify_peepso_learndash_main_tab_title $tab_label Label of the PeepSo profile Places tab.
wbtm_geodirectory_extender_vertical_tabs $vertical_tabs (array) Vertical sub-tabs shown under the Geodirectory Settings admin tab.
Filter Purpose
reign_load_geodirectory_assets The addon returns true on the BuddyPress and PeepSo profile screens where the Places tab renders, so the Reign theme loads its GeoDirectory styles there.
geodir_posts_groupby The addon adds a GROUP BY {posts}.ID clause to prevent duplicate rows (and the resulting notices) when a listing belongs to multiple categories.
Hook Type Purpose
reign_geodir_new_place_notification_batch Action (WP-Cron single event) Worker that notifies members about a new place in batches and re-schedules itself until all are processed. Scheduled with the arguments location_id, post_author_id, offset.

For reference, the BuddyPress activity types registered are new_location_post, place_mark_favorite, and geodir_review_update, under the notification component bp_geodir_loc with actions geodir_add_location_action, bp_geodir_marked_location_favorite_action, and bp_geodir_marked_location_review_action.