web-dev-qa-db-ja.com

カスタムメニューを使用して現在のブランチのメニュー項目のみのサブページ

私は徹底的な調査をしましたが解決策を見つけることができませんでした。解決策だけが近づいています。

私のカスタムメニュー( "top")はこの構造を示しています(あなたはその一部を見ています):

page 1
  subpage 1.1
    category A
    subsubpage 1.1.1
    subsubpage 1.1.2
  subpage 1.2
    category B
    subsubpage 1.2.1
    subsubpage 1.2.2
  subpage 1.3
    category C
    subsubpage 1.3.1
    subsubpage 1.3.2
page 2
page 3

CSSを使用せずに(実際の構造ははるかに大きくなります)、ユーザーが現在1ページ目(その子アイテムのみ)を表示しているときに、これをサイドバーに表示します。

  subpage 1.1
  subpage 1.2
  subpage 1.3

ユーザーが現在サブページ1.1またはそのカスタムメニューの子(カテゴリAの投稿を含む)を見ているとき:

  subpage 1.1
    category A
    subpage 1.1.1
    subpage 1.1.2
  subpage 1.2
  subpage 1.3

言葉で言うと:

表示メニュー項目:

  • レベル2のメニュー項目(ある場合)
  • 現在のブランチ内の項目のみのレベル2メニュー項目の子(current-menu-ancestor、current-menu-parent、current-menu-item)

私はそのフォーラムで提示されたいくつかのカスタムウォーカークラスを試しました、それらのどれもトリックをしませんでした。

私はプラグインのAdvanced Menu Widget( http://wordpress.org/extend/plugins/advanced-menu-widget/ )も試しました。 (!)閉じますが、それにはバグがあるようです。これらの設定を使用すると、一般的に仕事ができます。

  • 階層を表示:関連する副明細のみ
  • 開始深さ:1

残念ながら、カテゴリAを見た結果や、私の例では投稿はしていません。

前もって感謝します。

2
hedu

JánBočínecのプラグイン「Advanced menu widget」を使うと、かなり近づくことができます。大きな例外が1つあります。カテゴリAの投稿を見ると、サブメニュー全体が消えます(残りの空の<ul> </ul>構成要素を除く)。

だから我々はまだ実用的な解決策を探しています。 GeckaのサブメニュープラグインとたくさんのCSSを使って試してみましょう。しかし、私はこのプラグインでさえも十分なCSSクラスを提供していないことを恐れています。

したがって、これは半分の答えです;-)

2
hedu