2016-07-02 9 views
0

WordPressのナビゲーションでアイテムの数を取得することは可能でしょうか?私はトップレベルのアイテムの数だけ必要です。私は各項目がナビゲーションバーで占める割合を計算しようとしているので、項目の数を得ることができれば、その割合を得ることができます。私はもともとカスタマイザを使用してユーザーに項目数を入力させていましたが、この番号を自動的に取得できるとさらに良いでしょう。WordPressのメニュー番号を取得する

答えて

0

jQueryまたは平文CSSをflexとすることができます。

ことはここでは両方を持つ例を示します

var $items = $('nav.jquery > ul > li'), 
 
    $itemsWidth = 100/$items.length; 
 

 
$items.css({ 
 
    'width': $itemsWidth + '%' 
 
});
nav ul { 
 
    margin: 0; 
 
    padding: 0; 
 
} 
 
nav.jquery > ul > li { 
 
    display: block; 
 
    position: relative; 
 
    float: left; 
 
    height: 40px; 
 
    line-height: 40px; 
 
    background-color: gray; 
 
    text-align: center; 
 
    color: white; 
 
} 
 

 
nav > ul > li > ul { 
 
    position: absolute; 
 
    top: 40px; 
 
    display: none; 
 
} 
 

 
nav.flex{ 
 
    clear: both; 
 
} 
 

 
nav.flex > ul{ 
 
    display: flex; 
 
} 
 

 
nav.flex > ul > li{ 
 
    flex: 1; 
 
    position: relative; 
 
    height: 40px; 
 
    line-height: 40px; 
 
    background-color: green; 
 
    text-align: center; 
 
    color: white; 
 
    list-style-type: none; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<nav class="jquery"> 
 
    <ul> 
 
    <li>Item 1</li> 
 
    <li>Item 2 
 
     <ul> 
 
     <li>Item 2/1</li> 
 
     <li>Item 2/2</li> 
 
     <li>Item 231</li> 
 
     </ul> 
 
    </li> 
 
    <li>Item 3</li> 
 
    <li>Item 4</li> 
 
    </ul> 
 
</nav> 
 

 
<nav class="flex"> 
 
    <ul> 
 
    <li>Item 1</li> 
 
    <li>Item 2 
 
     <ul> 
 
     <li>Item 2/1</li> 
 
     <li>Item 2/2</li> 
 
     <li>Item 231</li> 
 
     </ul> 
 
    </li> 
 
    <li>Item 3</li> 
 
    <li>Item 4</li> 
 
    </ul> 
 
</nav>

+0

私はこれを考えましたが、これではJavaScriptが有効にされた上でrelys、私はそれが動作を確認するために、それをサーバ側の操作を行いたいのですが代わりに毎回。私はこの情報を得るためにWordPressで方法を見つけることができない場合、私は代わりにこのようにそれをしなければならないでしょう –

+0

なぜあなただ​​けのCSSを使用しないでください? – Erevald

+0

cssを使用したくない場合は、[Walker](https://codex.wordpress.org/Class_Reference/Walker_Nav_Menu)を追加し、その中の項目を数えることができます。 – Erevald

関連する問題