wp_ajax_delete_inactive_widgets() – Ajax handler for removing inactive widgets.

You appear to be a bot. Output may be restricted

Description

Ajax handler for removing inactive widgets.

Usage

wp_ajax_delete_inactive_widgets();

Parameters

Returns

void

Source

File name: wordpress/wp-admin/includes/ajax-actions.php
Lines:

1 to 31 of 31
function wp_ajax_delete_inactive_widgets() {
  check_ajax_referer( 'remove-inactive-widgets', 'removeinactivewidgets' );

  if ( ! current_user_can( 'edit_theme_options' ) ) {
    wp_die( -1 );
  }

  unset( $_POST['removeinactivewidgets'], $_POST['action'] );
  
/** This action is documented in wp-admin/includes/ajax-actions.php */
  do_action( 'load-widgets.php' ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores
  
/** This action is documented in wp-admin/includes/ajax-actions.php */
  do_action( 'widgets.php' ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores
  
/** This action is documented in wp-admin/widgets.php */
  do_action( 'sidebar_admin_setup' );

  $sidebars_widgets = wp_get_sidebars_widgets();

  foreach ( $sidebars_widgets['wp_inactive_widgets'] as $key => $widget_id ) {
    $pieces       = explode( '-', $widget_id );
    $multi_number = array_pop( $pieces );
    $id_base      = implode( '-', $pieces );
    $widget       = get_option( 'widget_' . $id_base );
    unset( $widget[ $multi_number ] );
    update_option( 'widget_' . $id_base, $widget );
    unset( $sidebars_widgets['wp_inactive_widgets'][ $key ] );
  }

  wp_set_sidebars_widgets( $sidebars_widgets );

  wp_die();
}
 

 View on GitHub View on Trac