Rapport de recherche sur l'état de la recherche sur site dans l'enseignement supérieur avec The Chronicle of Higher Education | Télécharger le rapport
La solution SearchStax Site Search offre aux spécialistes du marketing l'agilité dont ils ont besoin pour optimiser les résultats du site Web.
Présentation du produitSearchStax Managed Search décharge la gestion de Solr, offrant aux équipes informatiques une agilité opérationnelle accrue.
Présentation du produit6 décembre 2023
Kevin Montgomery
|
Avec le version récente de Search UI Kit Créer une fonctionnalité de recherche de site attrayante et efficace dans une application native ou un front-end dynamique est encore plus simple. SearchStax Site Search inclut déjà API REST de recherche de site – mais notre nouveau Rechercher des composants d'interface utilisateur pour React gérez l'interaction et l'authentification du backend afin que vous puissiez commencer à créer sans avoir à implémenter une autre API.
Voyons comment reconstruire notre propre Documentation de recherche sur le site SearchStax Site web en une plateforme headless basée sur React et Drupal, incluant la recherche sur le site. Voici les différentes plateformes, frameworks et modules utilisés dans la création.
Vous pouvez créer votre propre environnement sans tête en clonant notre Dépôt sans tête de SearchStax DocsCe référentiel comprend un environnement Docker pour le développement Drupal et React qui est préchargé avec le front-end sans tête et l'instance Drupal avec le contenu de la documentation.
React est devenu l'un des frameworks front-end les plus répandus, notamment pour offrir des expériences front-end dynamiques et engageantes. Si la création avec React peut être plus rapide et offrir des interfaces hautement interactives, il lui manque de nombreuses fonctionnalités essentielles pour fournir du contenu web statique « standard » comme celui de Drupal, WordPress, Sitecore et d'autres systèmes de gestion de contenu. Comme de nombreux frameworks front-end, React s'appuie souvent sur un back-end REST ou GraphQL qui fournit du JSON hautement structuré, contrairement au HTML entièrement formaté.
En allant sans tête avec votre CMS, cependant, peut vous offrir les fonctionnalités de publication d'un CMS sans les inconvénients de la gestion de l'état côté serveur et du rendu. Votre équipe de développement peut fournir de meilleures fonctionnalités avec une vitesse de publication plus rapide en dissociant l'édition de contenu et le déploiement des fonctionnalités front-end, afin que les deux processus puissent se dérouler à leur propre rythme.
Voyons comment Drupal et React peuvent fonctionner ensemble avec SearchStax Site Search pour un site de documentation technique interactif et facile à gérer.
Passer au headless signifie généralement que le front-end devra gérer l'état de l'utilisateur séparément du back-end (au lieu d'utiliser des paramètres, des cookies, des en-têtes de requête ou d'autres méthodes pour indiquer l'état de l'utilisateur lors d'une requête d'URL). L'utilisation du module JSON:API avec Drupal expose plusieurs points de terminaison pour les menus et la navigation du site, les alias d'URL et les nœuds de contenu.
Lors du chargement initial de l'application React, elle demande les différents menus de Drupal ainsi que les alias d'URL afin de créer la navigation de base du site, puis de charger le contenu correspondant à l'URL demandée. React peut ensuite demander le contenu complet de la page, traiter les balises intégrées, puis afficher et mettre à jour l'interface.
SearchStax Site Search peut indexer le contenu de Drupal via le intégration native et prend également en charge l'exploration D'autres sources de contenu et sites peuvent ainsi être inclus dans l'index. Les fonctionnalités de recherche de site peuvent être intégrées à React grâce à nos composants d'interface de recherche, ce qui permet de les utiliser et de les afficher dans toute l'application.
Drupal est une excellente plateforme pour un site headless, car elle offre une édition et une création de menus simplifiées, ainsi qu'une haute disponibilité pour servir d'API de contenu pour votre interface utilisateur. Les éditeurs de contenu peuvent toujours accéder et modifier le contenu en toute sécurité dans Drupal, et configurer la navigation du site avec des menus dont les mises à jour sont immédiatement disponibles dans l'interface utilisateur React.
L'utilisation des API Drupal pour la configuration du contenu et du site simplifie le front-end et évite d'avoir à coder en dur des éléments tels que le texte des liens, les URL ou le contenu long.
Recherche sur le site SearchStax s'intègre nativement à Drupal Ainsi, les index de recherche sont immédiatement mis à jour dès l'ajout ou la mise à jour de contenu. SearchStax Site Search inclut des fonctionnalités de personnalisation de la recherche, notamment la modélisation de la pertinence, la saisie semi-automatique et les suggestions de recherche associées, le facettage, le filtrage, le tri et l'analyse. Ces fonctionnalités sont directement implémentées dans le package Search UI Components for Reach et peuvent être entièrement personnalisées, stylisées et étendues dans React.
React encourage la réutilisabilité et le développement basé sur des composants, contrairement au HTML entièrement formaté rendu côté serveur, simplement injecté dans une zone d'une page web. ne permet pas de charger facilement du HTML d'une API vers un composant en raison de problèmes de sécurité ainsi que d'interférences potentielles lors du rendu ou de la réponse au DOM virtuel.
En utilisant le package html-to-react Permet d'intercepter des balises HTML spécifiques de l'API Drupal afin de les transformer en composants React. Cela résout les problèmes de code HTML mal formé et garantit que React est pleinement conscient de tous les éléments présents dans l'application.
Le Application React dans notre exemple suit des conventions similaires à la mise en page des blocs de Drupal : navigation principale, sous-navigation de gauche et pied de page du site enroulé autour du contenu de la page.
} />
} />
} />
<SearchstaxWrapper searchURL={config.searchURL} suggesterURL={config.suggesterURL} trackApiKey={config.trackApiKey} searchAuth={config.searchAuth} initialized={() => {}} beforeSearch={beforeSearch} afterSearch={afterSearch} authType={config.authType} router={{ enabled: true }} language={config.language} > <Stack spacing={1}> <InputWidget /> <RelatedSearchesWidget /> <Stack direction="row"> <OverviewWidget /> <SortingWidget /> </Stack> <Stack direction="row"> <FacetsWidget /> <Stack> <ExternalPromotionsWidget /> <ResultWidget /> </Stack> </Stack> <PaginationWidget /> </Stack> </SearchstaxWrapper>
void fetchArticleFromID(drupalPath.attributes.path.replace('/node/','')).then((data: article) => { document.title = data.data[0].attributes.title; const htmlInput = data.data[0].attributes.body.value; const isValidNode = () => { return true; }; const processNodeDefinitions = ProcessNodeDefinitions(); const processingInstructions = [ { shouldProcessNode: (node: any) => { return node.name && node.name === 'a'; }, processNode: (node: any, _children: any, index: number) => { return React.createElement(React.Fragment, {key: index,}, [
) => { handleLink(e, node.attribs.href); }} >{node.children[0].data}
]); } }, { shouldProcessNode: () => { return true; }, processNode: processNodeDefinitions.processDefaultNode, }, ]; setReactContent(Parser().parseWithInstructions(htmlInput, isValidNode, processingInstructions)); });
L'utilisation de html-to-react permet au contenu et au formatage HTML de rester dans Drupal tout en assurant un rendu correct dans React. Le module html-to-react permet également d'intercepter des balises HTML spécifiques de Drupal pour les modifier dans React.
Bien que les sites sans tête soient intrinsèquement plus complexes, ils offrent certains avantages que les CMS monolithiques ne peuvent pas égaler.
Passer au sans tête peut être déterminé par de nombreux facteurs, notamment des fonctionnalités améliorées ou une interactivité, des expériences d'application complètes, l'interaction et la consommation de données provenant de plusieurs serveurs ou sources, ainsi que la disponibilité sur de nombreux types d'écrans et d'appareils différents.
Les composants de l'interface utilisateur de recherche pour SearchStax Site Search sont disponibles pour Réagir, Vue, Angulaire, et autres Front-end optimisé par JavaScript des frameworks pour que les développeurs puissent commencer dès aujourd'hui à tester et à créer accessible recherche de site pour les applications headless.
React est un framework front-end basé sur JavaScript. Il permet aux développeurs front-end de créer des interfaces utilisateur dynamiques et réactives grâce à des composants réutilisables.
Rechercher des composants d'interface utilisateur sont des packages front-end pour les frameworks JavaScript, dont React. Les composants d'interface utilisateur de recherche vous permettent de créer des interfaces de recherche et des pages de résultats personnalisées pour votre application SearchStax Studio.
React ne dépend d'aucun CMS spécifique et peut être utilisé avec une variété de back-ends, de DXP ou de tout autre élément capable de fournir du contenu via une API.
The Stack est livré tous les deux mois avec des tendances du secteur, des informations, des produits et plus encore