Magento 从没有 ?SID= 的 ID 中获取类别 url

Magento get category url from ID without ?SID=

在 Magento 中,我用它来从类别的 ID

中获取类别的 url
$categoryLink = Mage::getModel("catalog/category")->load(10)->getUrl();

有效,但在 url 的末尾有 ?SID=somenumber

我知道我可以将其从

中删除

系统 > 配置 > Web > 会话验证设置 > 在前端使用 SID

但我想让它保持活动状态,那么如何在没有 ?SID=somenumber 的情况下获得类别的 url?

试试这个:

$categoryLink = Mage::getModel("catalog/category")->load(10)->getUrl();
$pos = strpos($categoryLink, '?');
$categoryLink = ($pos>0) ? substr($categoryLink, 0, $pos) : $categoryLink;

您可以从管理面板进行配置:

转到 Admin == System == Configuration == Web == Session Validation Settingsdisable 配置 Use SID on Frontend = No

    $params = array(
        '_nosid' => true
    );

    $url = Mage::getUrl('*/*/*', $params);