Как заставить magento использовать полный путь продукта? - PullRequest
2 голосов
/ 21 сентября 2010

У меня проблема со ссылками на продукты magento.Когда я ищу продукт и затем нажимаю на ссылку продукта, Magento перенаправляет меня на index.php / test666.html, когда он должен быть index.php / products / grocery / miso-soup / test666.html.

Можно ли заставить Magento использовать полный путь к продукту?

Добавлено:

Я не могу заставить его работать, включив «Использовать путь категорий для URL-адресов продуктов».В итоге я получил следующий код.

$categories = $_product->getCategoryIds();
$lastCategory = $_categoryModel->load(end($categories));

$urlPath = explode("/",$lastCategory->getUrlPath());

$urlPathCnt = count($urlPath)-1;
$urlPath[$urlPathCnt] = str_replace(".html","",$urlPath[$urlPathCnt]);
$productUrl = "/".implode("/",$urlPath)."/".$_product->getUrlKey().".html";

но мне действительно не нравится этот путь.Использует ненужный ресурс.Есть идеи ??

Ответы [ 5 ]

2 голосов
/ 07 мая 2012

Результаты поиска не дадут вам полную ссылку, потому что Magento позволяет любому продукту быть в нескольких категориях. Невозможно угадать правильную категорию продукта, если вы используете окно поиска. Другими словами, ссылка на продукт может иметь несколько URL-адресов.

Если вы абсолютно уверены, что назначаете только одну категорию для каждого продукта, вы можете изменить исходный код поиска или создать расширение, чтобы показать ссылку с полным путем для каждого результата поиска.

1 голос
/ 21 сентября 2010

В админке перейдите на System>Configuration>Catalog>Search Engine Optimizations и установите Use Categories Path for Product URLs

0 голосов
/ 24 марта 2014

Я предполагаю, что результаты поиска не дадут вам полную ссылку, потому что Magento позволяет любому продукту быть в нескольких категориях.Невозможно угадать правильную категорию продукта, если вы используете окно поиска.Другими словами, ссылка на продукт может иметь несколько URL-адресов.

Но если вы абсолютно уверены, что назначаете только одну категорию для каждого продукта, вы можете изменить исходный код поиска или создать расширение, чтобы показать ссылку с полным путем для каждого результата поиска.

0 голосов
/ 04 мая 2012

Также убедитесь, что вы используете метод $product->getProductUrl(), чтобы воспользоваться настройкой, упомянутой выше.

0 голосов
/ 21 сентября 2010

Может потребоваться обновить индекс «Перезапись URL-адресов каталога». HTML-код также может быть подан из кэша, поэтому его обновление не повредит.

...