There is menu 'menu-name' on wordpress site. On wordpress I can get menu by
$menu_items = wp_get_nav_menu_items( 'my-menu' ).
Then in foreach loop I get url for menu item:
$url = $menu_item -> url.
This is url on post. This case works good.
Second I want to get the same menu items with urls via sql-query from Wordpress MySql database without wordpress method wp_get_nav_menu_items( 'my-menu' ). Because it is used from other not php wordpress project.
I found this query on internet:
SELECT p2.post_title, p2.post_name, p2.guid
FROM wp_site.wp_posts p1
INNER JOIN wp_site.wp_term_relationships AS TR ON TR.object_id = p1.ID
INNER JOIN wp_site.wp_postmeta AS PM ON pm.post_id = p1.ID
INNER JOIN wp_site.wp_posts AS p2 ON p2.ID = PM.meta_value
WHERE p1.post_type = 'nav_menu_item'
AND TR.term_taxonomy_id = (
SELECT wp_site.wp_terms.term_id
FROM wp_site.wp_terms
WHERE wp_terms.slug = 'my-menu')
AND wp_site.pm.meta_key = '_menu_item_object_id'
ORDER BY p1.menu_order ASC;
But there is not url in this solution. I thought to use 'post_name' for url, but this 'post_name' isn't the same url, that I get from 'wp_get_nav_menu_items...' method. Could you help me, please