Wpcours

Des tuto, thèmes et plugins pour Wordpress

  • WORDPRESS
  • TUTORIELS
  • PLUGINS
  • WP-SEO
  • THEMES
  • Blogger
  • Contact

Ajouter une barre de recherche au menu principal de votre site sans plugin

Màj le 22 avril 2021

Une barre de recherche est un élément très important qui offre à vos visiteurs la possibilité de trouver facilement ce qui ils cherchent. Dans ce tutoriel, on va apprendre comment ajouter facilement une barre de recherche à votre site sous Wordpress. On va ce baser sur le thème Genesis comme exemple, pour y ajouter une barre avec effet toggle.

Barre de recherche sans plugin avec effet toogle

Attention : Avant toute manipulation, il est toujours important de faire une sauvegarde de votre site ( au minimum une sauvegarde de base de donnée et des fichiers de votre thème actuel).

barre de recherche avec effet toogle pour wordpress

La première chose à faire est de créer un fichier javascript avec votre Bloc note, nommé le  » global.js », ensuite copier le code ci-dessous et coller le dans votre fichier global.js :

jQuery(function( $ ){

	$('#main-nav-search-link').click(function(){
		$('.search-div').show('slow');
	});

	$("*", document.body).click(function(event){
		// event.stopPropagation();
		var el = $(event.target);
		var gsfrm = $(el).closest('form');
		if(el.attr('id') !='main-nav-search-link' && el.attr('role') != 'search' && gsfrm.attr('role') != 'search'){
			$('.search-div').hide('slow');
		}
	});

});

A l’aide d’un logiciel FTP comme Filezilla, envoyer ce fichier (global.js) vers le dossier de votre thème actuel à l’emplacement suivant :/js/global.js

La deuxième étape : Ajouter le code suivant dans Functions.php de votre thème :

// Add search 
//* Enqueue scripts and styles
add_action( 'wp_enqueue_scripts', 'custom_enqueue_scripts_styles' );
function custom_enqueue_scripts_styles() {
	wp_enqueue_script( 'global', get_bloginfo( 'stylesheet_directory' ) . '/js/global.js', array( 'jquery' ), '1.0.0', true );

}

add_filter( 'wp_nav_menu_items', 'theme_menu_extras', 10, 2 );
/**
 * Filter menu items to append a search form.
 *
 * @param string   $menu HTML string of list items.
 * @param stdClass $args Menu arguments.
 *
 * @return string Amended HTML string of list items.
 */
function theme_menu_extras( $menu, $args ) {

	if ( 'primary' !== $args->theme_location )
		return $menu;

	$menu .= '<li class="search"><a id="main-nav-search-link" class="icon-search"></a><div class="search-div">' . get_search_form( false ) . '</div></li>';
	
	return $menu;

}

//* Customize search form input button text
add_filter( 'genesis_search_button_text', 'sp_search_button_text' );
function sp_search_button_text( $text ) {
	return esc_attr( 'Ok' );
}

La dernière étape : Ajouter le code Css suivant au fichier style.css de votre thème :

/*
Animated Search Form
---------------------------------------------------------------------------------------------------- */

.nav-primary .genesis-nav-menu > .search {
	display: inline-block;
	position: relative;
	width: auto;
	padding: 0;
}

li a.icon-search:before {
	font-family: icomoon;
	font-weight: normal;
	font-style: normal;
	text-decoration: inherit;
	content: "\f002";font-size:18px;
}

li a.icon-search {
	cursor: pointer;
}

/*li a.icon-search:hover {
	border-bottom: none;
}*/

.search-div {
	display: none;
	position: absolute;
	z-index: 10;
	right: 0;
	width: 700px;
	/*padding: 4px;*/
	-webkit-border-radius: 0 0 6px 6px;
	border-radius: 0 0 6px 6px;
	background: #171616;
	margin-top: -40px;
}

.search-div .search-form {
	position: relative;
}

.search-div .search-form input[type="search"] {
	width: 100%;
padding: 10px;
font-size: 16px;
background-color:
#f2f2f2;
border: 1px solid #fd043c;
}

.search-div .search-form input[type="submit"] {
	position: absolute;
	right: 2px;
	bottom: 1px;
	padding: 10px 13px;
	-webkit-border-radius: 0;
	border-radius: 0;
}

/* Clear search field placeholder text on focus */
input:focus::-webkit-input-placeholder {
	color: transparent;
}
input:focus:-moz-placeholder {
	color: transparent;
} /* Firefox 18- */
input:focus::-moz-placeholder {
	color: transparent;
} /* Firefox 19+ */
input:focus:-ms-input-placeholder {
	color: transparent;
} /* oldIE ;) */

@media only screen and (max-width: 960px) {
	.nav-primary .genesis-nav-menu > .search {
		display: block;
		text-align: left;
	}
	.search-div {
		left: 0;width:auto;
	}
}

@media only screen and (max-width: 340px) {
	.search-div {
		width: auto;
	}
}

Maintenant sauvegarder vos modification et n’oublier pas de vider le cache de votre site si vous utiliser un plugin de cache . visitez votre site pour voir la barre de recherche avec effet toogle en action.

Espérant que ce petit tutoriel vous aidera à ajouter une barre de recherche au menu principal de votre site. la barre de recherche a été testé avec le thème Genesis Framwork et elle marche parfaitement.


Vous aimerez également...

  • Optimisez vos images pour accélérer votre blog WordPress
  • 3 méthodes pour supprimer la date des articles sur WordPress
  • Ajouter le bouton « Retour haut de page » à votre blog sans plugin
  • Utiliser le CDN Fonte Awesome pour accélérer le chargement de votre site
  • Comment déplacer le dossier médias de WordPress vers un sous-domaine?
  • Trouver et réparer les liens cassés dans WordPress (Méthodes gratuites)

Classé sous :Tutoriels

Accueil / Tutoriels / Ajouter une barre de recherche au menu principal de votre site sans plugin

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ne manquez plus rien
Abonnez-vous

Abonnez-vous dès maintenant à la Newsletters de Wpcours et recevez des tutoriels Gratuitement.

CREER VOTRE AVATAR GRATUIT

Articles récents

  • 5 façons pour trouver la clé de produit (serial) Windows facilement
  • Ajouter une Image mise en avant (featured image) sous le titre de vos article
  • 13 thèmes WordPress polyvalents pour sites des crypto-monnaies pour obtenir un site bien classé
  • C’est quoi l’API WordPress Heartbeat et pourquoi devriez-vous la contrôler ?
  • Créer un message d’incitation à réautoriser les annonces Adsense sans plugin

© 2023 ·Wpcours.com · Mentions · Contact