bp_admin_reinstall_emails()
Delete emails and restore from defaults.
Description
Return
(array)
Source
File: bp-core/admin/bp-core-admin-tools.php
function bp_admin_reinstall_emails() {
$switched = false;
// Switch to the root blog, where the email posts live.
if ( ! bp_is_root_blog() ) {
switch_to_blog( bp_get_root_blog_id() );
bp_register_taxonomies();
$switched = true;
}
$emails = get_posts( array(
'fields' => 'ids',
'post_status' => 'publish',
'post_type' => bp_get_email_post_type(),
'posts_per_page' => 200,
'suppress_filters' => false,
) );
if ( $emails ) {
foreach ( $emails as $email_id ) {
wp_trash_post( $email_id );
}
}
// Make sure we have no orphaned email type terms.
$email_types = get_terms( bp_get_email_tax_type(), array(
'fields' => 'ids',
'hide_empty' => false,
'update_term_meta_cache' => false,
) );
if ( $email_types ) {
foreach ( $email_types as $term_id ) {
wp_delete_term( (int) $term_id, bp_get_email_tax_type() );
}
}
require_once( buddypress()->plugin_dir . '/bp-core/admin/bp-core-admin-schema.php' );
bp_core_install_emails();
if ( $switched ) {
restore_current_blog();
}
return array( 0, __( 'Emails have been successfully reinstalled.', 'buddyboss' ) );
}
Changelog
| Version | Description |
|---|---|
| BuddyPress 2.5.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.