We apologize for untranslated text, you can use the Google Translation button to get an automatic translation of the web page in the language of your choice.

Paramétrage de la recherche qui s'applique aux PQFE ?

Eric Lannez · on 7/16/13 at 5:51 PM

Bonjour,

Dans JCMS, le paramétrage de la recherche pour exclure des types de contenu de la recherche affecte aussi bien la recherche globale que les PQFE comme indiqué dans la fiche JCMS 5.7 : Développement de recherches étendues avec l'API des QueryFilter.

Dans JCMS, toutes les recherches de publications sont prises en charges par la classecom.jalios.jcms.QueryManager. Celle-ci gère aussi bien les recherches déclenchées par des utilisateurs que les recherches effectuées par une Portlet Requête/Iteration pour afficher ses résultats.

Néanmoins existe-t-il un moyen simple d'effectuer un paramétrage plus fin que celui-ci ? En effet, il est tout à fait légitime qu'un client veuille utiliser une PQFE pour afficher un certain type de contenu mais ne pas les faire remonter dans la recherche globale.

18 pts
Nicolas Donato · on 7/17/13 at 9:48 AM

Bonjour,

 

Il existe un moyen, ce serait de placer un attribut dans la request J2EE du client.

 

Ex à placer dans la PQFE:

[Code]

Request.setAttribute ("variable a definir", Boolean.TRUE);

[/code]

 

Et ensuite de récupérer la request en cours dans la QueryFilter :

[code]

If (Channel.getChannel ().getCurrentServletRequest ().setAttribut ("variable a definir")){

//surcharge de la recherche;

}

[/code]

3 pts
Eric Lannez · on 8/23/13 at 2:50 PM

Bonjour,

Je me permet de déterrer un peu ce sujet car nous sommes de nouveau confronté au même souci que dans mon post initial.

Mes sondages ne remontaient pas dans mon espace collaboratif sur le vue "View all the polls" car le type "Poll" était exclu de la recherche.

Ne serait-il pas envisageable de réfléchir à une évolution de ce côté là ?

Comme déjà dit dans mon premier message, il me parait tout à fait légitime de vouloir retirer de la recherche globale du site certains types (afin de ne pas "polluer" les résultats) sans que cela engendre un disfonctionnement ailleurs (en effet, ici cela se traduit par une page "View all the polls" vide alors que des sondage existent bien ...).

0 pts
Nicolas Donato · on 8/23/13 at 4:04 PM

Bonjour,

Vous pouvez paramétrer la portlet de recherche:

  • éditer la portlet de recherche (PortletSearch)
  • ouvrir l'onglet "Options avancées"
  • éditer le champ "filtre de recherche" -> un éditeur de requête s'ouvre
  • dans cette fenêtre d'éditeur, ouvrir l'onglet "Types"
  • sélectionner les différents types que vous voulez rechercher

Au moins vous pouvez créer une recherche différente en fonction de ce que vous voulez.

0 pts
Eric Lannez · on 8/23/13 at 4:34 PM

Effectivement cela peut répondre à notre problématique.

En revanche, il reste une problématique au niveau du produit. Il n'est pas normal qu'en modifiant les propriétés de recherche globale du site via l'administration centrale et l'onglet "Search" cela engendre les effets de bord suivants :

  • Si je retire le type "A" de la recherche je ne peux utiliser des PQFE pour remonter des contenus de type "A"
  • Avec le module "DBPollPlugin", la vue "View all polls" ne retourne rien dans les espaces collaboratifs alors même que des sondages existent (c'est d'ailleurs pour moi un bug).

Une réponse de la part de Jalios serait appréciée afin de connaître leur position sur le sujet.

1 pt
Ronan Kerdudou · on 8/23/13 at 4:46 PM

@ Eric :

Comme tu es en JCMS 8.0.1 , la définition de ta recherche globale est soit définie dans la topbar ainsi :

<% request.setAttribute("jcms.live-search.topbar",true); %>
<jalios:include pub="<%= PortalManager.getPortletSearchTopbar() %>" />
<% request.removeAttribute("jcms.live-search.topbar"); %>

Soit directement par une portlet recherche que tu inclus dans ton layout de site

Soit via un code custom de ton site qui utilise vraisemblablement une portlet recherche. Si ce n'est pas le cas, adapte ton code pour que ce le soit.

Ainsi, si tu veux modifier la recherche globale => edite la portlet concernée.


Pour ce qui est de la recherche au sein d'un espace collaboratif, il y a de même une portlet recherche avec afinement sur l'espace qui est utilisée.

Le gabarit de l'espace collaboratif utilise un pointeur vers cette portlet mais si tu as un gabarit personnalisé, tu peux faire en sorte que cette portlet soit différente sur certains espaces.


Après au niveau de la configuration du site, n'interdit aucun type de contenu que tu souhaites afficher dans des PQF.

#1

Donc en gros si je résume un peu sommairement ton post, il ne faut pas utiliser le paramétrage des types dans la configuration globale du site ? Pourquoi laisser cette possibilité dans ce cas là ?

Pour les communautés, je ne suis pas sur que tu aies saisi le bug que je décris. Je t'invite à faire le test en natif :

  1. Désactiver le type "Poll" de la recherche globale du site
  2. Créer une communauté
  3. Créer deux sondages ou plus
  4. Cliquer sur le lien "View all the polls" de la portlet "PortletPoll"
  5. Tu constateras que cela ne t'affiche aucun résultat
Eric Lannez · on 8/23/13 at 4:59 PM
#2

La fonctionnalité de désactivation de certains types au niveau de la configuration du site sert à certains clients mais ma recommandation va dans ce sens de ne pas l'utiliser pour le besoin que tu as.

Après pour l'implication entre ce paramétrage et l'affichage dans les portlets du module, je laisse la R&D se charger de voir si c'est souhaité/souhaitable ou non.

Ronan Kerdudou · on 8/23/13 at 5:05 PM
0 pts
Pierre MORIN · on 11/3/16 at 5:19 PM

Bonjour,

Je déterre à mon tour cette question car je souhaiterais connaitre la raison pour laquelle de nouveaux types de contenus sont automatiquements rendus "non cherchables".

En effet, j'ai un nouveau type de contenu en local (type ajouté par un module commencé par un collègue), et celui-ci s'est automatiquement retrouvé dans les propriétés query.default.types-off et query.default.types-facet-offdu custom.prop.

Au vu des effets que cela a, cela est très perturbant. Heureusement que je savais où chercher !

 

Sinon, je penses qu'il serait intéressant de bien préciser sur la page d'édition des propriétés de recherche que toucher à ces propriétés aura des effets sur toutes les listes du site.

#1

Bonjour,

Tu indiques "celui-ci s'est automatiquement retrouvé dans les propriétés query.default.types-off et query.default.types-facet-off du custom.prop" ?

As-tu un scénario de reproduction ? Je ne vois pas quel mécanisme aurait enregistré ces propriétés autre que l'écran d'édition des propriétés du site.

Ronan Kerdudou · on 11/7/16 at 10:29 AM
#2

Bonjour,

Je vais tenter de reproduire, mais je suis absolument certain de ne pas avoir fait cette manipulation moi-même... Je reviendrais vers vous dès que j'aurais plus d'infos.

Cordialement

Pierre MORIN · on 11/7/16 at 12:16 PM
0 pts