Shortcode to insert menu in page body?

That code should work. Are you usign “myclass” as the class and not “.myclass”?

Is this for a specific use where class will always be the same? If you’re only looking to ever use this on one place, you can do this:

    function print_menu_shortcode($atts, $content = null) {
extract(shortcode_atts(array( 'name' => null, 'class' => null ), $atts));
return wp_nav_menu( array( 'menu' => $name, 'menu_class' => 'myclass', 'echo' => false ) );
}

add_shortcode('menu', 'print_menu_shortcode');

Then change the section ‘menu_class’ => ‘myclass’ with the class you need. this will avoid having to use the class. Again, don’t use the “.” in front of the class here.

Short code usage:

[menu name="menu_name"]

Leave a Comment