web-dev-qa-db-ja.com

ナビゲーション項目がデータベースに保存されるのはなぜですか?

たぶん、私はここでWPの概念を理解していないだけなのに、Wordpressのすべてが何らかのタイプの投稿として格納されているのはなぜでしょうか。私は何百、何千というアイテムを収納するカスタムのテーブルセットを持っています。カスタムテーブルを反映するように動的に項目を更新するナビゲーションメニューをプログラム的に作成したいです。次の関数を使わずにこれを実行する方法を見つけることができませんでした。

wp_update_nav_menu_item()

私の理解するところでは、この関数はワードプレスの表の中の項目をポスト/タクソノミーとして格納しますか?これは私の場合は不必要なオーバーヘッドであり、かなり永続的に見えます。私のメニュー項目は日々変化しますので、あるテーブルから他のテーブルに項目を格納するためだけにその項目を取得したくはありません。

管理パネルからの干渉を必要とせずにホームページが読み込まれるたびにナビゲーションメニューを直接更新する方法を知っている人はいますか?

ありがとう。

2
SPI

wp_nav_menu_objectsをフィルタリングしてカスタム項目を動的に追加します(この例のまたは this を参照)。 )現在の項目のリストとwp_nav_menu()が引数として持っていた引数を取得します。その後、新しい項目を追加するか、既存の項目を削除するだけで済みます。

2
fuxia