Cześć @jessegavin :
Menu Nav są przechowywane w kombinacji niestandardowych typów postów i niestandardowych systematyk. Każde menu jest przechowywane jako termin (tj. „Informacje o menu” , znaleziony w wp_terms) w niestandardowej taksonomii (tj. nav_menuZnaleziony w wp_term_taxonomy.)
Każdy element menu Nav jest przechowywany jako post post_type=='nav_menu_item'(tj. „O firmie” , znaleziono w wp_posts), a jego atrybuty są przechowywane jako meta post (in wp_postmeta) z meta_keyprefiksem _menu_item_*gdzie _menu_item_menu_item_parentjest identyfikator nadrzędnego elementu menu Nav post.
Zależność między menu i elementami menu jest przechowywana wp_term_relationshipstam, gdzie object_idodnosi się $post->IDdo pozycji menu nawigacji i $term_relationships->term_taxonomy_idodnosi się do menu zdefiniowanego zbiorczo w wp_term_taxonomyi wp_terms.
Jestem prawie pewien, że byłoby to możliwe, aby zaczepić zarówno 'wp_update_nav_menu'i 'wp_update_nav_menu_item'stworzyć menu w rzeczywistych wp_termsi równoległym układzie stosunków w wp_term_taxonomyi wp_term_relationshipsgdzie każdy Nav elementu menu, który ma sub-Nav elementy Menu również staje się swoją własną Nav Menu.
Chciałbyś także przechwycić 'wp_get_nav_menus' (który sugerowałem dodanie do WP 3.0 w oparciu o podobną pracę, którą wykonywałem kilka miesięcy temu), aby upewnić się, że wygenerowane menu Nav nie są wyświetlane do manipulacji przez użytkownika w adminie, w przeciwnym razie naprawdę szybko zsynchronizowałeś się, a wtedy miałbyś koszmar danych.
Brzmi jak fajny i użyteczny projekt, ale jest to trochę więcej kodu i testów, na które nie mogę sobie teraz pozwolić częściowo, ponieważ wszystko, co synchronizuje dane, zwykle jest PITA, jeśli chodzi o usuwanie wszystkich błędów (i ponieważ klienci płacący naciskają na mnie, aby załatwić sprawę :) Ale uzbrojony w powyższe informacje jestem dość zmotywowanym deweloperem wtyczek WordPress, który mógłby to napisać, gdyby chcieli.
Oczywiście teraz zdajesz sobie sprawę, że jeśli go kodujesz, masz obowiązek opublikować go tutaj, abyśmy wszyscy mogli skorzystać z Twojej hojności! :-)