2010-08-09 72 views
0

我在2個不同的塊中使用2個不同的菜單。它們根據用戶訪問的頁面啓用/禁用。2在Drupal中的2個菜單的麪包屑

現在,我有一個麪包屑問題:他們只能使用主菜單,而不是第二個。

我需要自動將breadcrumbs作爲其他菜單。

感謝

回答

0

Drupal的菜單系統只設置一個同時啓動菜單:如果你想擁有的在同一時間在同一頁上的兩個麪包,你將需要使用menu_set_active_menu_name()做一些來回玩雜耍。

但是,如果您只想顯示一個,請考慮使用Menu Breadcrumb模塊,該模塊根據頁面自動設置活動菜單。您還可以爲存在於多個菜單中的頁面設置菜單優先級。

+0

,我已經在設置中選中這兩個菜單。但我只能優先選擇兩個菜單中的一個。有些頁面屬於兩個菜單(我有2種語言,每個菜單根據所選語言顯示)。總之,如果頁面翻譯成兩種語言並且屬於兩個菜單,那麼即使我使用第二個菜單,第一個菜單也總是被選爲麪包屑。 – aneuryzm 2010-08-09 09:21:58

+0

這是Drupal核心的行爲:一次只有一個活動菜單。如果您只是嘗試本地化相同的內容,則設置兩個不同的菜單是不可行的:使用核心的內容翻譯和區域設置模塊來提供相同內容和IA的語言特定版本。 – 2010-08-09 21:56:22

+0

關鍵是我的英文菜單有完全不同的意大利語結構。但很多網頁都有英文和意大利文版本。 – aneuryzm 2010-08-10 13:22:36

0

這個問題是不是嚴格編程相關然而,:

Drupal的麪包屑按照菜單項,因爲它們被啓用。無論菜單項是否可見,也不管菜單(容器)如何保存菜單。不在菜單中的項目(如節點!)不會有面包屑。

也就是說,有一個例外,模塊可以用drupal_set_breadcrumb()覆蓋面包屑,如果他們這樣做,最後一個設置breadcrumb可以設置breadcrumb。例如。分類模塊在分類頁面上設置麪包屑。

  1. 您可以在模塊中設置硬編碼的麪包屑。
  2. 您應該調查爲什麼麪包屑在這種情況下不遵循菜單。
  3. 你可以調查是允許調整的痕跡行爲實際上,我使用「菜單面包屑」的模塊,如hansel