Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Наличие на складе


Recommended Posts

для категорий

#1 - открываем

catalog/controller/product/category.php

перед

$this->data['products'][] = array(
					'name'	=> $result['name'],
					'model'   => $result['model'],
					'rating'  => $rating,
					'stars'   => sprintf($this->language->get('text_stars'), $rating),
					'thumb'   => $this->model_tool_image->resize($image, $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')),
					'price'   => $price,

вставляем

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

ниже, после

'href'	=> $this->model_tool_seo_url->rewrite(HTTP_SERVER . 'index.php?route=product/product&path=' . $this->request->get['path'] . '&product_id=' . $result['product_id']),
'add'	  => $add

вставляем

,
'wStock' => $wStock

#2 - открываем

catalog/language/english/product/category.php

добавляем

$_['text_instock']		= 'In Stock';

#3 - открываем

catalog/view/theme/default/template/product/category.tpl

перед

		  
	  <!--?php if ($products[$j]['rating']) { ?-->

или в любое другое понравившееся место, вставляем

		  
	  <span style="color: #999; font-size: 11px;"><!--?php echo $products[$j]['wStock']; ?--></span>

#3 повторить для всех использующихся шаблонов категории

Это работает в 1.5.4.1?

просто некоторых строк в 1.5.4.1 нет, потому не понять уже, куда что вставлять :(

Надіслати
Поділитися на інших сайтах


в #3 нет <!--?php if ($products[$j]['rating']) { ?-->

#3 повторить для всех использующихся шаблонов категории

а где это найти?

в общем у меня не сработало :(

Надіслати
Поділитися на інших сайтах


ну дальше написано ведь:

...или в любое другое понравившееся место...

правда вставлять надо уже немного другой код:

<br />
	  <span style="color: #999; font-size: 11px;"><?php echo $product['wStock']; ?></span>

это обусловлено отличиями в шаблонах разных версий.

Змінено користувачем afwollis
Надіслати
Поділитися на інших сайтах

ну не совсем уж в любое, е-мое.

вставьте после

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

Надіслати
Поділитися на інших сайтах

ну не совсем уж в любое, е-мое.

вставьте после

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

сделал, ошибка ушла, но статус так и не появился

Надіслати
Поділитися на інших сайтах


все, разобрался. Спасибо огромное.

нужно было строку


<br />
<span style="color: #999; font-size: 11px;"><?php echo $product['wStock']; ?></span>

вставить перед


<?php if ($product['tax']) { ?>
	<br />
	<span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
	<?php } ?>

только теперь если ставлю нулевое количество на складе вылазит ошибка

Notice: Undefined index: stock in /home/opticalm/public_html/catalog/controller/product/category.php on line 194 

Надіслати
Поділитися на інших сайтах


переписал в


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

строку

  $wStock = $result['stock'];

на

$wStock = $this->language->get('stock');

теперь заработало.

такой вопрос остался.

когда товар в наличии, то текст "есть в наличии" я вывожу зеленым шрифтом

если ставлю количество товара в 0, то текст "нет в наличии" выводится так же зеленым. как его сделать красным?

Надіслати
Поділитися на інших сайтах


  • 1 year later...

opencart 1.4.9 osstore

уважаемые форумчане. я понимаю что теме сто лет в обед. но все же повторю вопрос уже задававшийся

 

как убрать в категориях плюсик (кнопка купить), если товара нет в наличии.

 

ps все модификации из этой темы от afwollis я сделала и теперь высвечивается под товарами "есть  в наличии или "нет в наличии.

 

 

для категорий

#1 - открываем

catalog/controller/product/category.phpперед

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

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

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

                        'rating' => $rating,

                        'stars' => sprintf($this->language->get('text_stars'), $rating),

                        'thumb' => $this->model_tool_image->resize($image, $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')),

                        'price' => $price,вставляем

if ($result['quantity'] <= 0) {

    $wStock = $result['stock'];

} else {

    if ($this->config->get('config_stock_display')) {

        $wStock = $result['quantity'];

    } else {

        $wStock = $this->language->get('text_instock');

    }

}ниже, после

'href' => $this->model_tool_seo_url->rewrite(HTTP_SERVER . 'index.php?route=product/product&path=' . $this->request->get['path'] . '&product_id=' . $result['product_id']),

'add'     => $addвставляем

,

'wStock' => $wStock

#2 - открываем

catalog/language/english/product/category.phpдобавляем

$_['text_instock'] = 'In Stock';

#3 - открываем

catalog/view/theme/default/template/product/category.tplперед

<br />

<?php if ($products[$j]['rating']) { ?>или в любое другое понравившееся место, вставляем

<br />

<span style="color: #999; font-size: 11px;"><?php echo $products[$j]['wStock']; ?></span>

#3 повторить для всех использующихся шаблонов категории

 

но плюсик остается..(( как его убрать??

Надіслати
Поділитися на інших сайтах


catalog/controller/product/category.php

...
						'add'	  => $add,
						'quantity'=> $result['quantity'] //+++
catalog/view/theme/default/template/product/category.tpl

			<?php if ($products[$j]['quantity'] > 0) { ?>
			<a class="button_add_small" href="<?php echo $products[$j]['add']; ?>" title="<?php echo $button_add_to_cart; ?>" > </a>
			<?php } ?>
Надіслати
Поділитися на інших сайтах

  • 10 months later...

Друзья, ткните пальцем, никак не могу найти, как добавить информацию о количестве товара в наличие на странице категории. Ну то есть точно также как в карточке товара написано Наличие: ..., вот чтобы тоже самое, но на странице категории.

Спасибо :)

Нашёл это в другой теме.

Если кому лень переводить, то прикрепляю файл.

post-695291-0-75689500-1430854914_thumb.png

product-display-settings.zip

Надіслати
Поділитися на інших сайтах


  • 2 months later...

Помогите. У меня не отображается статус. Просто написано Наличие.

 

catalog/controller/product/category.php

							
				if ($result['quantity'] <= 0) {
                $wStock = $this->language->get('stock');
                } else {
                if ($this->config->get('config_stock_display')) {
                $wStock = $result['quantity'];
                } else {
                $wStock = $this->language->get('text_instock');
                }
                }		
								
				$this->data['products'][] = array(
					'product_id'  => $result['product_id'],
					'wStock'      => $wStock,
					'thumb'       => $image,
					'name'        => $result['name'],
					'sku'         => (empty($result['sku'])) ? '' : $this->language->get('text_sku') .' '. $result['sku'],
					'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 300) . '..',
					'price'       => $price,
					'special'     => $special,
					'tax'         => $tax,
					'rating'      => $result['rating'],
					'reviews'     => sprintf($this->language->get('text_reviews'), (int)$result['reviews']),
					'href'        => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url)					
                    
				);
			}

Версия ostore 1.5.5.1.2

Надіслати
Поділитися на інших сайтах


В настройках - Показывать остаток на складе - Нет тогда будет просто выводиться статус товара

в том то и дело что статус не показываться в категориях. Остаток показывает.

Змінено користувачем jekyman83
Надіслати
Поділитися на інших сайтах


Вы строки добавили в языковой файл category.php ?? и в англ, и в рус

$_['text_instock']		= 'In Stock'; 

В настройках магазину у вас должно быть: 

Показывать остаток на складе - НЕТ

Змінено користувачем Ketty83
Надіслати
Поділитися на інших сайтах


Вы строки добавили в языковой файл category.php ?? и в англ, и в рус

$_['text_instock']		= 'In Stock'; 

В настройках магазину у вас должно быть: 

Показывать остаток на складе - НЕТ

 

Все правильно в админке Показывать остаток на складе - НЕТ. Если ставлю Да, то показывает количество.

Остаток количеством показывает, а статусом нет.

8a6f9b360419.jpg

Змінено користувачем jekyman83
Надіслати
Поділитися на інших сайтах


Решение.

Открываем  /catalog/controller/product/category.php

Ищем

<?php 
class ControllerProductCategory extends Controller {  
	public function index() {
 
		$this->language->load('product/category');

После вставляем

$this->language->load('product/product');

Ищем

$rating = false;
}

После вставляем

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

Ищем

'thumb'       => $image,

После вставляем

'stock'       => $stock,

Открываем /catalog/view/theme/ваша_тема/template/product/category.tpl

Ищем

<div class="price">
  <?php if (!$product['special']) { ?>
  <?php echo $product['price']; ?>

и перед последним /div вставляем:

<br /><?php echo $product['stock']; ?>

Все.

Змінено користувачем jekyman83
Надіслати
Поділитися на інших сайтах


  • 2 years later...

а как вывести в категорию и в товар определенный статус? например "доступно под заказ"

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.