2010-10-26 2 views
2

Я пытаюсь открыть ссылку магазина Magento с внешнего сайта. При открытии ссылки на хранилище мне нужно отправить некоторую информацию, используя параметры строки запроса. Поэтому я открыть ссылку (через PHP-код), такие как: http://magentostore.com/myproduct.html?id=3434&user=445Magento игнорирует дополнительные параметры URL-адреса

Однако соединение магазина Magento игнорирует параметры строки запроса и перезагружает страницу как: magentostore.com/myproduct.html

я проверил в Firebug и может видеть, что есть перенаправление в хранилище Magento без параметров строки запроса. Есть ли способ переопределить это поведение и позволить Magento загружать параметры строки запроса? Какую настройку я могу сделать в магазине Magento, чтобы позволить использовать параметры строки запроса? Есть ли другой способ отправки дополнительной информации на страницу магазина Magento?

Есть ли способ узнать, не делает ли это Magento это, а не сервер?

Благодаря

+1

Magento получает запросы по первому запросу, но перенаправляет URL-адрес, указанный в списке перезаписи URL. Это, вероятно, по причинам SEO. Независимо от того, какой код у вас есть, эти значения должны хранить их в переменной сеанса до того, как произойдет перенаправление. – clockworkgeek

+0

В качестве примечания, пожалуйста, не делайте ничего, что могло бы переопределить меры безопасности Magento, добавив в строку запроса «user = 445». –

+0

Благодарим вас за комментарии. Мы пытаемся поговорить с магазином Magento через внешний сайт. В основном, когда загружается страница магазина Magento, мы хотим, чтобы она знала, что она исходит от нашего известного внешнего сайта, а также того, кто его отправляет. Это достигается с помощью параметра строки запроса (uid). Нам нужно это только для одной страницы. У нас есть javascript на странице Magento, которая будет читать строку запроса, а затем создать несколько файлов cookie для отслеживания. Есть ли другой способ достичь этого? Можем ли мы отключить саму настройку строки запроса только для одной страницы? Это очень важно. – deveffort

ответ

1

Magento получает запросы на первый запрос, но перенаправляет к URL он имеет в списке URL Rewrite. Это, вероятно, по причинам SEO. Независимо от того, какой код у вас есть, эти значения должны хранить их в переменной сеанса до того, как произойдет перенаправление.

deveffort говорит:
Я исследовал для URL переписывания и выглядит как был URL перенаправления для соединения продукта! Я удалил его, и мой сценарий работает. Однако было бы замечательно узнать, есть ли что-то, что можно сделать, чтобы убедиться, что код Magento не выполняет санацию параметров строки запроса. Большое спасибо ..

clockworkgeek говорит:
я боюсь, что удаление перезапись временно. Он заменит себя на следующий повторный индекс продукта или, возможно, когда продукт будет сохранен. Поскольку вы хотите только установить некоторые файлы cookie, это не нужно делать с помощью javascript, который в любом случае менее надежный.
Вместо этого создайте наблюдателя для наблюдения за событием catalog_controller_product_view. Попросите наблюдателя проверить параметры запроса, и если он существует, установите cookie. Кроме того, он может попытаться проверить, что URL-адрес реферера совпадает с тем, что вы ожидаете от него, что может сделать подделку значений немного сложнее.

+0

Спасибо .. проверит крючки событий magento. Любая конкретная причина, по которой установка файлов cookie ненадежна через js? – deveffort

+0

Поскольку js не всегда включен или включен, но более ранняя ошибка на странице прекращает выполнение. Это редкие случаи, но я привык делать как можно больше на сервере, где я могу сохранить контроль и поддерживать все вместе с другим процессом. – clockworkgeek

Смежные вопросы