2

我使用 magento 进行了这个多站点/商店设置,但 $_product->getUrlPath(). 我有这 2 家商店,当我在主页上显示这两家商店的产品时,它总是向我显示相同的链接

当我在 1 号商店时(对于所有产品,即使它们不是来自 1 号商店):shop1.com/product-name.html

当我在商店 2 时(这里相同): shop1.com/product-name.html 而不是 shop2.com/product-name.html

我也试过了$_product->getProductUrlRewrite()$_product->getProductUrl() 也试过了,$_product->getUrlKey()但什么都没有,它总是一样的。

4

1 回答 1

2

您的产品将返回其 URL 并考虑加载的商店,除非您在中间某处更改了它或专门设置了要从哪个商店获取产品属性。

因此,您需要做的第一件事是通过检查确保您加载了正确的商店

Mage::app()->getStore();

如果返回的商店不是您所期望的,请检查调用初始商店时设置的商店

Mage::run();

在 index.php 中。

如果商店是您想要的商店和/或您只想显示不同商店的产品网址,那么您可以在您的产品型号上通过调用设置您想要使用的商店

$_product->setStoreId(YOUR_STORE_ID)

这将设置产品商店,您可以从该商店获取它的 URL。所以,打电话

$_product->setStoreId(YOUR_STORE_ID)->getProductUrl();

将返回所需商店的产品 URL。

于 2012-12-28T20:48:59.813 回答