Rightsidebar per WP-PASW2013 modificata

21 Gennaio 2014 in PASW-2013, Sottopagine, Wordpress

Incollo qui sotto il codice della rightsidebar modificata l’estate scorsa per permettere alle “pagine archivio” di wordpress (come quelle dentro ad AT ma anche quelle con le circolari per mese ecc.)  di far vedere i widget nella barra di destra. Si tenga però conto che:

  • le modifiche sono state fatte da me che di php non capisco quasi nulla  e quindi non so esattamente perché funzionino…
  • nella sezione dei blog del sito della mia scuola (installazione separata)  ho dovuto ripristinare quella vecchia perchéquella nuova mi aveva creato qualche problema non risolto;
  • per scegliere in che pagine far uscire determinati widget bisogna usare widget logic; per esempio per il widget di AT io ho messo tutta la pappardella che segue: is_page(‘trasparenza’)||is_tax(‘tipologie’)||is_singular(‘amm-trasparente’)||is_page(‘amministrazione-trasparente’)

<div id=”rightsidebar”>
<ul>
    <li>
        <h2>Motore di ricerca interno</h2>
        <form method=”get” id=”searchform” action='<?php echo bloginfo(“home”);?>’ >
            <div><label for=”s”>Cerca:</label>
                <input type=”text” value=”” name=”s” id=”s” />
                <input type=”submit” id=”searchsubmit” value=”Cerca” />
            </div>
        </form>
    </li>
<?php
if (is_single ()) {
    $tags = wp_get_post_tags($post->ID);
    if ($tags) {
        $tag_ids = array();
        foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
        $args=array(‘tag__in’ => $tag_ids,
                    ‘post__not_in’ => array($post->ID),
                    ‘showposts’=>3, // Number of related posts that will be shown.
                    ‘caller_get_posts’=>1);
        $my_query = new wp_query($args);
        if( $my_query->have_posts() ) {
            echo ‘<li><h2>Articoli correlati</h2><ul>’;
            while ($my_query->have_posts()) {
                $my_query->the_post();
            ?>
                <li>
                    <a href=”<?php the_permalink() ?>” rel=”bookmark” title=”Permanent Link to <?php the_title_attribute(); ?>”><?php the_title(); ?></a>
                </li>
            <?php
            }
            echo ‘</ul></li>’;
        }
    }
}
if (is_front_page ()||is_home ()) {
?>
      <?php if ( function_exists(‘ec3_get_calendar’) ){?>
      <li>
          <h2>Calendario eventi</h2>
          <?php ec3_get_calendar(); ?>
      </li>
     <?php } ?>
<?php
    
}
if (is_page () and !is_front_page ()){
    $post->ID=$IdPagina;
    $post->post_title=$TitoloPagina;
    
}
if (is_category ()||is_archive () || is_page()|| is_singular() ) {
    if ( function_exists(‘dynamic_sidebar’) && dynamic_sidebar(2) ) : endif;
    
    //verifica se � una categoria
    if (isset($_GET[‘catid’]) && !empty($_GET[‘catid’])) {
        $catid = $_GET[‘catid’];
    }else{
        $catid = $categoria_pagina;
    }
    if (!isset($catid)) {
        //$categoria = get_the_category();
        //$catid1 = $categoria[0]->cat_ID;
        $catid = get_query_var(‘cat’);
    }
//echo $categoria.”   “.$catid1.”  “.$catid;
    $categoryname = get_cat_name($catid) . ” “;
    $category = “catid=”.$catid;
    $obj_cat = get_category ($catid);
    if (is_category()||is_archive()||is_tag()||is_page_template(‘page4miur.php’)) {
        if(isset($catid)) {
            $cat = get_category($catid);
            $parent = $cat->category_parent;
            $querystr = “SELECT wpostmeta.post_id
                         FROM $wpdb->postmeta wpostmeta
                          WHERE wpostmeta.meta_key = ‘categoria’
                          AND wpostmeta.meta_value = ‘”. $catid .”‘”;
            $name = $wpdb->get_var($querystr);
            $post_id = get_post($name);
            $title = $post_id->post_title;
            $url = get_permalink($name);
            if(!is_category() and !is_archive()){
                echo ‘<li><h2><a href=”‘.$url. ‘”>’.$title.'</a></h2><ul>’;
                wp_list_pages(‘&title_li=&child_of=’.$name);
// qui dobbiamo aggiungere la chiusura del ul e del li aggiunto due righe sopra 🙂 — ronny
// da notare che qui se fai la validazione ti da errore se non ci sono pagine listate perche apre e chiude un ul senza metterci dentro nulla — ronny
                    echo ‘</ul></li>’;
            }
        }
    }
}
if (!empty($catid)) {
    $Anno=0;
    $Mese=0;
    Pasw13_MeseAnnoCorrenti(&$Anno,&$Mese);
    $ArchiviMesiAnno=Pasw13_ElencoAnniMesi(“mesi”,$catid,$Anno);
    $ArchiviAnni=Pasw13_ElencoAnniMesi(“anni”,$catid,$Anno);
    if (!empty($ArchiviMesiAnno) Or !empty($ArchiviAnni)){
?>
    <!– Inizio Modifica Tutti gli articoli della categoria TOLTO VEDI FILE ORIGINALE–>
        
<?php
        if(!empty($ArchiviMesiAnno)){?>
    <!–Fine Modifica tutti gli articoli della categoria –>
            <li>
                <h2>Archivio <?php echo $Anno;?></h2>
                <ul>
                    <?php    echo $ArchiviMesiAnno; ?>
                </ul>
            </li>
<?php   }
        if (!empty($ArchiviAnni)){?>
            <li>
                <h2>Archivio per anni</h2>
                <ul>
                    <?php echo $ArchiviAnni; ?>
                </ul>
            </li>
<?php
        }
    }
}
if (!empty($catid)) {
    wp_list_categories(‘title_li=<h2>Sotto-categorie</h2>&orderby=id&child_of=’.$catid);
    }
if (!empty($blogroll)) {
    wp_list_bookmarks(‘&categorize=0&category=’.$blogroll. ‘&orderby=order&category_orderby=order’);
   }
if (!empty($boxdestra)) {
    echo $boxdestra;
  }
if (is_front_page ()||is_home ()) {
    if ( function_exists(‘wp_tag_cloud’) ) :
?>
<?php
    endif;
 }
 ?>
</ul>
</div>

Lascia una risposta

Devi essere loggato per inviare un commento.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.