PHP versteckt div auf bestimmten Seiten?

Lesezeit: 3 Minuten

Benutzer-Avatar
js111

Meine Seite befindet sich hier: http://math.pixelworklab.com/home-study

Ich möchte die Navigationsleiste nur auf zwei Seiten ausblenden

Kasse

Wagen

Verhindern Sie grundsätzlich, dass der Benutzer beim Auschecken mit anderen Links abgelenkt wird.

Wie würde ich dieses div auf diesen Seiten mit einer IF-Anweisung verstecken?

AKTUALISIEREN:

/* Navigation */

if ( ! function_exists( 'woo_nav' ) ) {
    function woo_nav() { 
        global $woo_options;
        woo_nav_before();
?>

<?php if (strpos($_SERVER['REQUEST_URI'],'/checkout/') === false 
       || strpos($_SERVER['REQUEST_URI'],'/cart/') === false ):?>

    <div id="navigation" class="col-full">
        <?php woo_nav_inside(); ?>
        <?php
        if ( function_exists( 'has_nav_menu' ) && has_nav_menu( 'primary-menu' ) ) {
            wp_nav_menu( array( 'sort_column' => 'menu_order', 'container' => 'ul', 'menu_id' => 'main-nav', 'menu_class' => 'nav fl', 'theme_location' => 'primary-menu' ) );
        } else {
        ?>
        <ul id="main-nav" class="nav fl">
            <?php 
            if ( get_option( 'woo_custom_nav_menu' ) == 'true' ) {
                if ( function_exists( 'woo_custom_navigation_output' ) )
                    woo_custom_navigation_output( "name=Woo Menu 1" );

            } else { ?>

                <?php if ( is_page() ) $highlight = "page_item"; else $highlight = "page_item current_page_item"; ?>
                <li class="<?php echo $highlight; ?>"><a href="https://stackoverflow.com/questions/12222756/<?php echo home_url("https://stackoverflow.com/" ); ?>"><?php _e( 'Home', 'woothemes' ); ?></a></li>
                <?php wp_list_pages( 'sort_column=menu_order&depth=6&title_li=&exclude=" ); ?>
            <?php } ?>
        </ul><!-- /#nav -->
        <?php } ?>  

        <?php endif;?>
    </div><!-- /#navigation -->
<?php
        woo_nav_after();
    } // End woo_nav()
}

Benutzer-Avatar
Ibu

Wie wäre es, wenn Sie die Navigation nur anzeigen, wenn es sich nicht um diese Seiten handelt:

<?php if (strpos($_SERVER["REQUEST_URI'],'/checkout/') === false 
       || strpos($_SERVER['REQUEST_URI'],'/cart/') === false ):?>
<div ... navigation ...</div>
<?php endif;?>

  • Also habe ich mein Nav-Div darin eingeschlossen und es versteckt es auf allen Seiten. Code oben hinzugefügt.

    – js111

    31. August 2012 um 22:04 Uhr

  • Die Logik war eigentlich das Gegenteil. Ich habe meinen Code aktualisiert, siehe oben. !== ist jetzt ===

    – Ibu

    31. August 2012 um 22:07 Uhr

  • vielleicht b/c in einer if-Anweisung?

    – js111

    31. August 2012 um 22:22 Uhr

  • versuchen Sie, den Wert von zu drucken $_SERVER['REQUEST_URI'] und sehen, ob Sie das Richtige vergleichen

    – Ibu

    31. August 2012 um 22:39 Uhr

Sie können das bedingte Tag verwenden ist Seite

Dies prüft, ob die Seiten angezeigt werden oder nicht. Fügen Sie Ihren Navigationsmenücode in die else-Bedingung ein.

<?php
if(is_page(array(42,43))) {
// Returns true when the Pages displayed is either page ID 42 or 43. Change it to the page id of cart and checkout.

} else {

<div ... navigation ...</div>

}
?>

Ich hoffe, das wird Ihnen helfen. Prost!!!

Nun, ich denke, Sie könnten so etwas tun:

<?php if (!in_array($post->ID, array(id_of_checkout_page, id_of_cart_page)) { ?>
    <div>...</div>
<?php } ?>

Können Sie für diese Seiten verschiedene CSS-Dateien verwenden? Wenn Sie dann eine Klasse in Ihre hinzufügen können divsagen wir optional_hideund fügen Sie diese beiden Dateien in die CSS-Datei ein:

div.optional_hide {display:none;}

Bei den restlichen Seiten kann diese Zeile fehlen.

ich denke, dass @Grzegorz gab eine sehr einfache und elegante Lösung!

In jedem Fall können Sie die Doppelklasse verwenden div :

<div class="to_be_seen invisible">Bla bla blah...</div> 

mit dem Code dessen, was Sie sehen/verbergen möchten, und einem Aufruf für das CSS in der Vorlage für bestimmte Seiten:

<style>
.to_be_seen {color:red;...}
.invisible {display:none;}
</style>

1351730cookie-checkPHP versteckt div auf bestimmten Seiten?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy