• User

    Help!! Come Pubblicare una pagina senza farla apparire nella barra???

    ciao raga,
    per ragioni di spazio nella barra principale, volevo creare una pagina chiamata fotogallery alla quale accedere tramite un link posto in un'altra barra (scusate se è poco chiao ma se visitate il mio sito in firma capte meglio quello che voglio dire!)
    Solo che non so come fare!
    Se metto la pagina come privata, raggiungo solo parzialmente il risultato: per vederne i contenuti devo essere connesso come admin!

    Qualcuno può darmi una mano???
    Grazie!


  • User

    sù sù, ragazzi, qualcuno avrà pure un'idea!


  • User Attivo

    Ciao blaze++, ci sono vari modi,
    Alcuni template utilizzano dei widgets, e alcuni widgets ti permettono ti scegliere quali pagine vuoi che vengano mostrate nella barra e quali no. Puoi cercare list pages plugin oppure list pages widget su google ...

    Altrimenti puoi anche modificare il codice a mano, se trovi il file che stampa la barra, troverai un codice simile a list_pages ... se leggi la documentazione qui http://codex.wordpress.org/Template_Tags/wp_list_pages vedrai che puoi inserire un comando exclude ed escludere una specifica pagina dalla lista.
    Esempio se vuoi escludere le pagine con ID 7 13 26 e 35:

    wp_list_pages('exclude=7,13,26,35&title_li=<h2>' . __('Pages') . '</h2>' ); ?>


  • User

    Grazie!
    sto cercando il tag wp_list_page... non riesco a trovarlo ma non demordo!
    Appena lo trovo provo a modificarlo


  • User

    Il fatto è che voglio escludere la pagina dalla barra di navigazione.
    L'unico codice che forse c'entra qualcosa dovrebbe essere questo

    <!-- navigation ................................. -->
    <div id="navigation">
    <ul>
    <li<?php if (is_home()) echo " class="selected""; ?>><a href="<?php bloginfo('url'); ?>">Home</a></li>
    <?php
    $pages = get_pages();
    if ($pages) {
    foreach ($pages as $page) {
    $page_id = $page->ID;
    $page_title = $page->post_title;
    $page_name = $page->post_name;
    if ($page_name == "archives") {
    (is_page($page_id) || is_archive() || is_search() || is_single())?$selected = ' class="selected"':$selected='';
    echo "<li".$selected."><a href="".get_page_link($page_id)."">Archives</a></li>\n";
    }
    elseif($page_name == "home") {"";
    }
    elseif($page_name == "about") {
    (is_page($page_id))?$selected = ' class="selected"':$selected='';
    echo "<li".$selected."><a href="".get_page_link($page_id)."">About</a></li>\n";
    }
    elseif ($page_name == "about_short") {/ignore/}
    else {
    (is_page($page_id))?$selected = ' class="selected"':$selected='';
    echo "<li".$selected."><a href="".get_page_link($page_id)."">$page_title</a></li>\n";
    }
    }
    }
    ?>
    </ul>

    </div>
    <!-- /navigation -->

    Forse è questo quello che devo modificare?


  • User Attivo

  • User Attivo

    Ciao, il tuo codice della barra e' diverso da come mi aspettavo,
    credo che sia il codice giusto. Il punto in cui devi agire e' alla fine, dove dice:
    [php]
    else {
    (is_page($page_id))?$selected = ' class="selected"':$selected='';
    echo "<li".$selected."><a href="".get_page_link($page_id)."">$page_title</a></li>\n";
    }
    [/php]
    questo e' il codice di quando stampa qualsiasi altra pagina che non sia home e che non sia about e che non sia about_short

    quindi il quel pezzo devi aggiungere un qualcosa che controlli.tipo

    if($page_name != "nome della pagina da NON listare")

    diventerebbe
    [php]
    else if($page_name != "nome della pagina da NON listare"){
    (is_page($page_id))?$selected = ' class="selected"':$selected='';
    echo "<li".$selected."><a href="".get_page_link($page_id)."">$page_title</a></li>\n";
    }
    [/php]

    oppure usando l'id della pagina da non listare:
    [php]
    elseif($page_id != 37){
    (is_page($page_id))?$selected = ' class="selected"':$selected='';
    echo "<li".$selected."><a href="".get_page_link($page_id)."">$page_title</a></li>\n";
    }
    [/php]
    se il secondo non funzia, prova con le virgolette attorno al numero ID tipo: '37'

    altrimenti puoi fare il contrario [aggiungi questo dopo quello del about_short]
    elseif ($page_name == "pagina_da_ignorare") {/ignore/}