Recherche en texte intégral dans Jekyll avec Tipue Search. Aucun plugin nécessaire. Entièrement compatible avec les pages Github.
L'index de recherche sur tipuesearch/tipuesearch_content.js
est généré avec Liquid. Le plugin Tipue Search jQuery utilise Javascript pour rechercher l'index et afficher une liste de résultats.
Regardez une démo en direct exécutée sur les pages Github. Le code et la configuration de la démo se trouvent dans la branche gh-pages.
Ajoutez le dossier assets/tipuesearch
et tout le contenu à votre site.
Ajoutez les scripts et styles Tipue Search à votre tête de thème. Certaines de ces lignes sont facultatives, consultez la documentation pour plus d'informations :
{% if page.tipue_search_active or layout.tipue_search_active %}
<link rel="stylesheet" href="{{ "/assets/tipuesearch/css/normalize.css" | relative_url }}">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="{{ "/assets/tipuesearch/tipuesearch_content.js" | relative_url }}"></script>
<link rel="stylesheet" href="{{ "/assets/tipuesearch/css/tipuesearch.css" | relative_url }}">
<script src="{{ "/assets/tipuesearch/tipuesearch_set.js" | relative_url }}"></script>
<script src="{{ "/assets/tipuesearch/tipuesearch.min.js" | relative_url }}"></script>
{% endif %}
search.html
pour référence. Définissez tipue_search_active: true
au début de chaque page ou mise en page sur laquelle vous souhaitez afficher les résultats de recherche. Voir la documentation Tipue Search pour la configuration du formulaire de recherche et l'affichage des résultats de recherche : <form action="{{ page.url | relative_url }}">
<div class="tipue_search_left"><img src="{{ "/assets/tipuesearch/search.png" | relative_url }}" class="tipue_search_icon"></div>
<div class="tipue_search_right"><input type="text" name="q" id="tipue_search_input" pattern=".{3,}" title="At least 3 characters" required></div>
<div style="clear: both;"></div>
</form>
<div id="tipue_search_content"></div>
<script>
$(document).ready(function() {
$('#tipue_search_input').tipuesearch();
});
</script>
Reportez-vous à la documentation de Tipue Search et parcourez le code pour comprendre comment fonctionne Tipue Search et comment l'intégrer au mieux dans votre site.
Par défaut, seules les publications sont incluses dans l'index de recherche. Les pages et les collections ne sont pas incluses.
Ajoutez ce qui suit à _config.yml
pour inclure des pages et des collections. collections
est un tableau contenant une liste de collections que vous souhaitez inclure.
tipue_search:
include:
pages: true
collections: [apples, oranges]
Excluez des documents uniques de l'index de recherche avec une variable de premier plan :
exclude_from_search: true
Excluez plusieurs fichiers, balises ou catégories à l'aide d'un paramètre dans _config.yml
. files
est un tableau contenant une liste de chemins de fichiers à exclure. tags
et categories
sont des tableaux contenant des listes de balises et de catégories que vous souhaitez exclure.
tipue_search:
exclude:
files: [search.html, _apples/gragg.md, _oranges/valencia.md]
tags: [tag1, tag2]
categories: [category1, category2]