Opencart-опции отключены при количестве 0

Opencart-опции отключены при количестве 0

28.03.2018 08:48:01 Просмотров 47 Источник

У меня есть код, но он не работает должным образом. Когда quantityравно 0и Subtract Stockуказано как Yes, опция(ы) исчезает.

Опцион(ы) остается только в том случае, если Subtract Stockуказано как No.

Код:

В catalog/controller/product/product.php

Первый:

Заменить: if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) {

OG: if ($option_value['subtract']) {

Второй:

После: $option_value['name'],

Добавить: 'quantity' => $option_value['quantity'],

В catalog/view/theme/*/template/product/product.tpl

Заменять:

<input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" />

OG:

<input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" <?php if ($option_value['quantity'] == 0) { ?> disabled <?php } ?> />
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0#comment86110317_49541051
Как можно вычесть количество этого опциона, когда его нет на складе?
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0#comment86116772_49541051
@RadhikaMayani, мне нужно сделать так, чтобы "disabled" применялся к селекторам опциона, оставаясь видимым в любых случаях и независимо от того, в каком положении находится переключатель в "Subtract Stock".

Ответы - Opencart-опции отключены при количестве 0 / Opencart - Options disabled when quantity 0

Является ответом!
Radhika

29.03.2018 02:43:56

В каталоге / контроллер / продукт / продукт.РНР

удалить: if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) {и закрывающая скобка }на пару строк ниже.

Сейчас, добавлять: 'quantity' => $option_value['quantity'],

после: $product_option_value_data[] = array(

В продуктах.ТПЛ <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" <?php if ($option_value['quantity'] == 0) { echo 'disabled'; } ?> />

https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86119308_49555187
Спасибо за этот фрагмент кода, который может оказать некоторую ограниченную, немедленную помощь. Правильное объяснение значительно улучшило бы его долгосрочную ценность, показав, почему это является хорошим решением проблемы, и сделало бы его более полезным для будущих читателей с другими, подобными вопросами. Пожалуйста, отредактируйте свой ответ, чтобы добавить некоторые пояснения, включая сделанные вами предположения. Объясните, чем он отличается от кода в вопросе, поскольку нет никакой очевидной разницы.
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86127848_49555187
Радхика Майани, к сожалению, это не решает проблему. Необходимо сделать так, чтобы графа "вычесть запас" игнорировалась. s6.postimg.org/713dq5hw1/Screenshot-2018-3-29_Products.png
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86145590_49555187
чтобы игнорировать "вычесть запас", вам нужно удалитьif (!$option_value['subtract'] || ($option_value['quantity'] > 0)) {из продукта контроллера.РНР . Удалить if ($option_value['subtract']) {
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86147129_49555187
@RadhikaMayani, спасибо за ваше желание помочь мне, но вы не можете понять меня : (пожалуйста, прочитайте еще раз мой первый пост. Если это возможно, вы можете повторить в своем тестовом магазине, и вы увидите мою проблему и мою просьбу о помощи. Нужно сделать так, чтобы при нулевом количестве продукта этот параметр не исчез.
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86147269_49555187
@VeroN я понял, что когда количество равно 0, ваша опция должна отображаться, но она отключена для доступа. Разве я не прав?
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86147470_49555187
@ VeroN пожалуйста, проверьте это. templatemaniacs.com/opc/FabDemo1/index.php?route=product/…
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86147508_49555187
@RadhikaMayani, да, вы правы. Но этот вариант должен сработать. Когда покупатели делают заказы, количество должно уменьшаться. И когда количество опций достигает нуля, опция не должна исчезать и быть видна в витрине магазина.
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86147649_49555187
@VeroN пожалуйста, проверьте еще раз выше предоставленную ссылку, когда это сценарий в стороне администратора. templatemaniacs.com/opc/issue1.png
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86149306_49555187
@RadhikaMayani, да, нужен такой сценарий. Скажите, пожалуйста, как вы это сделали?
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86149777_49555187
В каталоге / контроллер / продукт / продукт.в PHP удалить: if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) { добавить: 'quantity' => $option_value['quantity'], после: $product_option_value_data[] = array( в продукте.ТПЛ <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" <?php if ($option_value['quantity'] == 0) { echo 'disabled'; } ?> />
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86150726_49555187
@RadhikaMayani, если полностью удалить строку if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) {, то появится ошибка. Вы можете отредактировать свой пост с ответом, чтобы сохранить отступы и форматирование текста.
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86151008_49555187
@VeroN вы удалили закрывающую скобку if loop? '}"
https://stackoverflow.com/questions/49541051/opencart-options-disabled-when-quantity-0/49555187#comment86155164_49555187
@RadhikaMayani, да, проблема была в "}". Похоже, теперь все работает как надо. Большое спасибо за вашу помощь. Решение было близко, но я его не видел. С вашей помощью все получилось. Хорошего тебе дня, дружище. С уважением.
Закрыть X