05/12/2011, 12:59:02
Bonjour,
Si je puis me permettre une réponse très tardive...
J'ai le même besoin, avec les mêmes modules, Search et Babel.
Voici une solution très rapide pour afficher uniquement les résultats relatifs à la langue courante dans le cas ou vous respectez la recommandation Babel pour l'arborescence de site, par exemple :
1. en
1.1. 1st page
1.2. 2nd page
1.3. 3rd page
2. fr
2.1. Page 1
2.2. Page 3
2.3. Page 2
1/ ouvrir l'onglet "gabarit de résultat" dans le module "Recherche" du panneau des extensions
2/ dans la boucle foreach, faire autant de division que de langues présentes dans le site :
En fait, on profite simplement de la présence de la langue dans la chaîne de l'url renvoyée par le module pour restreindre l'affichage selon une double condition smarty contextuelle.
NB : pour très bien faire, il faudrait également ajouter des compteurs dans toutes les conditions. De cette façon, on pourra donner le nombre de résultats pertinents. Car sinon la variable $itemcount contient le nombre de résultats toutes langues confondues.
Si je puis me permettre une réponse très tardive...
J'ai le même besoin, avec les mêmes modules, Search et Babel.
Voici une solution très rapide pour afficher uniquement les résultats relatifs à la langue courante dans le cas ou vous respectez la recommandation Babel pour l'arborescence de site, par exemple :
1. en
1.1. 1st page
1.2. 2nd page
1.3. 3rd page
2. fr
2.1. Page 1
2.2. Page 3
2.3. Page 2
1/ ouvrir l'onglet "gabarit de résultat" dans le module "Recherche" du panneau des extensions
2/ dans la boucle foreach, faire autant de division que de langues présentes dans le site :
Code :
{if strpos($entry->url,"/fr/") and $page_lang == "fr_FR"}
{*traitement par défaut*}
{/if}
{if strpos($entry->url,"/en/") and $page_lang == "en_EN"}
{*traitement par défaut*}
{/if}
NB : pour très bien faire, il faudrait également ajouter des compteurs dans toutes les conditions. De cette façon, on pourra donner le nombre de résultats pertinents. Car sinon la variable $itemcount contient le nombre de résultats toutes langues confondues.