Drupal 6:在菜单项上添加子菜单项?

时间:2015-11-11 08:06:03

标签: drupal-6

我有一个钩子:

function node_field_link_menu() 
{
    $items['order_food'] = array(
        'title' => 'Products',
        'page callback' => 'node_field_link_products_page',
        'access callback' => TRUE,
        'menu_name' => 'primary-links',  
        'type' => MENU_NORMAL_ITEM,
    );
  return $items;
}

这给了我菜单项,我很满意。问题是,我希望项目在此菜单项下,所以我最终得到:

- Products
   - Product 1
   - Product 2
   - Product 3
   - Product 4

我读到你可以使用“plid”,但问题是,在这种情况下,我不知道PLID是什么,因为我刚刚创建了父。所以我不能这样做:

function node_field_link_menu() 
{
    $items['order_food/procuct1'] = array(
        'title' => 'Product 1',
        'page callback' => 'node_field_link_products_page1',
        'access callback' => TRUE,
        'menu_name' => 'primary-links',  
        'type' => MENU_NORMAL_ITEM,
        'plid' => XXX?,
    );
  return $items;
}

那么如何在Drupal 6中创建的菜单项下面添加另一个菜单项?

1 个答案:

答案 0 :(得分:0)

你所做的事情应该在没有' plid的情况下工作。 Drupal识别路径模式并为您完成工作。这意味着,如果你有一个' order_food'以及' order_food / product1'的路径,product1将成为' order_food'的孩子。 创建菜单后您需要做的就是清除Drupal的缓存。

刚试了一个新的Drupal 6实例,清除了缓存,我看到它正常工作:

$items['order_food'] = array(
    'title' => 'Product',
    'page callback' => 'node_field_link_products_page',
    'access callback' => TRUE,
    'menu_name' => 'primary-links',
    'type' => MENU_NORMAL_ITEM,
);
$items['order_food/product1'] = array(
    'title' => 'Product1',
    'page callback' => 'node_field_link_products_page1',
    'access callback' => TRUE,
    'menu_name' => 'primary-links',
    'type' => MENU_NORMAL_ITEM,
);

打开" admin / build / menu-customize / primary-links"的URL将Product1显示为Product的子项。