Skip to:
Content

bbPress.org


Ignore:
Timestamp:
02/27/2012 02:38:36 AM (14 years ago)
Author:
johnjamesjacoby
Message:

First pass at creating forum content on first installation.

  • Move bbp_activation and bbp_deactivation action hooks into admin actions so they are not run by site visitors
  • Introduce bbp_create_initial_content() function to handle insertion of initial forum, topic, and reply
  • Fixes #1701
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/plugin/bbp-admin/bbp-actions.php

    r3766 r3768  
    4040 *           v--WordPress Actions       v--bbPress Sub-actions
    4141 */
    42 add_action( 'admin_menu',              'bbp_admin_menu'              );
    43 add_action( 'admin_init',              'bbp_admin_init'              );
    44 add_action( 'admin_head',              'bbp_admin_head'              );
    45 add_action( 'admin_notices',           'bbp_admin_notices'           );
    46 add_action( 'custom_menu_order',       'bbp_admin_custom_menu_order' );
    47 add_action( 'menu_order',              'bbp_admin_menu_order'        );
     42add_action( 'admin_menu',              'bbp_admin_menu'                    );
     43add_action( 'admin_init',              'bbp_admin_init'                    );
     44add_action( 'admin_head',              'bbp_admin_head'                    );
     45add_action( 'admin_notices',           'bbp_admin_notices'                 );
     46add_action( 'custom_menu_order',       'bbp_admin_custom_menu_order'       );
     47add_action( 'menu_order',              'bbp_admin_menu_order'              );
     48add_action( 'wpmu_new_blog',           'bbp_new_site',               10, 6 );
    4849
    4950// Hook on to admin_init
     
    6263add_action( 'bbp_admin_menu', 'bbp_admin_separator' );
    6364
     65// Activation
     66add_action( 'bbp_activation', 'bbp_add_roles',      1 );
     67add_action( 'bbp_activation', 'bbp_add_caps',       2 );
     68add_action( 'bbp_activation', 'bbp_add_options',    1 );
     69add_action( 'bbp_activation', 'flush_rewrite_rules'   );
     70
     71// Deactivation
     72add_action( 'bbp_deactivation', 'bbp_remove_caps',    1 );
     73add_action( 'bbp_deactivation', 'bbp_remove_roles',   2 );
     74add_action( 'bbp_deactivation', 'flush_rewrite_rules'   );
     75
     76//
     77add_action( 'bbp_new_site', 'bbp_add_roles',              2 );
     78add_action( 'bbp_new_site', 'bbp_add_caps',               4 );
     79add_action( 'bbp_new_site', 'bbp_add_options',            6 );
     80add_action( 'bbp_new_site', 'bbp_create_initial_content', 8 );
     81add_action( 'bbp_new_site', 'flush_rewrite_rules'           );
     82
    6483// Contextual Helpers
    6584add_action( 'load-settings_page_bbpress', 'bbp_admin_settings_help' );
     
    6786// Add sample permalink filter
    6887add_filter( 'post_type_link', 'bbp_filter_sample_permalink', 10, 4 );
     88
     89/**
     90 * When a new site is created in a multisite installation, run the activation
     91 * routine on that site
     92 *
     93 * @since bbPress (r3283)
     94 *
     95 * @param int $blog_id
     96 * @param int $user_id
     97 * @param string $domain
     98 * @param string $path
     99 * @param int $site_id
     100 * @param array() $meta
     101 */
     102function bbp_new_site( $blog_id, $user_id, $domain, $path, $site_id, $meta ) {
     103
     104        // Switch to the new blog
     105        switch_to_blog( $blog_id );
     106
     107        // Do the bbPress activation routine
     108        do_action( 'bbp_new_site' );
     109
     110        // restore original blog
     111        restore_current_blog();
     112}
    69113
    70114/** Sub-Actions ***************************************************************/
Note: See TracChangeset for help on using the changeset viewer.