【问题标题】:Wordpress: programmatically create sub menu for frontendWordpress:以编程方式为前端创建子菜单
【发布时间】:2018-04-19 02:26:45
【问题描述】:

我想编写一个 wordpress 插件,您可以在其中添加页面。 如果您提交页面,它还应该在“团队”菜单下创建一个子菜单。

到目前为止,我可以通过我的代码创建页面,但不能通过子菜单。

我尝试了在 google 上找到的不同功能,但没有任何效果。

有谁知道有帮助的函数或脚本吗?

【问题讨论】:

标签: mysql wordpress plugins


【解决方案1】:

是的,当然,请使用以下示例来帮助您入门。如果您没有定义多个菜单对象,则检查您是否在正确菜单中的子句可能需要更改或删除。

menu_item_parent 至关重要,它是父项的 uid。通过查看您的前端源代码找到它。您应该会发现,通过 WP 菜单创建函数插入的每个菜单项都会插入唯一的项 id。

// add a sub menu dynamically via code!
function aj_add_menu_item( $items, $args ) {

// check we are in the right menu
if( $args -> theme_location =="primary" ) {

    $new_links = array();
    // Create a nav_menu_item object
    $newItem = array(
        'title'            => "Offers",
        'menu_item_parent' => 71,
        'ID'               => 'loginout',
        'db_id'            => '12312332', // something random
        'url'              => "offers",
        'classes'          => array( 'menu-item' )
    );

    $items[] = (object) $newItem;   // add to end of existing object.    
    menu_item_parent value will ensure it goes in right place
    return $items;

    }else{
        return $items;
    }
}
add_filter( 'wp_nav_menu_objects', 'aj_add_menu_item', 10, 2 );

【讨论】:

    猜你喜欢
    • 2011-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 1970-01-01
    • 1970-01-01
    • 2013-02-17
    • 2013-06-14
    相关资源
    最近更新 更多