How to hide category view in product details page.

Rate this topic: Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.Evaluations: 1, 1.00 on the average.1.00 out of 6 based on 1 vote(s)
GK User
Sat Jul 20, 2013 12:33 pm
Reply with quote
Report this post
I'd like to remove the "child categories" from the product page ONLY

If I used standard virtuemart files (productdetails/default.php)

I would simply remove below code:

Code: Select all
// Show child categories
    if (VmConfig::get('showCategory', 1)) {
   echo $this->loadTemplate('showcategory');
    }


from the file but with this nice template it's not that easy.

Can you help please?
User avatar
Fresh Boarder

GK User
Sat Jul 20, 2013 4:05 pm
Reply with quote
Report this post
This template overrides VM layouts, so you may find the file under this folder: /templates/gk_storebox/html/com_virtuemart/productdetails/
User avatar
Platinum Boarder

GK User
Sat Jul 20, 2013 5:56 pm
Reply with quote
Report this post
I know it and that's exactly what I said below.

... but a file productdetails/default.php in this template has much different construction.

Normally I would remove some part of the code but it is not clear and easy for me with this file.

I thought I should remove below code:
Code: Select all
   // Show child categories

   if ( VmConfig::get('showCategory',1) ) {
      if ($this->category->haschildren) {
         $iCol = 1;
         $iCategory = 1;
         $categories_per_row = VmConfig::get ( 'categories_per_row', 3 );
         $category_cellwidth = ' width'.floor ( 100 / $categories_per_row );
         $verticalseparator = " vertical-separator"; ?>
      <div class="category-view">
            <?php // Start the Output
         if(!empty($this->category->children)){
         foreach ( $this->category->children as $category ) {

         // Show the horizontal seperator
         if ($iCol == 1 && $iCategory > $categories_per_row) { ?>
            <div class="horizontal-separator"></div>
            <?php }

         // this is an indicator wether a row needs to be opened or not
         if ($iCol == 1) { ?>
            <div class="row">
                  <?php }

         // Show the vertical seperator
         if ($iCategory == $categories_per_row or $iCategory % $categories_per_row == 0) {
            $show_vertical_separator = ' ';
         } else {
            $show_vertical_separator = $verticalseparator;
         }

         // Category Link
         $caturl = JRoute::_('index.php?option=com_virtuemart&view=category&virtuemart_category_id=' . $category->virtuemart_category_id, FALSE);

            // Show Category ?>
                  <div class="category floatleft<?php echo $category_cellwidth . $show_vertical_separator ?>">
                        <div class="spacer">
                              <h3 class="catProductTitle"> <a href="<?php echo $caturl ?>" title="<?php echo $category->category_name ?>"> <?php echo $category->category_name ?> <br />
                                    <?php // if ($category->ids) {
                        echo $category->images[0]->displayMediaThumb("",false);
                     //} ?>
                                    </a> </h3>
                        </div>
                  </div>
                  <?php
         $iCategory ++;

         // Do we need to close the current row now?
         if ($iCol == $categories_per_row) { ?>
                  <div class="clear"></div>
            </div>
            <?php
         $iCol = 1;
         } else {
            $iCol ++;
         }
      }
      }

      // Do we need a final closing row tag?
      if ($iCol != 1) { ?>
            <div class="clear"></div>
      </div>
      <?php } ?>

</div>

<?php }

   if (!empty($this->product->customfieldsSorted['onbot'])) {
       $this->position='onbot';
       echo $this->loadTemplate('customfields');
    } // Product Custom ontop end
}    


but as you can see it removes too much and of course the page is not loaded then.

Also, I am using "ontop" position to display my child products with "catproduct" plugin.
User avatar
Fresh Boarder

GK User
Sun Jul 21, 2013 3:16 pm
Reply with quote
Report this post
Try removing this code: (lines 624 - 676)
Code: Select all
<div class="category-view">
            <?php // Start the Output
         if(!empty($this->category->children)){
         foreach ( $this->category->children as $category ) {

         // Show the horizontal seperator
         if ($iCol == 1 && $iCategory > $categories_per_row) { ?>
            <div class="horizontal-separator"></div>
            <?php }

         // this is an indicator wether a row needs to be opened or not
         if ($iCol == 1) { ?>
            <div class="row">
                  <?php }

         // Show the vertical seperator
         if ($iCategory == $categories_per_row or $iCategory % $categories_per_row == 0) {
            $show_vertical_separator = ' ';
         } else {
            $show_vertical_separator = $verticalseparator;
         }

         // Category Link
         $caturl = JRoute::_ ( 'index.php?option=com_virtuemart&view=category&virtuemart_category_id=' . $category->virtuemart_category_id );

            // Show Category ?>
                  <div class="category floatleft<?php echo $category_cellwidth . $show_vertical_separator ?>">
                        <div class="spacer">
                              <h3 class="catProductTitle"> <a href="<?php echo $caturl ?>" title="<?php echo $category->category_name ?>"> <?php echo $category->category_name ?> <br />
                                    <?php // if ($category->ids) {
                        echo $category->images[0]->displayMediaThumb("",false);
                     //} ?>
                                    </a> </h3>
                        </div>
                  </div>
                  <?php
         $iCategory ++;

         // Do we need to close the current row now?
         if ($iCol == $categories_per_row) { ?>
                  <div class="clear"></div>
            </div>
            <?php
         $iCol = 1;
         } else {
            $iCol ++;
         }
      }
      }
      // Do we need a final closing row tag?
      if ($iCol != 1) { ?>
            <div class="clear"></div>
      </div>
User avatar
Platinum Boarder


cron