1

当Opencart(产品页面)中的描述很长时如何隐藏产品描述以减少产品页面的负载,但是在单击详细链接后会出现完整的描述。在图片中您可以看到示例,抱歉我的英语不好,谢谢!这是示例图像示例的链接

4

1 回答 1

0

为什么不直接截断它?它将迫使它每次都是适合您的长度!

转到 catalog/controller/product/category.php 当你看到

foreach ($results as $result) {
    if ($result['image']) {
        $image = $this->model_tool_image->resize($result['image'], $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height'));
    } else {
        $image = false;
    }

接下来添加:

function truncate($description, $tLimit="20", $break=" ", $pad="...")
{
  if(strlen($string) <= $tlimit) return $string;

  if(false !== ($breakpoint = strpos($string, $break, $tlimit))) {
    if($breakpoint < strlen($string) - 1) {
      $string = substr($string, 0, $breakpoint) . $pad;
    }
   }

   return $description;
 }

随意更改变量:

$tLimit是您要允许的字母数。

$break是您希望它切断的地方,现在它被设置为在下一个空格处切断。如果你愿意的话,你可以通过放置 $break="" 让它打断单词

$pad是您希望它在切断文本后显示的内容。

如果你真的不想显示任何描述那么我建议仍然做一些类似于原始脚本的事情。

function getDescriptionLength($description, $tLimit="20")
{
  if(strlen($string) <= $tlimit) return $string;

  else {
    $description = NULL;
  }

  return $description;
}
于 2012-07-13T15:24:15.240 回答