WP_Customize_Nav_Menu_Location_Control::render_content()

In this article

Render content just like a normal select control.

Source

public function render_content() {
	if ( empty( $this->choices ) ) {
		return;
	}

	$value_hidden_class    = '';
	$no_value_hidden_class = '';
	if ( $this->value() ) {
		$value_hidden_class = ' hidden';
	} else {
		$no_value_hidden_class = ' hidden';
	}
	?>
	<label>
		<?php if ( ! empty( $this->label ) ) : ?>
		<span class="customize-control-title"><?php echo esc_html( $this->label ); ?></span>
		<?php endif; ?>

		<?php if ( ! empty( $this->description ) ) : ?>
		<span class="description customize-control-description"><?php echo $this->description; ?></span>
		<?php endif; ?>

		<select <?php $this->link(); ?>>
			<?php
			foreach ( $this->choices as $value => $label ) :
				echo '<option value="' . esc_attr( $value ) . '"' . selected( $this->value(), $value, false ) . '>' . esc_html( $label ) . '</option>';
			endforeach;
			?>
		</select>
	</label>
	<button type="button" class="button-link create-menu<?php echo $value_hidden_class; ?>" data-location-id="<?php echo esc_attr( $this->location_id ); ?>" aria-label="<?php esc_attr_e( 'Create a menu for this location' ); ?>"><?php _e( '+ Create New Menu' ); ?></button>
	<button type="button" class="button-link edit-menu<?php echo $no_value_hidden_class; ?>" aria-label="<?php esc_attr_e( 'Edit selected menu' ); ?>"><?php _e( 'Edit Menu' ); ?></button>
	<?php
}

Changelog

VersionDescription
4.9.0Added a button to create menus.
4.3.0Introduced.

User Contributed Notes

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