Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add search redirect at api package 2.x #1749

Merged
merged 9 commits into from
May 26, 2023

Conversation

beatrizmaselli
Copy link
Contributor

@beatrizmaselli beatrizmaselli commented May 8, 2023

What's the purpose of this pull request?

This PR adds a query to solve redirects when performing a search.
In case of VTEX platform, this is solved by the IS api.

How it works?

When performing a search if a term or facet has a redirect, the value of the redirect field should be an URL; this can later be used to redirect the user to an internal or external URL.

From VTEX admin:
Screenshot 2023-05-04 at 17 51 48

It get solved as:
image

How to test it?

  • Run the @faststore/api package individually.
  • Browse localhost/graphql
  • Run the redirect query with a term that is active in /admin/search/v4/redirects/
  • For storeframework, you can use the term tech

We have two types of redirect available (term / facet) or a mix of both:
term

image

facet

image

term + facet

image

screen-recording-2023-05-08-at-174924_9dTHBUFF.mp4

@vercel
Copy link

vercel bot commented May 8, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
faststore-site ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 26, 2023 2:16pm

@codesandbox-ci
Copy link

codesandbox-ci bot commented May 8, 2023

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit d033056:

Sandbox Source
Store UI Typescript Configuration

@beatrizmaselli beatrizmaselli marked this pull request as ready for review May 8, 2023 18:07
@beatrizmaselli beatrizmaselli requested a review from a team as a code owner May 8, 2023 18:07
@beatrizmaselli beatrizmaselli requested review from hellofanny and emersonlaurentino and removed request for a team May 8, 2023 18:07
beatrizmaselli added a commit that referenced this pull request May 9, 2023
## What's the purpose of this pull request?

This PR adds a query to solve redirects when performing a search.
In case of VTEX platform, this is solved by the IS api.


## How it works?

When performing a search if a term or facet has a redirect, the value of
the `redirect` field should be an URL; this can later be used to
redirect the user to an internal or external URL.

From VTEX admin:
<img width="795" alt="Screenshot 2023-05-04 at 17 51 48"
src="https://user-images.githubusercontent.com/50715158/236261672-24230b76-3f5e-4f92-8c17-53111fd65f24.png">

It get solved as:
<img width="1474" alt="image"
src="https://github.com/vtex/faststore/assets/67066494/4cecfa15-200b-49a0-a070-e4226f57c71e">

## How to test it?

- Run the `@faststore/api` package individually.
- Browse [localhost/graphql](http://localhost:4000/graphql)
- Run the redirect query with a term that is active in
`/admin/search/v4/redirects/`
- For storeframework, you can use the term `tech`

PR related at vtex-sites:
vtex-sites/nextjs.store#382
PR related 2.x: #1749

---------

Co-authored-by: beatrizmaselli <[email protected]>
@beatrizmaselli beatrizmaselli marked this pull request as draft May 16, 2023 07:02
@beatrizmaselli
Copy link
Contributor Author

beatrizmaselli commented May 16, 2023

TO DO: Add the redirect behaviour at the server side for slug pages

@beatrizmaselli beatrizmaselli marked this pull request as ready for review May 19, 2023 21:31
@beatrizmaselli beatrizmaselli deleted the feat-add-search-redirect-2.x branch May 26, 2023 14:19
lucasfp13 added a commit that referenced this pull request Jun 7, 2024
## What's the purpose of this pull request?

This PR intends to fix the behavior when there is an Intelligent Search
term redirect registered on VTEX Admin, redirecting the user on the
client-side.

FastStore Experience team discussed about solving this on the
server-side, but we are not going to handle the drawbacks of generate
the search page (`pages/s.tsx`) as SSR using `getServerSideProps` right
now. By performing this query (and the other function calls) as SSR
page, each time user visits that page the potential extra costs needs to
be validated later.

## How it works?

When performing a search, if the term has a redirect registered on VTEX
Admin the value of the `redirect` field should be an URL, used to
redirect the user to an internal or external URL.

Check #1749 for more information.

## How to test it?

- Run the `@faststore/core` local server (`yarn dev`);
- Type and run the term `tech` in the search input field, you should be
redirected to the `/technology` slug page.

This happens because there is already a redirect registered for the
`storeframework` account.

### Starters Deploy Preview
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants