/** * Get menu items array data for post type erm_menu * * @since 1.0 * @param $post_id * @return array */ function erm_get_menu_items_data($post_id) { // Get meta $menu_items = get_post_meta($post_id, '_erm_menu_items', true); if (empty($menu_items)) { return array(); } // Split to get ids $menu_items = preg_split('/,/', $menu_items); // Array to return $result = array(); // Get data foreach menu item id foreach ($menu_items as $id) { $data = erm_get_menu_item_data($id); if (!empty($data)) { $result[] = $data; } } return $result; }
/** * Get list of menu items ajax * * @since 1.0 */ function erm_list_menu_items() { $posts = get_posts(array('post_type' => 'erm_menu_item', 'numberposts' => -1, 'order_by' => 'post_title', 'order' => 'ASC')); $html = ''; $items = array(); if ($posts) { $html .= '<div style="display: inline-block; text-align: left; margin-bottom:20px;">'; foreach ($posts as $post) { if (get_post_meta($post->ID, '_erm_type', true) == 'product') { $html .= '<label><input data-id="' . $post->ID . '" type="checkbox">' . $post->post_title . '</label><br>'; $items[] = erm_get_menu_item_data($post->ID); } } $html .= '</div><hr>'; $html .= '<button id="add-menu-items" class="button button-default">' . __('Add Menu Items', 'erm') . '</button>'; } else { $html .= '<h1>NO MENU ITEMS</h1>'; } wp_send_json_success(array('html' => $html, 'items' => $items)); exit; }