/** * buddyboss-theme functions and definitions * * @link https://developer.wordpress.org/themes/basics/theme-functions/ * * @package BuddyBoss_Theme */ $init_file = get_template_directory() . '/inc/init.php'; if ( ! file_exists( $init_file ) ) { $err_msg = __( 'Could not load the starter file!', 'buddyboss-theme' ); wp_die( esc_html( $err_msg ) ); } require_once $init_file; /** * Theme Global Function Caller Helper. * * @return \BuddyBossTheme\BaseTheme */ function buddyboss_theme() { return \BuddyBossTheme\BaseTheme::instance(); } buddyboss_theme(); // Instantiate. /************* Theme Activation **************/ require_once locate_template( '/inc/theme-activation.php' ); /** * Register the required plugins for this theme. */ add_action( 'bbta_register', 'buddyboss_theme_register_required_plugins' ); if ( ! function_exists( 'buddyboss_theme_register_required_plugins' ) ) { function buddyboss_theme_register_required_plugins() { /** * Array of plugin arrays. Required keys are name and slug. * If the source is NOT from the .org repo, then source is also required. */ $plugins = array(); /** * Array of configuration settings. Amend each line as needed. * If you want the default strings to be available under your own theme domain, * leave the strings uncommented. * Some of the strings are added into a sprintf, so see the comments at the * end of each line for what each argument will be. */ $config = array( 'domain' => 'buddyboss-theme', // Text domain - likely want to be the same as your theme. 'default_path' => '', // Default absolute path to pre-packaged plugins 'parent_slug' => 'themes.php', // Default parent URL slug 'menu' => 'install-required-plugins', // Menu slug 'has_notices' => true, // Show admin notices or not 'is_automatic' => false, // Automatically activate plugins after installation or not 'message' => '', // Message to output right before the plugins table 'strings' => array( 'page_title' => __( 'Install Required Plugins', 'buddyboss-theme' ), 'menu_title' => __( 'Install Plugins', 'buddyboss-theme' ), 'installing' => __( 'Installing Plugin: %s', 'buddyboss-theme' ), // %1$s = plugin name 'oops' => __( 'Something went wrong with the plugin API.', 'buddyboss-theme' ), 'notice_can_install_required' => _n_noop( 'This theme requires the following plugin: %1$s.', 'This theme requires the following plugins: %1$s.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'notice_can_install_recommended' => _n_noop( 'This theme recommends the following plugin: %1$s.', 'This theme recommends the following plugins: %1$s.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'notice_cannot_install' => _n_noop( 'Sorry, but you do not have the correct permissions to install the %s plugin. Contact the administrator of this site for help on getting the plugin installed.', 'Sorry, but you do not have the correct permissions to install the %s plugins. Contact the administrator of this site for help on getting the plugins installed.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'notice_can_activate_required' => _n_noop( 'The following required plugin is currently inactive: %1$s.', 'The following required plugins are currently inactive: %1$s.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'notice_can_activate_recommended' => _n_noop( 'The following recommended plugin is currently inactive: %1$s.', 'The following recommended plugins are currently inactive: %1$s.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'notice_cannot_activate' => _n_noop( 'Sorry, but you do not have the correct permissions to activate the %s plugin. Contact the administrator of this site for help on getting the plugin activated.', 'Sorry, but you do not have the correct permissions to activate the %s plugins. Contact the administrator of this site for help on getting the plugins activated.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'notice_ask_to_update' => _n_noop( 'The following plugin needs to be updated to its latest version to ensure maximum compatibility with this theme: %1$s.', 'The following plugins need to be updated to their latest version to ensure maximum compatibility with this theme: %1$s.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'notice_cannot_update' => _n_noop( 'Sorry, but you do not have the correct permissions to update the %s plugin. Contact the administrator of this site for help on getting the plugin updated.', 'Sorry, but you do not have the correct permissions to update the %s plugins. Contact the administrator of this site for help on getting the plugins updated.', 'buddyboss-theme' ), // %1$s = plugin name(s) 'install_link' => _n_noop( 'Begin installing plugin', 'Begin installing plugins', 'buddyboss-theme' ), 'activate_link' => _n_noop( 'Activate installed plugin', 'Activate installed plugins', 'buddyboss-theme' ), 'return' => __( 'Return to Required Plugins Installer', 'buddyboss-theme' ), 'plugin_activated' => __( 'Plugin activated successfully.', 'buddyboss-theme' ), 'complete' => __( 'All plugins installed and activated successfully. %s', 'buddyboss-theme' ), // %1$s = dashboard link 'nag_type' => __( 'updated', 'buddyboss-theme' ), // Determines admin notice type - can only be 'updated' or 'error' ), ); bbta( $plugins, $config ); } } if ( ! function_exists( 'wp_body_open' ) ) { /** * Shim for wp_body_open, ensuring backward compatibility with versions of WordPress older than 5.2. */ function wp_body_open() { do_action( 'wp_body_open' ); } } /** * Load deprecated functions. */ require_once trailingslashit( get_template_directory() ) . 'inc/core/deprecated/deprecated-filters.php'; require_once trailingslashit( get_template_directory() ) . 'inc/core/deprecated/deprecated-hooks.php'; require_once trailingslashit( get_template_directory() ) . 'inc/core/deprecated/deprecated-functions.php'; /** * Load BuddyBoss theme blocks. * * @since 2.0.0 */ require_once trailingslashit( get_template_directory() ) . 'blocks/blocks.php';