__( 'Display Mode'), 'um_nav_roles' => __('By Role') ); } public static function _save( $menu_id, $menu_item_db_id, $menu_item_args ) { if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) { return; } foreach ( self::$fields as $_key => $label ) { if( $_key == 'um_nav_roles' ){ $key = sprintf( 'menu-item-%s', $_key ); // Sanitize if ( ! empty( $_POST[ $key ][ $menu_item_db_id ] ) ) { // Do some checks here... $value = $_POST[ $key ][ $menu_item_db_id ]; } else { $value = null; } }else{ $key = sprintf( 'menu-item-%s', $_key ); // Sanitize if ( ! empty( $_POST[ $key ][ $menu_item_db_id ] ) ) { // Do some checks here... $value = $_POST[ $key ][ $menu_item_db_id ]; } else { $value = null; } } // Update if ( ! is_null( $value ) ) { update_post_meta( $menu_item_db_id, $key, $value ); } else { delete_post_meta( $menu_item_db_id, $key ); } } } public static function _fields( $id, $item, $depth, $args ) { ?>

$label ) { $key = sprintf('menu-item-%s', $_key); $id = sprintf('edit-%s-%s', $key, $item->ID); $name = sprintf('%s[%s]', $key, $item->ID); $value = get_post_meta($item->ID, $key, true); $role_name = sprintf('%s[%s][]', $key, $item->ID); $class = sprintf('field-%s', $_key); ?>


roles()->get_roles(); $i = 0; $html = ''; $columns = 2; while ( $i < $columns ) { $per_page = ceil( count( $options ) / $columns ); $section_fields_per_page = array_slice( $options, $i*$per_page, $per_page ); $html .= ''; foreach ( $section_fields_per_page as $k => $title ) { $id_attr = ' id="' . $id . '_' . $k . '" '; $for_attr = ' for="' . $id . '_' . $k . '" '; $name_attr = ' name="' . $role_name . '" '; $html .= ""; } $html .= ''; $i++; } echo $html; ?>