2012-10-04 41 views
0

默認情況下,論壇在我的網站上啓用;我希望他們轉移到分享/論壇。我可以採取哪些不同的方法,哪一種最好?如何顯示自定義路徑上的論壇?

我試着用Pathauto模塊做這件事,但當我期望它顯示「首頁>>分享」論壇時,麪包屑正顯示「首頁>>論壇」。

回答

0

的方法有很多, 1)要麼你可以使用pathauto(其中U使用,但它使用的默認NID跟蹤東西,所以這就是爲什麼在麪包屑它顯示像) 2)使用子域模塊和換檔UR論壇(如果你的主機支持的話) 3)使用一個像phpbb這樣的獨立論壇模塊,並把它放到你想要的路徑並使用重定向。

哪個適合ü..

+0

對不起,我建議的方式都沒有。 我必須使用drupal的默認inbuilt-forum並將它放在./share/forum上 – prady00

0

如果你想只顯示在共享/論壇,論壇的頁面,你可以自定義模塊中使用下面的代碼。

function mymodule_menu_alter(&$items) { 
    if (isset($items['forum'])) { 
    $items['share/forum'] = $items['forum']; 
    unset($items['forum']); 
    } 
    if (isset($items['forum/%forum_forum'])) { 
    $items['share/forum/%forum_forum'] = $items['forum/%forum_forum']; 
    unset($items['forum/%forum_forum']); 
    } 
} 

如果您希望論壇在舊路徑和新路徑中均可見,則可以使用以下代碼。

function mymodule_menu() { 
    $items['share/forum'] = array(
    'title' => 'Forums', 
    'page callback' => 'forum_page', 
    'access arguments' => array('access content'), 
    'file' => 'forum.pages.inc', 
); 

    $items['share/forum/%forum_forum'] = array(
    'title' => 'Forums', 
    'page callback' => 'forum_page', 
    'page arguments' => array(1), 
    'access arguments' => array('access content'), 
    'file' => 'forum.pages.inc', 
); 

    return $items; 
} 

至於麪包屑,你需要實現hook_menu_breadcrumb_alter(),考慮到文檔頁面什麼報道。

實現應該考慮到,menu_get_active_breadcrumb(帳戶),然後執行以下調整工作路徑後,這個鉤子被調用:

  • 在$ active_trail最後一個環節被刪除,如果其'href'與$ item的'href'相同。發生這種情況是因爲麪包屑通常不包含到當前頁面的鏈接。
  • 如果當前的$ item是一個MENU_DEFAULT_LOCAL_TASK,$ active_trail中的(第二個)最後一個鏈接被刪除。發生這種情況時,爲了在默認本地任務的路徑上不顯示指向當前頁面的鏈接;例如當處於路徑節點/%/ view上時,麪包屑不應包含指向節點/%的鏈接。
相關問題