Bonjour,

 

            J’essai de configurer l’engin de recherche de façon à chercher seulement dans quelques pages mais je n’y arrive pas. J’ai essai de copier coller le code ci-dessous dans la page ou ce situe le formulaire. Cela ne fonctionne pas.

 

Il y a quelque chose que je ne comprends pas. On crée une chaine de recherche, mais on ne fait rien avec. Faut-il la mettre dans le pageContext ? Si oui sous quel nom.

 

Voila mon code :

 

 

ContentPage startPage = ContentPage.getPage(295);

int pageInfosFlag = ContentPage.ACTIVE_PAGE_INFOS| ContentPage.STAGING_PAGE_INFOS;

FlatSiteMapViewHelper flatSiteMap = new FlatSiteMapViewHelper(jParams.getUser(), startPage, pageInfosFlag, jParams.getLocale().toString(), FlatSiteMapViewHelper.DEFAULT_LEVEL);

StringBuffer searchQuery =  new StringBuffer(" AND (");

StringBuffer activeSearchQuery =  new StringBuffer(" AND (");

for (int i = 0; i < flatSiteMap.size(); i++)

{

     int pageId = flatSiteMap.getPageID(i);

     if (i > 0)

      {

         activeSearchQuery.append(" OR ");

         searchQuery.append(" OR ");

     }

     searchQuery.append("pageid:" + pageId);

     activeSearchQuery.append("pageid:" + pageId);

}

searchQuery.append(")");

%>

     

 

<form name="searchForm" method="post" action="" >

        <input type="text" name="search" value="" />&nbsp;<a href="" src="" alt="<jahia:resourceBundle resourceBundle="jahiatemplates.Corporate_portal_templates" resourceName="search"/>" width="15" height="15" border="0" align="middle"/></a>

        <input type="hidden" name="maxPageItems" value="10" />

        <input type="hidden" name="<%=JahiaSearchResultHandlerImpl.ONE_HIT_BY_PAGE_PARAMETER_NAME%>" value="false" />

</form>

 

 

 

From: Philippe Vollenweider <[EMAIL PROTECTED]>
Subject: Re: Configuration de l'engin de recherche Jahia
Newsgroups: gmane.comp.cms.jahia.french
Date: 2006-05-09 13:23:37 GMT (19 weeks, 1 hour and 38 minutes ago)

Bonjour,

 

C'est possible, mais il faut ajouter au search

string la liste des pages sur lequel effectuer

des recherches, par exemple, si vous souhaitez

chercher le string "toto" et limiter la recherche

sur les pages 123 et 456, le search string devient

"toto AND (pageid:123 OR pageid:456)"

 

Dans votre cas, il vous suffit de générer la

liste des sous pages de "Eté 2006" et de

construire cette liste avec qqch comme ça:

 

ContentPage startPage =

ContentPage.getPage(LE_PID_DE_DEPART); // pid de Ete 2006

int pageInfosFlag = ContentPage.ACTIVE_PAGE_INFOS

| ContentPage.STAGING_PAGE_INFOS;

FlatSiteMapViewHelper flatSiteMap = new

FlatSiteMapViewHelper(user, startPage, pageInfosFlag,

                                     jParams.getLocale().toString(),

FlatSiteMapViewHelper.DEFAULT_LEVEL);

StringBuffer searchQuery =  new StringBuffer(" AND (");

for (int i = 0; i < flatSiteMap.size(); i++) {

     int pageId = flatSiteMap.getPageID(i);

     if (i > 0){

         activeSearchQuery.append(" OR ");

         searchQuery.append(" OR ");

     }

     searchQuery.append("pageid:" + pageId);

     activeSearchQuery.append("pageid:" + pageId);

}

searchQuery.append(")");

 

Et ce searchQuery.toString() sera à ajouter au

search string au moment du post du formulaire.

 

Philippe.

 

At 03.05.2006 13:57, you wrote:

>Bonjour,

> 

>J'aimerais savoir si c'est possible de

>"configurer" l'engin de recherche intégré à

>Jahia (4.0.5) de sorte à effectuer une recherche dans une section d'un site ?

> 

>Par exemple, pour un site possédant les sections suivantes ;

> 

>Accueil

>     --| Cours

>         --| Été 2006

>         --| Automne 2006

>         --| Distance

> 

>Est-il possible d'effectuer une recherche

>uniquement dans la sous-section "Été 2006" ?

> 

>Merci !

> 

>--

>Allen E. Whittom, analyste en informatique

>Service de l'informatique et des

>télécommunications de l'Université Laval, Québec, Québec G1K 7P4

>t. 418-656-2131 p. 17892

> 

 

Répondre à