Wordpress Archiv Widget: gruppieren nach Jahren


June 28, 2012 at 06:22
Wordpress

Nachdem meine Einträge nun schon bis ins Jahr 2008 zurückreichen, wollte ich mein Archiv in der rechten Sidebar nach Jahren gruppieren und die einzelnen Monate nur dann anzeigen lassen, wenn man auf ein Jahr klickt. Und das geht durch folgenden code in der sidebar.php:
$args = array(
    'type'            => 'monthly',
    'limit'           => '',
    'format'          => 'html', 
    'before'          => '',
    'after'           => '',
    'show_post_count' => false,
    'echo'            => 0
);
$res = wp_get_archives( $args ); 
$archi = explode( '</li>' , $res );
$links = array();
foreach( $archi as $link ) {
    $link = str_replace( array( '<li>' , "\n" , "\t" , "\s" ), '' , $link );
    if( '' != $link )
        $links[] = $link;
    else
        continue;
}

$y = 0; 
foreach($links as $k => $v){
    $match = array();
    preg_match("/title='(.*?)'/si", $v, $match);    
    $tmp = explode(" ", $match[1]);
    if($y != $tmp[1]){
        echo "<li><b><a href='#' onclick='$(\".li_".$tmp[1]."\").show();'>".$tmp[1]."</a></b></li>";
    }
    $y = $tmp[1];
    echo "<li style='margin-left:10px;display:none;' class='li_".$tmp[1]."'>".$v."</li>";
}
Das wars! Voraussetzung dafür ist nur, dass jQuery inkludiert ist.

Tags: archiv gruppieren sidebar


Hinterlasse einen Kommentar:
Suche