2010-09-14 6 views
1

Je m'excuse pour le titre vague alors laissez-moi vous expliquer.Les résultats de recherche et les liens article précédent/suivant

Supposons que vous ayez une page avec les résultats de la recherche: http://example.com/search?q=foo. Les résultats sont les suivants:

  1. Foo - http://example.com/foo
  2. Bar - http://example.com/bar
  3. Baz - http://example.com/baz

Les liens ci-dessus pointer vers la page des détails de l'élément. Sur ces pages, je souhaite afficher les liens permettant de naviguer dans les résultats de recherche: élément suivant, éléments précédents, retour aux résultats de recherche.

Donc lors de la génération d'une page de détails, j'ai besoin de savoir d'où vient l'utilisateur, par exemple j'ai besoin de savoir quel terme de recherche il a utilisé.

Je pourrais ajouter des paramètres de requête supplémentaires dans les URL, comme http://example.com/foo?from=search&q=foo mais je ne peux pas faire cela. L'exigence n'est pas d'ajouter des paramètres supplémentaires aux URL des éléments.

Une autre option consiste à enregistrer une requête de recherche en session. Mais cela ne fonctionne pas si l'utilisateur ouvre plusieurs pages de résultats de recherche dans différents onglets.

Comment le feriez-vous?

PS. Je sais qu'il y a un certain nombre de questions similaires ici, mais je n'ai pas trouvé celle qui peut aider dans mon cas.

Répondre

0

J'ai donc trouvé la solution suivante.

J'ajoute onclick gestionnaire à tous les liens d'article sur la page de résultats de recherche. Ce gestionnaire définit un cookie de session avec Javascript. Ce cookie contient les informations sur la requête de recherche actuelle.

Sur la page des détails de l'article, j'analyse ce cookie pour récupérer les informations sur la requête de recherche. Cela me permet de trouver les éléments suivants/précédents dans les résultats de recherche et d'ajouter le lien "Retour aux résultats de recherche".

Cette approche fonctionne même si plusieurs pages de résultats de recherche sont ouvertes dans différents onglets.

0

utilisation HTTP_REFERER

+0

Cela ne fonctionnera pas. Supposons que je clique sur le 1er objet Foo (http://example.com/foo), puis sur Next Item et que je me rende sur http://example.com/bar. HTTP_REFERER sera http://example.com/foo –

+0

hmm, d'une autre manière - essayez d'utiliser la navigation basée sur l'ancre (Gmail ou Facebook). –

0

Toutes mes excuses, je ne l'ai jamais essayé cela avant, mais ne l'hébergement affichage de la page dans un iframe alors que le cadre parent a la navigation de recherche y parvenir?

Questions connexes