0

我正在尝试限制产品列表中产品名称的字符。我找到了这段代码:

// define the maximum length of the product name here
$maxLength = 10;
$productName = $_helper->productAttribute($_product, $_product->getName(), 'name');
echo substr($productName, 0, $maxLength);

在我的主题中,我有以下代码:

 <h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></a></h2>

我把它改成这样:

<h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php $maxLength = 10;$productName = $_helper->productAttribute($_product, $_product->getName(), 'name');
echo substr($productName, 0, $maxLength);) ?></a></h2>

我得到一个解析器错误。有人可以帮帮我吗?

4

2 回答 2

0

当您遇到解析错误时,通常最好先在代码中添加换行符和缩进,因为它可以更清晰地概述您可能做错了什么。

在这种情况下,RS的回答指出了一个额外的括号。

于 2013-04-18T17:49:03.510 回答
0
<h2 class="product-name">
  <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>">
     <?php 
        $maxLength = 10;
        $productName = $_helper->productAttribute($_product, $_product->getName(), 'name');
        echo substr($productName, 0, $maxLength);)
     ?>                                      -----^
 </a>
</h2>

应该

echo substr($productName, 0, $maxLength);

你也可以使用Mage::helper('core/string')->truncate($productName, $maxLength);

于 2013-04-17T17:49:57.870 回答