您想在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/
我怎样才能获得所需的网址。是否可能
答案 0 :(得分:4)
您还可以在Magento中追加url querystring params,如下所示:
$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
答案 1 :(得分:1)
如果要将查询字符串添加到最后,可以使用此方法:
$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将从您的代码生成的网址中为您获取这些值。