Почему элементы навигации сохранены в базе данных?

Может быть, я просто не понимаю концепцию WP прямо здесь, но почему все в WordPress хранится как сообщение какого-то типа? У меня есть собственный набор таблиц, в которых хранятся сотни и тысячи элементов. Я хотел бы программно создать меню навигации, которое динамически обновляет элементы, чтобы отражать мои пользовательские таблицы. Я не смог найти способ сделать это, не используя следующую функцию:

wp_update_nav_menu_item ()

Насколько я понимаю, эта функция хранит элемент в массиве в таблицах wordpress в виде сообщений / таксономий? Это лишние накладные расходы в моем случае и выглядит довольно постоянным. Мои пункты меню будут меняться в значительной степени на ежедневной основе, я не хочу захватывать элементы из одной таблицы только для их хранения в другой таблице.

Кто-нибудь знает, как я могу напрямую обновлять меню навигации каждый раз, когда загружается домашняя страница, не требуя каких-либо помех от панели администрирования?

Благодарю.

Фильтр wp_nav_menu_objects и динамически добавляйте свои пользовательские элементы (см. Этот пример или этот ). Вы получаете текущий список элементов, а аргументы wp_nav_menu() были с параметрами. Затем вы можете просто добавить новые элементы или удалить существующие.