1

TheHamburgerCollection.com

My hamburger menu is working correctly on all other pages - I just don't want it to display on the home page, where it's visible at 768px and below.

footer.php is where the menu is located:

<div class="mobile-nav">
    <div class="menu-btn" id="menu-btn">
        <div></div>
        <span></span>
        <span></span>
        <span></span>
    </div>

    <div class="responsive-menu">
    <?php
        if ( ! is_front_page() && ! is_home() ) {
        wp_nav_menu();  
        } 
    ?>
    </div>
</div>

You can see that I've told it not to display the nav menu on the front page (also the home page), and it's doing this correctly - but how do I do the same thing to the hamburger menu?

I followed the instructions in this tutorial to create my hamburger menu. If I try to copy the if statement that's telling the browser to display the Nav Menu on all other pages besides the Front Page / Home Page and then paste it just before the div with a class and id "menu-btn", I get a syntax error:

<div class="mobile-nav">
    <?php if ( ! is_front_page() && ! is_home() ) {
    <div class="menu-btn" id="menu-btn">
        <div></div>
        <span></span>
        <span></span>
        <span></span>
    </div>
    ?>

    <div class="responsive-menu">
    <?php
        if ( ! is_front_page() && ! is_home() ) {
        wp_nav_menu();  
        } 
    ?>
    </div>
</div>

I'm not sure if there's a way to hide the hamburger menu on a specific page with CSS, or if I do need to use PHP or JS, where should I place the function / what function should I use?

Thank you!

2

1 Answer 1

1

You're getting a syntax error because you forgot to close off your first if. Also, you need to close off the first php block.

<div class="mobile-nav">
    <?php if ( ! is_front_page() && ! is_home() ) { ?>
    <div class="menu-btn" id="menu-btn">
        <div></div>
        <span></span>
        <span></span>
        <span></span>
    </div>
    <?php } // <-- You forgot to put this in ?>

    <div class="responsive-menu">
    <?php
        if ( ! is_front_page() && ! is_home() ) {
        wp_nav_menu();  
        } 
    ?>
    </div>
</div>
2
  • adjusted footer.php to match exactly what you suggested but still getting syntax/parse error - see homepage: thehamburgercollection.com Commented Nov 23, 2016 at 5:06
  • I got rid of the PHP just for now, but this was the error message it was showing: Parse error: syntax error, unexpected '<' in /home2/sduff2/public_html/thehamburgercollection.com/wp-content/themes/thehamburgercollection/footer.php on line 34. My full code for footer.php can be found here: pastebin.com/knLswPVp Commented Nov 23, 2016 at 5:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.