drupal7 - menu下所有node复制一份
程序员文章站
2022-04-14 15:24:55
...
$menu_name = 'menu-main-menu-us'; function _node_setup($node) { // domain option set to United States $node->domain_site = FALSE; $node->domains = array(2 => 2); $node->subdomains = array(0 => 'United States'); return $node; } $menus = menu_tree_all_data($menu_name); function _menu_recursion($menus) { foreach($menus as $menu) { if(preg_match("/node\\/(\\d+)/i", $menu['link']['link_path'], $matches)) { $node_id = $matches[1]; // clone node $oNode = node_load($node_id); $node = clone $oNode; $node->nid = NULL; $node->vid = NULL; $node->tnid = NULL; $node = _node_setup($node); node_save($node); // reset menu $menu_obj = menu_link_load($menu['link']['mlid']); $menu_obj['link_path'] = 'node/'.$node->nid; $menu_obj['href'] = 'node/'.$node->nid; menu_link_save($menu_obj); } if(!empty($menu['below'])) { _menu_recursion($menu['below']); } } } _menu_recursion($menus);
下一篇: cocos2d-x CCMenu菜单选项