COVID2019 и это вот все. Друзья, вся эта история начинает плохо пахнет. Мойте руки, не ходите в люди. Отложите все плановые покупки и положите в носок заначку. Заприте ваших родителей, бабушек-дедушек на даче. Лучше перебдеть чем недобдеть. Берегите себя!

Как отключить кнопку КУПИТЬ при нулевом количестве товара


magazins

Recommended Posts

Доброго времени суток!

 

Вопрос, как отключить кнопку КУПИТЬ при нулевом количестве товара в модулях и категориях.

 

В ветке

нашли следующую полезную ссылку:

http://ocshop.info/wiki/kak-skryt-cenu-i-knopku-kupit-esli-tovara-net-v-nalichii/

 

Получилось только в самой карточке товара (огромное спасибо!).

Но, к сожалению, по данной инструкции так и не удалось отключить кнопку КУПИТЬ в категориях и модулях, поскольку шаблон немного изменен (не нами).

Помогите разобраться, пожалуйста.

 

За вид товара в категории и в производителе отвечает файл с кодом:

 

Скрытый текст

<?php require( DIR_TEMPLATE.$this->config->get('config_template')."/template/product/product_filter.tpl" );  ?>    
  
<div class="product-list"> 
    <div class="products-block">
        <?php
        $cols = $MAX_ITEM_ROW ;
        $span = floor(12/$cols);
        $small = floor(12/$MAX_ITEM_ROW_SMALL);
        $mini = floor(12/$MAX_ITEM_ROW_MINI);
        foreach ($products as $i => $product) { ?>
        <?php if( $i++%$cols == 0 ) { ?>
        <div class="row product-items">
        <?php } ?>
        <div class="col-lg-<?php echo $span;?> col-md-<?php echo $span;?> col-sm-<?php echo $span;?> col-xs-<?php echo $mini;?> product-cols">            
            <div class="product-block">    
                <?php if ($product['thumb']) { ?>
                    <?php $product_images = $this->model_catalog_product->getProductImages( $product['product_id'] ); ?>
                    <div class="image <?php echo isset($product_images[0])?$swapimg:''; ?>">
                        <?php if( $product['special'] ) {   ?>    
                            <span class="product-label product-label-special">
                                <span><?php echo $this->language->get( 'text_sale' ); ?></span>                                  
                            </span>                            
                        <?php } ?>                            
                        
                        <?php if( $categoryPzoom ) { $zimage = str_replace( "cache/","", preg_replace("#-\d+x\d+#", "",  $product['thumb'] ));  ?>
                            <a href="<?php echo $zimage;?>" class="info-view colorbox product-zoom" rel="colorbox" title="<?php echo $product['name']; ?>"><i class="fa fa-search-plus"></i></a>
                        <?php } ?>
                        <!-- Swap image -->
                        <div class="flip">
                            <a href="<?php echo $product['href']; ?>" class="swap-image">
                                <img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" class="front" />
                                <?php 
                                if( $categoryConfig['show_swap_image'] ){
                                    $product_images = $this->model_catalog_product->getProductImages( $product['product_id'] );
                                    if(isset($product_images) && !empty($product_images)) {
                                        $thumb2 = $this->model_tool_image->resize($product_images[0]['image'],  $this->config->get('config_image_product_width'),  $this->config->get('config_image_product_height') );
                                    ?>    
                                    <img src="<?php echo $thumb2; ?>" alt="<?php echo $product['name']; ?>" class="back" />
                                <?php } } ?>                                
                            </a>
                        </div>

                        <?php //#2 Start fix quickview in fw?>
                            <?php if ($quickview) { ?>
                                <a class="pav-colorbox btn btn-theme-default" href="<?php echo $this->url->link("themecontrol/product",'product_id='.$product['product_id'] );?>"><em class="fa fa-plus"></em><span><?php echo $this->language->get('quick_view'); ?></span></a>
                            <?php } ?>
                        <?php //#2 End fix quickview in fw?>
                    </div>
                <?php } ?>
                                 
                <div class="product-meta">          
                    <div class="left">
                        <h3 class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h3>    
                        <?php if ($product['price']) { ?>
                        <div class="price">
                            <?php if (!$product['special']) { ?>
                                <span class="special-price"><?php echo $product['price']; ?></span>
                            <?php } else { ?>
                                <span class="price-old"><?php echo $product['price']; ?></span> 
                                <span class="price-new"><?php echo $product['special']; ?></span>
                            <?php } ?>
                            <?php if ($product['tax']) { ?>            
                                <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
                            <?php } ?>
                        </div>
                        <?php } ?>    
                    </div>
              
                    <div class="right">        
                        <div class="rating">        
                              <?php if ($product['rating']) { ?>
                                <img src="catalog/view/theme/<?php echo $this->config->get('config_template');?>/image/stars-<?php echo $product['rating']; ?>.png" alt="<?php echo $product['reviews']; ?>" />
                            <?php } ?>
                        </div>
                        <p class="description"><?php echo utf8_substr( strip_tags($product['description']),0,220);?>...</p>
                        <div class="action">                            
                            <div class="cart">                        
                                <!-- <input type="button" value="<?php //echo $button_cart; ?>" onclick="addToCart('<?php //echo $product['product_id']; ?>');" class="product-icon fa fa-shopping-cart shopping-cart" /> -->
                                <button onclick="addToCart('<?php echo $product['product_id']; ?>');" class="btn btn-shopping-cart">
                                    <span class="fa fa-shopping-cart product-icon hidden-sm hidden-md"> </span>
                                    <span><?php echo $button_cart; ?></span>
                                </button>
                              </div>
                            
                            <div class="button-group">
                                <div class="wishlist">
                                    <a onclick="addToWishList('<?php echo $product['product_id']; ?>');" title="<?php echo $this->language->get("button_wishlist"); ?>" class="fa fa-heart product-icon">
                                        <span><?php echo $this->language->get("button_wishlist"); ?></span>
                                    </a>    
                                </div>
                                <div class="compare">            
                                    <a onclick="addToCompare('<?php echo $product['product_id']; ?>');" title="<?php echo $this->language->get("button_compare"); ?>" class="fa fa-refresh product-icon">
                                        <span><?php echo $this->language->get("button_compare"); ?></span>
                                    </a>    
                                </div></div></div></div></div></div>
        </div>
        
        <?php if( $i%$cols == 0 || $i==count($products) ) { ?>
        </div>
        <?php } ?>                
        <?php } ?>
    </div>
