'',
'menu' => '',
);
/* Widget setup */
function __construct() {
/* Widget settings. */
$widget_ops = array( 'description' => _x( 'Custom menu style 2', 'widget', 'the7mk2' ) );
/* Create the widget. */
parent::__construct(
'presscore-custom-menu-2',
DT_WIDGET_PREFIX . _x( 'Custom menu style 2', 'widget', 'the7mk2' ),
$widget_ops
);
}
/* Display the widget */
function widget( $args, $instance ) {
extract( $args );
$instance = wp_parse_args( (array) $instance, self::$widget_defaults );
/* Our variables from the widget settings. */
$title = apply_filters( 'widget_title', $instance['title'] );
// Get menu
$nav_menu = ! empty( $instance['menu'] ) ? wp_get_nav_menu_object( $instance['menu'] ) : false;
if ( !$nav_menu )
return;
$args = array(
'menu' => $nav_menu,
'container' => false,
'menu_id' => false,
'fallback_cb' => '',
'menu_class' => false,
'container_class' => false,
'dt_item_wrap_start' => '
%ITEM_TITLE%',
'dt_item_wrap_end' => '',
'dt_submenu_wrap_start' => '',
'items_wrap' => '',
'walker' => new Dt_Inc_Classes_WidgetsCustomMenu_Walker()
);
$before_widget = str_replace('widget_presscore-custom-menu-2', 'widget_presscore-custom-menu-2 widget-custom-nav' , $before_widget);
echo $before_widget ;
// title
if ( $title ) echo $before_title . $title . $after_title;
wp_nav_menu( $args );
echo $after_widget;
}
/* Update the widget settings */
function update( $new_instance, $old_instance ) {
$instance = $old_instance;
$instance['title'] = $new_instance['title'];
$instance['menu'] = $new_instance['menu'];
return $instance;
}
/**
* Displays the widget settings controls on the widget panel.
* Make use of the get_field_id() and get_field_name() function
* when creating your form elements. This handles the confusing stuff.
*/
function form( $instance ) {
/* Set up some default widget settings. */
$instance = wp_parse_args( (array) $instance, self::$widget_defaults );
// Get menus
$menus = get_terms( 'nav_menu', array( 'hide_empty' => false ) );
?>