2

私は drupal テーマをかなりうまくいじっていました (少なくとも、それは私が思うことです)。壁。

css スタイルを div、リンク、およびテキストに適用できましたが、おそらくいくつかの css スプライト メニュー手法を使用して、プライマリ (およびセカンダリ) リンク メニューをさらにカスタマイズしたいと考えています。プロセス中の drupal 独自の php の。または、実際にコードを書き直す必要がある場合でも、私はまだプログラマーではありませんが、気にしません。

私はいくつかのサイトを回ってきましたが、特に役立つものは何もないので、誰かが私を正しい方向に向けることができれば、とても感謝しています.

事前に感謝します。

4

2 に答える 2

0

メニュー項目ごとに id のようなクラスを追加できます - この関数を template.php に追加します。

function mythemename_menu_item_link($link) {
  if (empty($link['localized_options'])) {
    $link['localized_options'] = array();
  }

  // LOOK HERE
  // add a key for main menu items, so we can theme each item in a different way
  // add this class only for a specific menu
  if ($link['menu_name'] == 'menu-menu-mymenu') {
    if ($link['localized_options']['attributes']['class']) {
      $link['localized_options']['attributes']['class'] .= ' menu-'. $link['mlid'];
    }
    else {
      $link['localized_options']['attributes']['class'] = 'menu-'. $link['mlid'];
    }
  }

  return l($link['title'], $link['href'], $link['localized_options']);
}

このコードはすっきりしていますが、読みやすいように行を追加しました。

于 2011-07-27T10:50:22.457 に答える
0

あなたの質問を正しく理解できたら、メニューにカスタム クラス/ID を追加してください。これは、特定のメニューの theme_menu_tree をオーバーライドすることで実行できます。template.php ファイルに以下を追加して、メイン メニューにこれを行います。

function THEMENAME_menu_tree__main_menu($variables){
return '<ul class="menu main-menu">' . $variables['tree'] . '</ul>';
}

お役に立てれば。

テンプレート関数などの提案を提供するthemerモジュールも参照してください。

乾杯、ヨルゲン

于 2011-01-26T18:15:20.640 に答える