Skip to content

Instantly share code, notes, and snippets.

@MatRouault
Last active April 14, 2016 19:47
Show Gist options
  • Save MatRouault/4fe490c3531430155527 to your computer and use it in GitHub Desktop.
Save MatRouault/4fe490c3531430155527 to your computer and use it in GitHub Desktop.
Create a secondary sticky menu in Beans Framework and add this below header
<?php
// Do not include the opening php tag if it is already included in your file.
/* This code snippet adds a secondary sticky navigation in a subheader in #BeansTheme Framework.
* You can paste this in your functions.php file or add it in a a child-theme customization plugin.
* Some refs :
* http://www.getbeans.io/
* http://getuikit.com/docs/subnav.html
* http://getuikit.com/docs/sticky.html
* http://www.getbeans.io/code-reference/functions/beans_primary_menu/
* https://github.com/ThemeButler/child-theme-modifications-for-beans
*/
// Enqueue UIkit components.
add_action( 'beans_uikit_enqueue_scripts', 'mytheme_enqueue_uikit_components' );
function mytheme_enqueue_uikit_components() {
// Add sticky component.
beans_uikit_enqueue_components( array( 'sticky' ), 'add-ons' );
}
add_action( 'init', 'mytheme_register_sub_navigation' );
// Register sub navigation.
function mytheme_register_sub_navigation() {
register_nav_menus( array(
'secondary' => __( 'Secondary Menu', 'mytheme' ),
) );
}
// Add add subnavigation after the header closing markup.
add_action( 'beans_header_after_markup', 'mytheme_secondary_menu' );
function mytheme_secondary_menu() {
?>
<div data-uk-sticky class="tm-subnavigation">
<div class="uk-container uk-container-center">
<nav class="tm-secondary-menu uk-float-right uk-block" role="role" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement">
<?php wp_nav_menu( array(
'theme_location' => has_nav_menu( 'secondary' ) ? 'secondary' : '',
'fallback_cb' => 'beans_no_menu_notice',
'container' => '',
'menu_class' => 'uk-subnav uk-subnav-line uk-margin-bottom-remove',
'beans_type' => 'subnav'
) ); ?>
</nav>
</div>
</div>
<?php
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment