0

メニュー項目にクラス/ID をアタッチできる関数をいくつか見てきました。残念ながら、私のユースケースにはどれも当てはまりません。私がやりたいことは、リンクされたアイテムのコンテンツ タイプに基づいて、任意のメニュー アイテムにクラス/ID を割り当てることです。

たとえば、「内部」と呼ばれるコンテンツ タイプがあります。これは、ビューアーが受け入れられた IP 範囲内にある場合にのみ表示されます (別のサイトを持たずにイントラネット ページを持つ私の方法です)。これらのリンクのスタイルを変えたいと思っています。

同じように、メニュー内の外部リンクにもスタイルを設定できるようにしたいと考えています。

注:メニュー属性モジュール ( http://drupal.org/project/menu_attributes ) を認識しています。これにより、独自の ID をメニュー項目に割り当てることができますが、100 をはるかに超えるコンテンツがあるため、自動化が必要です。サイトの編集者。このようなことは、理想的には自動化されたプロセスです。

4

2 に答える 2

0

クラスをtheme_menu_itemまたはtheme_menu_item_linkに追加できます (li または a のどちらで使用するかによって異なります)。次に、特定のメニュー項目のコンテンツ タイプを特定する方法が必要です。トリックnode_load(array('path' => $link['href']))を行う必要があります(テストされていません)。

于 2010-01-27T06:27:41.170 に答える
0

構成ディレクトリに別のテーマをロードできます。おそらく、IP 範囲のホスト名が必要になるでしょう。

サイト/デフォルト/テーマ/my_theme
サイト/intranet.tld/themes/my_theme

テーマをシンボリック リンクし、必要な html/css を上書きすることで、重複を避けることができます。

settings.php のドキュメントを参照してください

それは多くの方法の1つにすぎません...

于 2010-01-27T04:14:34.260 に答える