Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save maxyudin/92cb8f37523edaaeded9c7d0847b98ed to your computer and use it in GitHub Desktop.
Save maxyudin/92cb8f37523edaaeded9c7d0847b98ed to your computer and use it in GitHub Desktop.
<?php
// get post ID from the URL query
$post_id = $_GET['post'];
// get post object
$new_item_to_add = get_post($post_id, OBJECT);
// get menu to add the item into (change to the relevant slug, ID, or name)
$existing_menu = wp_get_nav_menu_object('test-nav-menu-slug');
$existing_menu_id = $existing_menu->term_id;
$new_menu_item_data = array(
'menu-item-db-id' => $menu_item_db_id, // default 0, creates a new one
'menu-item-object-id' => $post_id,
'menu-item-object' => '', //default
'menu-item-parent-id' => 0, //default
'menu-item-position' => 0, //default
'menu-item-type' => $new_item_to_add->post_type,
'menu-item-title' => $new_item_to_add->post_title,
'menu-item-url' => get_permalink($post_id),
'menu-item-description' => '', //default
'menu-item-attr-title' => '', //default
'menu-item-target' => '', //default
'menu-item-classes' => '', //default
'menu-item-xfn' => '', //default
'menu-item-status' => 'publish',
);
wp_update_nav_menu_item($existing_menu_id, $menu_item_db_id = 0, $new_menu_item_data);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment