Opencart-删除特定页面上的项目


Opencart - Remove items on specific pages?

我正在处理我的opencart主题,但遇到了一个问题。

我在主页和类别上都显示了我的特色模块(见屏幕截图)。

屏幕截图:

  1. https://i.stack.imgur.com/GIBaD.png
  2. https://i.stack.imgur.com/OkXwp.png

现在,我只想在类别布局中隐藏项目的评级,这样就不会破坏我的设计/松散的空间。有没有一种简单的方法可以隐藏某些布局上的评分?即vqmod?

删除:

      <? } ?>
      <?php if ($product['rating']) { ?>
      <div class="box-product-rating"><img src="catalog/view/theme/simplegreat/image/stars-<?php echo $product['rating']; ?>.png" alt="<?php echo $product['reviews']; ?>" /></div>
      <?php } else { ?>
      <div class="box-product-rating"><img src="catalog/view/theme/simplegreat/image/stars-0.png"/></div>
      <?php } ?>

from:/var/www/html/catalog/view/theme/default/template/module/featured.tpl提供了所需的结果,但也删除了主布局上的评级。

如果您在类别页面上,URL包含查询字符串参数/变量path

检查该参数是否存在就足够了,并且在这种情况下不显示评级:

  <?php if ($product['rating'] && !isset($_GET['path'])) { ?>
  <div class="box-product-rating"><img src="catalog/view/theme/simplegreat/image/stars-<?php echo $product['rating']; ?>.png" alt="<?php echo $product['reviews']; ?>" /></div>
  <?php } ?>

这是一个简单的变通解决方案,可以通过更好的方式从功能模块控制器中实现:

$this->data['is_category_page'] = isset($this->request->get['path']);

改为在模板中:

      <?php if ($product['rating'] && !$is_category_page) { ?>
  <div class="box-product-rating"><img src="catalog/view/theme/simplegreat/image/stars-<?php echo $product['rating']; ?>.png" alt="<?php echo $product['reviews']; ?>" /></div>
  <?php } ?>