Guest

Untitled

By: a guest on Dec 30th, 2009  |  syntax: PHP  |  size: 1.26 KB  |  hits: 1,066  |  expires: Never
download  |  raw  |  embed  |  report abuse
This paste has a previous version, view the difference. Copied
  1. == Fichier functions.php de votre thème ==
  2.  
  3. <?php
  4. if ( function_exists('register_sidebar') ) {
  5.  
  6.         // Default sidebar
  7.         register_sidebar(array(
  8.                 'id' => "sidebar-default",
  9.                 'name' => 'Sidebar par défaut',
  10.         'before_widget' => '<li id="%1$s" class="widget %2$s">',
  11.         'after_widget' => '</div></li>',
  12.         'before_title' => '<h2 class="widgettitle">',
  13.         'after_title' => '</h2><div class="widget-inner">',
  14.     ));
  15.  
  16.         // One sidebar by page
  17.         $_pages = get_pages();
  18.         foreach( (array) $_pages as $_page ) {
  19.             register_sidebar(array(
  20.                         'id' => "sidebar-$_page->ID",
  21.                         'name' => esc_html($_page->post_title),
  22.                 'before_widget' => '<li id="%1$s" class="widget %2$s">',
  23.                 'after_widget' => '</div></li>',
  24.                 'before_title' => '<h2 class="widgettitle">',
  25.                 'after_title' => '</h2><div class="widget-inner">',
  26.             ));
  27.         }
  28.         unset($_pages, $_page);
  29.         wp_reset_query();
  30.  
  31. }
  32. ?>
  33.  
  34. == Fichier sidebar.php de votre thème (example) ==
  35.  
  36. <?php    
  37. global $wp_query;
  38. if ( function_exists('dynamic_sidebar') ) {
  39.         if ( is_page() && is_active_sidebar( 'sidebar-' . $wp_query->queried_object_id ) ) {
  40.                 dynamic_sidebar( 'sidebar-' . $wp_query->queried_object_id );
  41.         }  else {
  42.                 dynamic_sidebar( 'sidebar-default' );
  43.         }
  44. }
  45. ?>