Support » Allgemeine Fragen » Seite in sidebar festellen/ermitteln/ausgeben – Variable Sidebar Content

  • Arson B

    (@arson-b)


    Guten Tag!

    Ich möchte in meiner Sidebars via Benutzerdefinierten Feldern unterschiedlichen Content ausgeben. Das funktioniert auf auch schon ganz gut:
    Zb. auf seite „abc“ wird wird in der Sidebar der Teaser „teaser-abc“ ausgegeben.

    Aber, auf der Homepage wird der Teaser auch ausgegeben!…
    Meine Homepage listet die 3 aktuellsten Beiträge (Pages) auf und wenn „abc“ der letzte Beitrag ist, wird der Teaser ausgegeben:(

    Ich weiß nicht wie ich in der Sidebar feststellen kann das ich mich auf der Homepage befinde.

    Die Sidebar denkt immer dass sie auf der jeweils letzten im Content per Loop ausgegebenen Seite ist, also „abc“.

    Dieses Script in der Sidebar gibt auf meiner Homepage „abc“ aus!

    <?php
    $myID=get_the_ID();
    echo "Titel: ".get_the_title(get_the_ID());
    ?>

    Hat jemand eine Idee wie man in der Sidebar feststellen kann auf welcher TopSeite man sich befindet?
    (ohne eine zweite, dritte, vierte sidebar anzulegen)

    🙂

    Ach hier noch einen Link bei dem ich gehofft hatte, dass er mir hilft:
    http://codex.wordpress.org/Conditional_Tags
    und dann bis „Variable Sidebar Content“ Scrollen.

    Doch leider funktioniert is_home() nicht, sondern die Seit wird als abc erkannt;(

    <!-- begin sidebar -->
    <div id="sidebar">
    <?php
    // let's generate info appropriate to the page being displayed
    if (is_home()) {
            // we're on the home page, so let's show a list of all top-level categories
            echo "<ul>";
            wp_list_cats('optionall=0&sort_column=name&list=1&children=0');
            echo "</ul>";
    } elseif (is_category()) {
            // we're looking at a single category view, so let's show _all_ the categories
             echo "<ul>";
            wp_list_cats('optionall=1&sort_column=name&list=1&children=1&hierarchical=1');
            echo "</ul>";
    } elseif (is_single()) {
            // we're looking at a single page, so let's not show anything in the sidebar
    } elseif (is_page()) {
            // we're looking at a static page.  Which one?
            if (is_page('About')) {
                 // our about page.
                 echo "<p>This is my about page!</p>";
            } elseif (is_page('Colophon')) {
                 echo "<p>This is my colophon page, running on WordPress " . bloginfo('version') . "</p>";
            } else {
                  // catch-all for other pages
                  echo "<p>Vote for Pedro!</p>";
            }
    } else {
            // catch-all for everything else (archives, searches, 404s, etc)
            echo "<p>Pedro offers you his protection.</p>";
    } // That's all, folks!
    ?>
    <form id="searchform" method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    <div>
    <input type="text" name="s" id="s" size="15" />
    <input type="submit" value="<?php _e('Search'); ?>" />
    </div>
    </form>
    
    </div>

    Jetzt hab ich das

    <?php
    $myID=get_the_ID();
    echo "Titel: ".get_the_title(get_the_ID());
    ?>

    mal im Footer getestet, und da wird die Homepag erkannt…

Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)
  • Thread-Ersteller Arson B

    (@arson-b)

    So speziell ist mein Problem gar nicht
    Habe gerade entdeckt, dass das auch beim ganz simplen auflisten von posts passiert.

    Z.B. beim klick auf Kategorie „abc“ werden alle dazugehörigen Posts aufgelistet. Die Sidebar haut bei diesem Code

    <?php
    $myID=get_the_ID();
    echo "Titel: ".get_the_title(get_the_ID());
    ?>

    auch die ID des letzten Post raus…

    Thread-Ersteller Arson B

    (@arson-b)

    Vielen Dank für Ihre Aufmerksamkeit:)
    Ich habe fertig:
    nach :
    wp_reset_query();
    funktioniert auch
    is_home()
    wieder

    das wars
    ( wie schliesse ich einen Beitrag???)

Ansicht von 2 Antworten - 1 bis 2 (von insgesamt 2)
  • Das Thema „Seite in sidebar festellen/ermitteln/ausgeben – Variable Sidebar Content“ ist für neue Antworten geschlossen.