Astra_Ext_Nav_Widget_Support::edit_widget()

Function to return widget form to edit.


Description


Return

(void)


Source

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

		public function edit_widget() {

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

			$widget_id = sanitize_text_field( $_POST['widget_id'] ); // phpcs:ignore WordPress.Security.NonceVerification.Missing

			global $wp_registered_widget_controls;

			$control = $wp_registered_widget_controls[ $widget_id ];
			$id_base = $this->get_id_base_for_widget_id( $widget_id );

			$nonce = wp_create_nonce( 'ast_save_widget_' . $widget_id );
			ob_start();
			?>

			<form method="post">
				<input type="hidden" name="widget-id" class="widget-id" value="<?php echo esc_attr( $widget_id ); ?>" />
				<input type='hidden' name='action'    value='ast_save_widget' />
				<input type='hidden' name='id_base'   class="id_base" value='<?php echo esc_attr( $id_base ); ?>' />
				<input type='hidden' name='widget_id' value='<?php echo esc_attr( $widget_id ); ?>' />
				<input type='hidden' name='_wpnonce'  value='<?php echo esc_attr( $nonce ); ?>' />

				<input type="hidden" class="ast-nonce-field ast-delete-widget-nonce" name="ast-delete-widget-nonce-<?php echo esc_attr( $widget_id ); ?>" value="<?php echo esc_attr( wp_create_nonce( 'ast-delete-widget-' . $widget_id ) ); ?>">

				<div class='widget-content'>
					<?php
					if ( is_callable( $control['callback'] ) ) {

						call_user_func_array( $control['callback'], $control['params'] );
					}
					?>

					<div class='widget-controls'>
						<a class='delete' href='#delete'><?php esc_html_e( 'Delete', 'astra-addon' ); ?></a> |
						<a class='close' href='#close'><?php esc_html_e( 'Close', 'astra-addon' ); ?></a>
					</div>
					<div class="alignright">
						<?php
							submit_button( __( 'Save', 'astra-addon' ), 'button-primary ast-save-widget alignright', 'savewidget', false );
						?>
						<span class="spinner"></span>
					</div>
				</div>
			</form>

			<?php

			$output = ob_get_clean();

			wp_send_json_success( $output );

		}

Changelog

Changelog
Version Description
1.6.0 Introduced.


User Contributed Notes

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