Forum CMS Made Simple FR

Version complète : Module Products et action search
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.10.3
#~ Url du site :
#~ Hébergeur / Soft : EasyPHP 5.3.9
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.10.3
#~ Installed Modules:
#~ CMSMailer: 2.0.2
#~ CMSPrinting: 1.0
#~ FileManager: 1.2.0
#~ MenuManager: 1.7.7
#~ MicroTiny: 1.1.1
#~ ModuleManager: 1.5.3
#~ News: 2.12.3
#~ Search: 1.7
#~ ThemeManager: 1.1.4
#~ FCKeditorX: 1.1.0
#~ CGExtensions: 1.28.1
#~ FrontEndUsers: 1.17.1
#~ CGSimpleSmarty: 1.5
#~ Products: 2.17
#~ CGEcommerceBase: 1.3.9
#~ Cart: 1.8.2
#~ CGPaymentGatewayBase: 1.0.11
#~ Orders: 1.13.1
#~ FormBuilder: 0.7.2
#~ CGGoogleMaps: 2.2.7
#~ JQueryTools: 1.0.10
#~ CGSmartImage: 1.8.1
#~ Gallery: 1.5.3
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template: false
#~ output_compression: false
#~ max_upload_size: 2000000
#~ default_upload_permission: 664
#~ url_rewriting: internal
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale:
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.3.9
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ E_DEPRECATED: 8192
#~ memory_limit: 128M
#~ max_execution_time: 30
#~ output_buffering: 4096
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 8M
#~ upload_max_filesize: 2M
#~ session_save_path: C:\Program Files\EasyPHP-5.3.9/tmp (0777)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ Server Information:
#~ Server Api: apache2handler
#~ Server Db Type: MySQL (mysql)
#~ Server Db Version: 5.5.20
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~



Bonjour,

Je souhaite savoir s'il est possible de modifier le gabarit de résultat lorsque l'on utilise l'action "search" du module products et notamment s'il est possible d'afficher ces résultats sur plusieurs pages.

Merci.
Contenu » Gestionnaire de produits, il y a un onglet gabarit de recherche. Dans cet onglet, il y a un bouton + pour créer un nouveau gabarit. Tu n'auras plus qu'à le mettre par défaut pour que ce soit celui-là qui soit utilisé. Autrement, tu ajoutes le paramètre searchformtemplate="ton gabarit" dans la balise d'appel de products.
Pour la pagination, cela ne semble pas prévu pour la recherche :
(optional) pagelimit="" - Utilisé seulement avec l'action default, ce paramètre spécifie combien d'articles doivent être listés sur chaque page.
Suivant tes compétences, tu étudies les autres gabarits pour voir si tu ne peux pas leur prendre le code de la pagination, ou tu installes un JQuery de pagination.
Merci bien pour la réponse.
Pour la pagination j'avais bien pensé reprendre le code d'un autre gabarit et c'est pour ça que je voudrais changer le gabarit.
Pour l'onglet gabarit de recherche j'avais bien vu, mais de ce que j'en ai compris il agit seulement sur les champs du formulaire de recherche et pas sur l'affichage des résultats... À moins que j'ai loupé un truc.
Je n'avais jamais utilisé ce module, mais je viens de l'installer pour te répondre.
Les résultats de recherche apparaissent par défaut dans le gabarit de sommaire.
Tu ajoutes le paramètre pagelimit="nombre d'articles par page" : {Products action="search" pagelimit="1"}
Ca y est ça fonctionne desormais.
J'avais bien essayé avec la balise {Products action="search" pagelimit="1"} et ça m'affichait seulement une réponse mais je n'avais pas les liens pour les pages suivantes et précédentes. En fait j'avais plusieurs gabarit de sommaire et je ne faissait pas appel au bon et évidemment il manquait un bout de code Rolleyes
Néanmoins je trouve l'aide du module ambiguë car comme tu l'as mentionné :

Jean le Chauve a écrit :(optional) pagelimit="" - Utilisé seulement avec l'action default, ce paramètre spécifie combien d'articles doivent être listés sur chaque page.

Or, il faut quand même ajouter pagelimit alors que l'aide laisse entendre que ce n'est pas possible avec l'action search... Enfin bon, ça fonctionne, c'est l'essentiel.

En tout cas merci de m'avoir consacré un peu de temps.
Euh bon finalement j'ai peut-être répondu un peu (beaucoup) trop vite.
Si je fais une recherche j'ai bien sur ma page de résultats le nombre d'articles voulus et les liens page suivantes et précédentes avec page 1/2.
Là où ça se gate c'est quand je passe à la page suivante. Ça me dit que j'ai désormais trois pages de résultat (au lieu de deux) et je constate que tous les produits s'affichent et plus seulement ceux qui correspondent à ma recherche.
J'ai créé 4 produits. Pagelimit = 1 ; j'ai bien 4 pages avec 1 seul produit et la pagination reste correcte page après page.
Si je mets pagelimit 2 , il y a effectivement une erreur, lorsque je clique sur page suivante : l'url est :
http://localhost/1.10.3/index.php?mact=P...re&cntnt01page=1&cntnt01returnid=63
Si tu changes page=1 en page=2 dans l'url, tu tombes sur la bonne page.
Si tu navigues à nouveau dans les pages précédentes, tout redevient correct.
Regarde dans le code du module voir si tu ne trouves pas le bug, parce que je n'ai pas le temps aujourd'hui.
Le fichier en question est : action.do_search.php.
J'y ai relevé quelques erreurs :
$inline = false; manquant dans l'initialisation
lignes 403 et 404 $params['productid'] au lieu de $parms['productid']
à partir de la ligne 465, il faut remplacer tous les $page par $pagenum.

Malgré ces changements, il reste des problèmes dans la pagination. Je suppose que si l'auteur a écrit que page_limit ne fonctionne qu'avec l'action=default, c'est parce qu'il reste des bugs (sinon pourquoi y aurait-il du code de pagination dans le codage de search).

Désolé de ne pouvoir solutionner ton problème.
Contactez l'auteur du projet sur la forge pour lui soumettre ces bugs, c'est Calguy qui s'en occupe de mémoire.
Bon, tant pis, je crois qu'il va falloir faire sans.
Comme tu le conseilles Bess je vais soumettre le bug à Calguy et on verra...