0

システムメニューに使用するカスタムメニューを指定する方法を理解しようとしています。tplにカスタムメニューを含めることができることはわかっていますが、system_main_menuをオーバーライドして、別のメニューを使用するように指示してください。これは前処理関数で行うと思いますが、Drupalは初めてで、どこから始めればよいかわかりません。グーグルした後、私は見つけました:

links__system_main_menu

それが前処理関数に使用するものだと思いますが、どのカスタムメニューを使用するかを指示する方法を知る必要があります。

編集:

あるいは、カスタムメニューの1つを使用して、テーマのシステムメインメニューをどのように定義するかがより良い質問になるかもしれません。

4

1 に答える 1

0

あなたの管理者に行きます

管理者/構造/メニュー/設定

そこで、デフォルトのメインメニューを設定できます

更新: これは私がdrupal.orgで見つけたものです

function yourtheme_menu_link__main_menu(array $variables) {
  $element = $variables['element'];
  $sub_menu = '';

  if ($element['#below']) {
    $sub_menu = drupal_render($element['#below']);
  }

  $element['#localized_options']['html'] = TRUE;
  $linktext = '<span class="your_class">' . $element['#title'] . '</span>';

  $output = l($linktext, $element['#href'], $element['#localized_options']);
  return '<li' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
}

広報

于 2012-11-16T19:41:50.423 に答える