gregoirenoyelle
5/10/2015 - 6:44 AM

wp-menu-recherche

wp-menu-recherche

<!-- Structure et fonction pour le menu de la taxonomie -->

<li class="menu-item">
  <?php gn_custom_taxonomy_dropdown( 'gntx_lieux', 'lieux', 'Choisir un lieu', '71'); ?>
  <script type="text/javascript">
    var menuLieu = document.getElementById("lieux");
    function onCatChange() {
      if ( menuLieu.options[menuLieu.selectedIndex].value != -1 ) {
        location.href = "<?php echo home_url();?>/lieux/"+menuLieu.options[menuLieu.selectedIndex].value+"/";
      }
    }
    menuLieu.onchange = onCatChange;

  </script>
</li>
<?php // NE PAS METTRE CETTE BALISE PHP
/**************************
 * Menu déroulant pour les taxonomie
 * Affiche le menu déroulant
 * en fonction des paramètres
 **************************/
// use: gn_custom_taxonomy_dropdown( 'custom_taxo' )

function gn_custom_taxonomy_dropdown( $taxonomy, $id, $option, $exclude ='' ) {
  $terms = get_terms( $taxonomy, array('exclude' => $exclude ) );
  if ( $terms ) {
    printf( '<select name="%s" class="postform" id="%s">', esc_attr( $taxonomy ), esc_attr( $id ) );
    printf( '<option value"">%s</option>', esc_attr( $option )  );
    foreach ( $terms as $term ) {
      if ( $term->count < 2) continue;
      printf( '<option value="%s">%s (%s)</option>', esc_attr( $term->slug ), esc_html( $term->name ), esc_html($term->count) );
    }
    print( '</select>' );
  }
} // function gn_custom_taxonomy_dropdown()
<nav class="nav-secondary" role="navigation" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement">
  <div class="wrap">
    <ul class="menu genesis-nav-menu menu-secondary responsive-menu">

      <li class="menu-item">
        <select name="archive-dropdown" id="date">
          <option value=""><?php echo esc_attr( __( 'Select Month' ) ); ?></option>
          <?php wp_get_archives( array('format'=>'option', 'show_post_count'=>1) ); ?>
        </select>
        <script type="text/javascript">
          var menuDate = document.getElementById("date");
          function onCatChange() {
            if ( menuDate.options[menuDate.selectedIndex].value != -1 ) {
              location.href = menuDate.options[menuDate.selectedIndex].value;
            }
          }
          menuDate.onchange = onCatChange;
        </script>


      </li>


      <li class="menu-item">
        <?php gn_custom_taxonomy_dropdown( 'gntx_lieux', 'lieux', 'Choisir un lieu', '71'); ?>
        <script type="text/javascript">
          var menuLieu = document.getElementById("lieux");
          function onCatChange() {
            if ( menuLieu.options[menuLieu.selectedIndex].value != -1 ) {
              location.href = "<?php echo home_url();?>/lieux/"+menuLieu.options[menuLieu.selectedIndex].value+"/";
            }
          }
          menuLieu.onchange = onCatChange;

        </script>
      </li>

      <li class="menu-item">
        <?php gn_custom_taxonomy_dropdown( 'gntx_figure', 'figures', 'Choisir une personne', '32,67,81,90,80'); ?>
        <script type="text/javascript">
          var menuFigure = document.getElementById("figures");
          function onCatChange() {
            if ( menuFigure.options[menuFigure.selectedIndex].value != -1 ) {
              location.href = "<?php echo home_url();?>/figures/"+menuFigure.options[menuFigure.selectedIndex].value+"/";
            }
          }
          menuFigure.onchange = onCatChange;

        </script>
      </li>


    </ul>
  </div>
</nav>
<?php // NE PAS METTRE CETTE BALISE PHP

/**************************
 * Menu déroulant pour les taxonomie
 * Affiche le menu déroulant
 * en fonction des paramètres
 **************************/
// use: gn_custom_taxonomy_dropdown( 'custom_taxo' )

function gn_custom_taxonomy_dropdown( $taxonomy, $id, $option, $exclude ='' ) {
  $terms = get_terms( $taxonomy, array('exclude' => $exclude ) );
  if ( $terms ) {
    printf( '<select name="%s" class="postform" id="%s">', esc_attr( $taxonomy ), esc_attr( $id ) );
    printf( '<option value"">%s</option>', esc_attr( $option )  );
    foreach ( $terms as $term ) {
      if ( $term->count < 2) continue;
      printf( '<option value="%s">%s (%s)</option>', esc_attr( $term->slug ), esc_html( $term->name ), esc_html($term->count) );
    }
    print( '</select>' );
  }
} // function gn_custom_taxonomy_dropdown()


/**************************
 * Ajout du menu de recherche
 * après le menu principal.
 * Seulement appliqué sur
 * les archives category,
 * tax, date.
 *************************/

