如何在多个商店Magento设置中获取请求路径以在hreflang中使用?

时间:2013-04-25 16:59:22

标签: magento seo

我们希望获得构建动态URL的请求路径

    public function countryStoresAlternateLinks(){
    $stores = Mage::app()->getStores(false);
    $countryAlternateLinks = '';
    foreach($stores as $store) {
    $countryAlternateLinks[] = '<link rel="alternate" hreflang="' . substr(Mage::getStoreConfig('general/locale/code', $store->getId()), 0, 2) . (Mage::getStoreConfig('general/country/default', $store->getId()) != '' ?  "-" . Mage::getStoreConfig('general/country/default', $store->getId()) : '') .  '" href="' . $store->getCurrentUrl(false) .'" />' . "\n";
    } 
    return $countryAlternateLinks;      }

其中给出了以下输出:

    <link rel="alternate" hreflang="en-GB" href="http://our_domain.com/magento/thee/losse-        bladthee/groene?SID=4d6ec9b2ada547a58c7b57dfb35b8d95&amp;___store=english" /> 
    <link rel="alternate" hreflang="nl-NL" href="http://www.our_domain.nl/magento/thee/losse-bladthee/groene?___store=dutch" /> 
    <link rel="alternate" hreflang="nl-BE" href="http://our_domain.com/magento/thee/losse-bladthee/groene?SID=4d6ec9b2ada547a58c7b57dfb35b8d95&amp;___store=nl_be" /> 
    <link rel="alternate" hreflang="fr-BE" href="http://our_domain.com/magento/thee/losse-bladthee/groene?SID=4d6ec9b2ada547a58c7b57dfb35b8d95&amp;___store=fr_be" />

该函数将打印每个商店的基本URL,但类别路径不会在每个商店视图中更改,它将以相同的语言提醒。

* 问题是 - 我们如何指定“href”来获取每个商店视图/语言的类别路径? *

这就是我们目前所获得的“href =”'。$ store-&gt; getCurrentUrl(false)。'“ 有谁知道我们怎么做到这一点?


感谢您的回复,但并不完全是我们正在寻找的。也许我在第一封邮件中没有解释得很清楚,抱歉。

最后我们想要的是来自其他商店的重写网址,例如:

而不是:

    www.domain.com/cat1/sub2/info-english.html

我们想打电话:

   www.domain.com/cat-fr/sub-fr/info-french.html

这是在原来的英国商店,所以我们有干净的链接?有没有办法在Magento实现这一目标?

由于

1 个答案:

答案 0 :(得分:0)

  `Mage::getModel('catalog/category')
   ->setStoreId(each store id)
   ->load(YOUR_CATEGORY_ID);`

这会根据商店ID加载每个类别。获取网址

希望你得到了所需要的东西

:)