Skip to content

Developer Guide

This plugin has no REST API, no custom tables, no cron and no shortcodes. It bridges IdeaPush and BuddyPress by reading the idea post type and writing to the BuddyPress activity stream, and it exposes a small set of filters.

The plugin does not consume any IdeaPush-specific action or filter hooks. It reads IdeaPush data directly:

  • The idea post type is queried for a member’s published ideas.
  • IdeaPush idea meta votes and current-status are read for the vote count and status shown on the Idea tab.

Activity posting is triggered from the core WordPress transition_post_status hook: when an idea moves to publish, the plugin calls bp_activity_add().

Option Contents
bii_general_setting Idea tab options: allow_idea_tab, two_column, length_limit, profile_label, profile_slug.
bii_activity_setting Activity options: allow_post_activity, action_text, append_title, allow_comment.

Both options are registered through the Settings API (register_setting groups bii_admin_general_setting and bii_admin_activity_setting) and saved via options.php.

Key On Meaning
bp_ideapush_integration_postid_activity idea post The activity ID created for that idea.
bp_ideapush_integration_activity_postid activity The idea post ID the activity belongs to.
bp_ideapush_youzify_activity activity Set to yes when the activity was created under Youzify.
  • bp_ideapush_integration_activity_action - the idea activity entry (default).
  • activity_update - used instead when Youzify is active.
  • activity_comment - used for replies posted through the plugin’s reply box.
Action Hook Nonce Notes
bii_comment_reply_post wp_ajax_bii_comment_reply_post bp-ideapush-nonce Logged-in members only (no nopriv). Posts a reply on an idea’s activity as a BuddyPress activity comment. Expects POST activityid, commentid, content, nonce.
Filter Signature Purpose
bp_ideapush_integration_admin_tabs ( array $tabs ) Filter the admin card-panel tab registry.
bp_ideapush_integration_visible_posts_count ( int $total, int $user_id ) Filter the idea count shown on the profile tab badge.
bp_ideapush_integartion_post_content ( string $template ) Filter the sprintf template used to build the activity content. Note the spelling integartion.
bp_ideapush_integration_idea_action ( string $template ) Filter the sprintf template for the activity action line.
bp_ideapush_integration_idea_comment ( string $template ) Filter the sprintf template for the reply/comment action line.
bp_ideapush_add_feature_image_blog_post_as_activity_content ( string $content, int $post_id ) Filter the featured-image HTML prepended to activity content. The plugin also attaches its own callback to this filter.
bp_activity_excerpt_append_text ( string $text ) Filter the “Read more” text appended to a truncated activity excerpt.
bii_license_api_sslverify ( bool $sslverify ) Toggle sslverify on the EDD license API request.

Updates are served through an EDD Software Licensing client (edd-license/edd-plugin-license.php), item ID 1536859. License key, status and expiry are stored in the edd_wbcom_bp_ideapush_integration_license_* options and managed from the License tab.