add_action('template_redirect','gn_affichage_menu' );
function gn_affichage_menu() {

  if ( is_category() || is_tax() || is_date() ) {
    add_action('genesis_after_header','gn_nav_search');
  }

  function gn_nav_search() { ?>

    <nav class="nav-secondary" role="navigation" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement">
      <div class="wrap">
        <ul class="menu genesis-nav-menu menu-secondary responsive-menu">

          <li class="menu-item">
            <select name="archive-dropdown" id="date">
              <option value=""><?php echo esc_attr( __( 'Select Month' ) ); ?></option>
              <?php wp_get_archives( array('format'=>'option', 'show_post_count'=>1) ); ?>
            </select>
            <script type="text/javascript">
              var menuDate = document.getElementById("date");
              function onCatChange() {
                if ( menuDate.options[menuDate.selectedIndex].value != -1 ) {
                  location.href = menuDate.options[menuDate.selectedIndex].value;
                }
              }
              menuDate.onchange = onCatChange;
            </script>


          </li>


          <li class="menu-item">
            <?php gn_custom_taxonomy_dropdown( 'gntx_lieux', 'lieux', 'Choisir un lieu', '71'); ?>
            <script type="text/javascript">
              var menuLieu = document.getElementById("lieux");
              function onCatChange() {
                if ( menuLieu.options[menuLieu.selectedIndex].value != -1 ) {
                  location.href = "<?php echo home_url();?>/lieux/"+menuLieu.options[menuLieu.selectedIndex].value+"/";
                }
              }
              menuLieu.onchange = onCatChange;

            </script>
          </li>

          <li class="menu-item">
            <?php gn_custom_taxonomy_dropdown( 'gntx_figure', 'figures', 'Choisir une personne', '32,67,81,90,80'); ?>
            <script type="text/javascript">
              var menuFigure = document.getElementById("figures");
              function onCatChange() {
                if ( menuFigure.options[menuFigure.selectedIndex].value != -1 ) {
                  location.href = "<?php echo home_url();?>/figures/"+menuFigure.options[menuFigure.selectedIndex].value+"/";
                }
              }
              menuFigure.onchange = onCatChange;

            </script>
          </li>


        </ul>
      </div>
    </nav>

  <?php } // function gn_nav_search()


}  // function gn_affichage_contenu_archive()
<nav class="nav-secondary">
  <ul class="menu genesis-nav-menu menu-secondary responsive-menu" style="display: block;">
    <li class="menu-item">
      <select name="archive-dropdown" id="date">
        <option value="">Choisir un mois</option>
        <option value="http://monsite.fr/2015/05/"> mai 2015 &nbsp;(4)</option>
        <option value="http://monsite.fr/2015/04/"> avril 2015 &nbsp;(17)</option>
        <option value="http://monsite.fr/2015/03/"> mars 2015 &nbsp;(15)</option>
        <option value="http://monsite.fr/2015/02/"> février 2015 &nbsp;(7)</option>
        <option value="http://monsite.fr/2015/01/"> janvier 2015 &nbsp;(16)</option>
        <option value="http://monsite.fr/2014/12/"> décembre 2014 &nbsp;(22)</option>
        <option value="http://monsite.fr/2014/11/"> novembre 2014 &nbsp;(11)</option>
      </select>
    </li>
  </ul>
</nav>    
<?php // NE PAS METTRE CETTE BALISE PHP
/**************************
 * Ajout du menu de recherche
 * après le menu principal.
 * Seulement appliqué sur
 * les archives category,
 * tax, date.
 *************************/

add_action('template_redirect','gn_affichage_menu' );
function gn_affichage_menu() {

  if ( is_category() || is_tax() || is_date() ) {
    add_action('genesis_after_header','gn_nav_search');
  }

  function gn_nav_search() { ?>

    <nav class="nav-secondary" role="navigation" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement">
      <div class="wrap">
        <ul class="menu genesis-nav-menu menu-secondary responsive-menu">

          <li class="menu-item"></li>

        </ul>
      </div>
    </nav>

  <?php } // function gn_nav_search()


}  // function gn_affichage_contenu_archive()
<!-- Structure et fonction pour le menu de date -->

<li class="menu-item">
  <select name="archive-dropdown" id="date">
    <option value=""><?php echo esc_attr( __( 'Select Month' ) ); ?></option>
    <?php wp_get_archives( array('format'=>'option', 'show_post_count'=>1) ); ?>
  </select>
  <script type="text/javascript">
    var menuDate = document.getElementById("date");
    function onCatChange() {
      if ( menuDate.options[menuDate.selectedIndex].value != -1 ) {
        location.href = menuDate.options[menuDate.selectedIndex].value;
      }
    }
    menuDate.onchange = onCatChange;
  </script>
</li>