ID ) ) { if ( isset( $args->tf_icon_cb ) ) { /* custom callback for menu icons, provided by wp_nav_menu() */ $callback = $args->tf_icon_cb; $title = $callback( $title, $icon, $menu_item, $args, $depth ); } else { $title = ' '. themify_get_icon( $icon ) . ' ' . $title; } } return $title; } /** * Save the icon meta for a menu item. Also removes the meta entirely if the field is cleared. * * @since 1.6.8 */ static function wp_update_nav_menu_item( $menu_id, $menu_item_db_id, $args ) { if ( isset( $_POST['menu-item-icon'][ $menu_item_db_id ] ) ) { $meta_key = '_menu_item_icon'; $meta_value = self::get_menu_icon( $menu_item_db_id ); $menu_item_icon = $_POST['menu-item-icon'][ $menu_item_db_id ]; $new_meta_value = stripcslashes( $menu_item_icon ); if ( $new_meta_value && '' == $meta_value ) add_post_meta( $menu_item_db_id, $meta_key, $new_meta_value, true ); elseif ( $new_meta_value && $new_meta_value != $meta_value ) update_post_meta( $menu_item_db_id, $meta_key, $new_meta_value ); elseif ( '' == $new_meta_value && $meta_value ) delete_post_meta( $menu_item_db_id, $meta_key, $meta_value ); } } /** * Display the icon picker for menu items in the backend * * @since 1.6.8 */ static function wp_nav_menu_item_custom_fields( $item_id, $item, $depth, $args ) { $saved_meta = self::get_menu_icon( $item_id ); $item_id = esc_attr( $item_id ); ?>