如何在 Magento 中构建查询字符串


how to build query string in magento

嗨,想在洋红色中构建查询字符串。我试过了

<?php 
echo $this->getUrl("catalog/category/view",
  array(
    "_use_rewrite"=>false,
    "category"=>$_category->getId(),
    "product"=>$_product->getId()
  )
);
?>

我想要网址: http://www.localhost.com/hungermunch/fujigrill/catalog/category/view?category=11&product=1 但我得到了

http://www.localhost.com/hungermunch/fujigrill/catalog/category/view/category/11/product/1/

如何获取所需的网址。可能吗

您还可以在Magento中附加url查询字符串参数,如下所示:

$params = array(
    '_query' => array(
        'category' => $_category->getId(),
        'product'  => $_product->getId(),
    )
);
echo Mage::getUrl('catalog/category/view', $params);

下面是 getUrl() 方法的参考:

http://www.magentocommerce.com/wiki/5_-_modules_and_development/reference/geturl_function_parameters

如果要

将查询字符串添加到末尾,可以使用此方法:

$this->getUrl("catalog/category/view") . "?" .
http_build_query(
    "category" => $_category->getId(),
    "product"  => $_product->getId()
);

尽管我认为没有理由不使用您的第一种方法,然后根据需要从Magento获取值,例如在控制器中,您可以这样做:

$productId = $this->getRequest()->getParam('product');
$categoryId = $this->getRequest()->getParam('category');

然后,Magento将从代码生成的URL中为您获取这些值。