0

我有这个链接:
<a href="<?php echo Mage::getURL() ?>brands/<?php echo $_brand['label'] ?>">
这会给我一个
brands/Example%20Of%20My%20Brand在 url 中的结果并且不好,因为它是 404。
品牌的实际名称是“我的品牌示例”,到达此页面的 URL 是“example-of-我的品牌”所以这就是我需要得到的
我需要做的是修剪/更换?%20 所以它将是“-”,并且是否可以将所有链接设为小写?
非常感谢,希望有人能帮忙。

4

5 回答 5

2
<?php
$part1=Mage::getURL();
$part2=str_replace(" ", "-", urldecode($_brand['label']));
$newurl=strtolower($part1."brands/".$part2);
?>

<a href="<?php echo $newurl ?>">

Something like this should work.

If $part1 has any url-encoded character just use urldecode on it as well.

于 2013-03-19T11:32:16.640 回答
1

实际上 %20 是你试试这个的空间

 <a href="<?php echo Mage::getURL() ?>brands/<?php echo str_replace(' ','-',$_brand['label']) ?>">

检查这个是否为小写

<?php 
  $link=Mage::getURL().'brands/'.str_replace(' ','-',$_brand['label']);
  $link=strtolower($link); 
?>

<a href="<?php echo $link;?>">
于 2013-03-19T11:38:06.210 回答
0

首先将所有这些变量和字符串连接起来,然后像这样将其添加到href中

 <?php    $abc = Mage::getURL();
$final =$abc.'brands'.$brand['label'];?>
 <a href="<?php echo $final?>">
于 2013-03-19T11:31:46.670 回答
0

Use str_replace().

<a href="<php echo strtolower(str_replace('%20', '-', Mage::getURL().'brands/'.$_brand['label'])); ?>">
于 2013-03-19T11:33:13.863 回答
0

根据getUrl 文档,我认为您应该使用:

$url = Mage::getUrl('', array('_use_rewrite' => true)); 

_use_rewrite => 在数据库中查找模块/控制器/操作/参数,以获得对搜索引擎友好的等效项。

于 2013-03-19T11:38:58.760 回答