</div>
<div class="pagination paging clearfix"><?php echo $pagination; ?></div>

 

 

 

 

 

Ссылка на комментарий
Поделиться на других сайтах

да не сильно и отличается ваш шаблон
 

попробуйте 

 <div class="cart">                        
                                <!-- <input type="button" value="<?php //echo $button_cart; ?>" onclick="addToCart('<?php //echo $product['product_id']; ?>');" class="product-icon fa fa-shopping-cart shopping-cart" /> -->
                                <button onclick="addToCart('<?php echo $product['product_id']; ?>');" class="btn btn-shopping-cart">
                                    <span class="fa fa-shopping-cart product-icon hidden-sm hidden-md"> </span>
                                    <span><?php echo $button_cart; ?></span>
                                </button>
                              </div>

заменить на

 

  <?php if ($product['quantity'] <= 0) { ?>
	  <div class="cart"><div style="color:red;">&#10008; <?php echo $product['stock'];?></div></div>
	  <?php } else { ?>
      <div class="cart">                        
                                <!-- <input type="button" value="<?php //echo $button_cart; ?>" onclick="addToCart('<?php //echo $product['product_id']; ?>');" class="product-icon fa fa-shopping-cart shopping-cart" /> -->
                                <button onclick="addToCart('<?php echo $product['product_id']; ?>');" class="btn btn-shopping-cart">
                                    <span class="fa fa-shopping-cart product-icon hidden-sm hidden-md"> </span>
                                    <span><?php echo $button_cart; ?></span>
                                </button>
                              </div>
	  <?php } ?>

Должно получиться. 

Не забываем про бекапы перед любыми изменениями

Ссылка на комментарий
Поделиться на других сайтах

28 минуты назад, Lordaaa сказал:

 


Opencart 2
$data['products'][] = array(
Opencart 1.5
$this->data['products'][] = array(

'quantity'    => $result['quantity'], 

Спасибо. Помогло.

 

Мы еще вот это вставляли

$stock = $this->language->get('') . ' ';
				if ($result['quantity'] <= 0) {
					$stock .= $result['stock_status'];
				} elseif ($this->config->get('config_stock_display')) {
					$stock .= $result['quantity'];
				} else {
					$stock .= $this->language->get('text_instock');
				}

 

как написано в инструкции. Это оказалось лишним.

 

Еще раз большое спасибо и всего наилучшего.

Ссылка на комментарий
Поделиться на других сайтах

  • 2 months later...

Установка:
Админ панель
1. Модули - Установка расширений - Загрузите файл "no_tovar_no_buy.ocmod.xml"
2. Модули - Модификаторы - Должен появится модуль "Замена кнопки купить" - Обновите

no_tovar_no_buy_v5.ocmod.zip

Ссылка на комментарий
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу