私が見つけることができるのは、wp_nav_menuのWalkerプロパティを使用するソリューションです。これは適切なアプローチではないと思います。私は、次のような構造でメニューを作成したい:カテゴリに親に属する記事
カテゴリーであるサブメニュー項目のカテゴリの投稿がサブメニューアイテムとして表示されます
- Xの数字をある
リンク
など...
ポストを取得するためにメニュー項目ごとにループを手動で実行する必要がありますか?
私が見つけることができるのは、wp_nav_menuのWalkerプロパティを使用するソリューションです。これは適切なアプローチではないと思います。私は、次のような構造でメニューを作成したい:カテゴリに親に属する記事
カテゴリーであるサブメニュー項目のカテゴリの投稿がサブメニューアイテムとして表示されます
リンク
など...
ポストを取得するためにメニュー項目ごとにループを手動で実行する必要がありますか?
あなたのfunctions.phpでこれを試してみてください:
add_filter('wp_nav_menu_items', 'add_productions', 10, 2);
function add_productions($items, $args) {
$cat = '28'; // define category
$productions = array();
$productions = get_posts("cat=$cat");
if ($productions[0] != '') {
$items .= '<li><a href="#">Productions</a><ul class="sub-menu">';
foreach ($productions as $production) {
$permalink = get_permalink($production->ID);
$items .= '<li><a href="'.$permalink.'">'.$production->post_title.'</a></li>';
}
$items .= '</ul>';
}
return $items;
}
この質問と回答は、私にとって非常に有用だったので、私は任意の時点でメニューを挿入するためのオプションを提供し、追加のソリューションを追加するだろうと思いました既存のコアメニュー。
ウェブ上の例のほとんどは、メニューの最後にアイテムを追加する方法を示しています。これは、メニューのどこにでも新しいメニューを追加するのに役立ちます。ここで
は私の「ホーム」メニューの後に新しいメニューを配置するためのコードです:
add_filter('wp_nav_menu_items', 'add_gallery', 10, 2);
function add_gallery($items, $args) {
$cat = '1'; // define category
$pattern = 'Home</a></li>';
$productions = array();
$productions = get_posts("cat=$cat");
$temp_items = '';
if ($productions[0] != '') {
$temp_items .= '<li><a href="#">Galleries</a><ul class="sub-menu">';
foreach ($productions as $production) {
$permalink = get_permalink($production->ID);
$temp_items .= '<li><a href="'.$permalink.'">'.$production->post_title.'</a></li>';
}
$temp_items .= '</ul>';
}
$replacement = $pattern .$temp_items;
$temp_menu = str_replace($pattern, $replacement, $items);
return $temp_menu;
}
うまくいけば、これは他の誰かを助け...
は素晴らしい作品、ありがとう! –