Astra_Ext_Nav_Widget_Support::add_widget()

Function to add widget to list.


Description


Return

(void)


Source

File: addons/nav-menu/classes/class-astra-ext-nav-widget-support.php

		public function add_widget() {

			$menu_item_id = sanitize_text_field( $_POST['menu_item_id'] );

			check_ajax_referer( 'ast-drop-widget-' . $menu_item_id, 'security_nonce' );

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

			$widget_id = sanitize_text_field( $_POST['widget_id'] );
			$title     = sanitize_text_field( $_POST['title'] );

			require_once ABSPATH . 'wp-admin/includes/widgets.php';

			// Adding instance of menu item.
			$next_id         = next_widget_id_number( $widget_id );
			$current_widgets = get_option( 'widget_' . $widget_id );

			$current_widgets[ $next_id ] = array(
				'ast_mm_parent_menu_id' => $menu_item_id,
			);

			update_option( 'widget_' . $widget_id, $current_widgets );

			$widget_id = $this->add_widget_to_sidebar( $widget_id, $next_id );

			$html = $this->render_widget( $widget_id, $title );

			wp_send_json_success( $html );

		}

Changelog

Changelog
Version Description
1.6.0 Introduced.


User Contributed Notes

You must log in before being able to contribute a note or feedback.