Чтобы отобразить все варианты товара в OpenCart, независимо от его наличия, вам понадобится внести некоторые изменения в код шаблона и базу данных.
1. Откройте файл catalog/controller/product/product.php и найдите следующую строку:
```php
$data['stock'] = $product_info['quantity'] > 0;
```
Замените ее на:
```php
$data['stock'] = true;
```
2. Затем откройте файл catalog/model/catalog/product.php и найдите следующую строку:
```php
$query = $this->db->query("SELECT option_id, option_value_id FROM " . DB_PREFIX . "product_option_value WHERE product_id = '" . (int)$product_id . "'");
```
После этой строки добавьте:
```php
$data['options'] = array();
$results = $this->db->query("SELECT DISTINCT pov.option_id, od.name, ovd.name as value FROM " . DB_PREFIX . "product_option_value pov LEFT JOIN " . DB_PREFIX . "option_description od ON (pov.option_id = od.option_id) LEFT JOIN " . DB_PREFIX . "option_value_description ovd ON (pov.option_value_id = ovd.option_value_id) WHERE pov.product_id = '" . (int)$product_id . "' AND od.language_id = '" . (int)$this->config->get('config_language_id') . "' AND ovd.language_id = '" . (int)$this->config->get('config_language_id') . "'");
```
3. Откройте файл catalog/view/theme/your_theme/template/product/product.tpl и найдите следующий код:
```php
<?php if ($stock) { ?>
<span class="stock"><?php echo $text_instock; ?></span>
<?php } else { ?>
<span class="stock"><?php echo $text_outstock; ?></span>
<?php } ?>
```
Замените его на:
```php
<?php if ($stock) { ?>
<span class="stock"><?php echo $text_instock; ?></span>
<?php } ?>
```
После проведения этих изменений все варианты товара будут отображаться независимо от его наличия.
Чтобы отображать информацию об остатках на странице товара, вам также потребуется настроить соответствующие настройки товара в административной панели OpenCart.
1. Войдите в административную панель OpenCart.
2. Перейдите в каталог и выберите нужный товар.
3. Нажмите на вкладку "Опции товара".
4. Для каждого варианта опции укажите количество остатков.
5. Сохраните изменения.
После этого информация об остатках будет отображаться на странице товара в магазине обуви.