WordPress at Your Fingertips
function is not described

_wp_delete_orphaned_draft_menu_items() WP 3.0.0

Deletes orphaned draft menu items

This is an internal function for using it by WP core itself. It's not recommended to use this function in your code.

No Hooks.


null. Nothing.




  • Global. wpdb. $wpdb WordPress database abstraction object.


Since 3.0.0 Introduced.

Code of _wp_delete_orphaned_draft_menu_items() WP 5.8.2

function _wp_delete_orphaned_draft_menu_items() {
	global $wpdb;
	$delete_timestamp = time() - ( DAY_IN_SECONDS * EMPTY_TRASH_DAYS );

	// Delete orphaned draft menu items.
	$menu_items_to_delete = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM $wpdb->posts AS p LEFT JOIN $wpdb->postmeta AS m ON p.ID = m.post_id WHERE post_type = 'nav_menu_item' AND post_status = 'draft' AND meta_key = '_menu_item_orphaned' AND meta_value < %d", $delete_timestamp ) );

	foreach ( (array) $menu_items_to_delete as $menu_item_id ) {
		wp_delete_post( $menu_item_id, true );