En guise de solution temporaire si quelqu’un a besoin d’activer le bouton bascule par défaut, vous pouvez ajouter ce script à votre thème (je l’ai placé sous <body>) qui recherche essentiellement un changement dans les résultats de recherche de l’IA, puis active les résultats de l’IA. Ce n’est pas le code le plus propre, peut-être que @awesomerobot a une manière plus élégante de le faire.
<script type="text/javascript">
// CE SCRIPT EST DESTINÉ À ACTIVER LE BOUTON BASCULE POUR INCLURE LES RÉSULTATS DE RECHERCHE DE L'IA APRÈS LA FIN DE LA RECHERCHE - SUPPRIMER UNE FOIS QU'IL EXISTE UNE OPTION NATIVE POUR L'ACTIVER PAR DÉFAUT
console.log('Script chargé. Recherche continue de .semantic-search__searching et gestion de l\'observateur.');
let searchObserver = null; // Variable pour contenir l'instance de l'observateur
function observeSearchContainer() {
const searchStatusContainer = document.querySelector('.semantic-search__searching');
if (searchStatusContainer) {
// Si le conteneur est trouvé
if (!searchObserver) {
// Si un observateur ne fonctionne pas déjà, en démarrer un
console.log('.semantic-search__searching trouvé. Démarrage de l\'observation.');
searchObserver = new MutationObserver(function(mutations) {
//console.log('Mutation détectée dans .semantic-search__searching:', mutations);
mutations.forEach(function(mutation) {
// Vérifier les mutations pertinentes dans le conteneur observé
if (mutation.type === 'characterData') {
//console.log('Type de mutation pertinent détecté. Tentative de déclencher la fonctionnalité du bouton bascule. ' + mutation.type);
const currentToggleButton = document.querySelector('button.d-toggle-switch__checkbox.semantic-search__results-toggle');
if (currentToggleButton) {
const isCurrentlyEnabled = currentToggleButton.getAttribute('aria-checked') === 'true';
if (!isCurrentlyEnabled) { // Si le bouton bascule n\'est PAS actuellement activé
// Déclencher un événement de clic pour activer la fonctionnalité associée
currentToggleButton.click();
console.log('Événement de clic sur le bouton bascule déclenché.');
} else {
console.log('Le bouton bascule est déjà activé.');
}
} else {
// Ce cas peut se produire si le bouton bascule est supprimé pendant que le conteneur est toujours présent
console.log('Bouton bascule non trouvé lors de la tentative de déclenchement de la fonctionnalité.');
}
}
});
});
const config = { childList: true, subtree: true, characterData: true, attributes: true };
searchObserver.observe(searchStatusContainer, config);
console.log('MutationObserver démarré sur .semantic-search__searching.');
} else {
// Conteneur trouvé, et observateur déjà actif pour celui-ci
//console.log('.semantic-search__searching trouvé, observateur déjà actif.');
}
} else {
// Si le conteneur n'est PAS trouvé
if (searchObserver) {
// Si un observateur fonctionnait précédemment, cela signifie que le conteneur a été supprimé
console.log('.semantic-search__searching supprimé. Déconnexion de l\'observateur.');
searchObserver.disconnect(); // Arrêter l'observation
searchObserver = null; // Réinitialiser la variable de l'observateur
} else {
// Conteneur non trouvé, et aucun observateur actif (état correct)
//console.log('.semantic-search__searching non encore trouvé.');
}
}
}
// Utiliser un intervalle pour vérifier périodiquement l'existence du conteneur
const containerCheckInterval = setInterval(observeSearchContainer, 500); // Vérifier toutes les 500 millisecondes
</script>