У меня движок 1.5.1.3.1.
Нашел vqmod для автоматической замены надписи кнопки добавления в корзину на "Нет на складе", когда товар кончился.
Эта мулька действует на страницах товаров, а также в модуле "Рекомендуемые", если он установлен не в колонке, а по центру.
Прикрепляю его - пользуйтесь, кому надо.
Но вот зато не могу никак сделать, чтобы в модуле "Последние" эта функция работала!
Чисто механическое добавление в файле hide_of_stock.xml блоков для latest.php и latest.tpl, склонированных с блоков для featured.php и featured.tpl дает массу ошибок.
Вот что я добавляю:
------------------------------------------------------------------------------------------------------
<!-- Latest Controller Mod -->
<file name="catalog/controller/module/latest.php">
<operation error="log"><!-- v15x -->
<search position="before"><![CDATA[
if ($this->config->get('config_review_status')) {
]]></search>
<add trim="true"><![CDATA[
if ((float)$product_info['quantity']) {
$quantity = (int)$product_info['quantity'];
} else {
$quantity = false;
}
]]></add>
</operation>
<operation error="log"><!-- v15x -->
<search position="before"><![CDATA[
'href' => $this->url->link('product/product', 'product_id= . $product_info['product_id]),
]]></search>
<add trim="true"><![CDATA[
'quantity' => $quantity,
]]></add>
</operation>
</file>
<!-- END BLOCK -->
<!-- Remove from Latest Module -->
<file name="catalog/view/theme/*/template/module/latest.tpl">
<operation error="log"><!-- v15x -->
<search position="replace"><![CDATA[
<div class=cart"><a onclick="addToCart('<?php echo $product['product_id]; ?>');" class="button"><span><?php echo $button_cart; ?></span></a></div>
]]></search>
<add trim="true"><![CDATA[
<?php if (!$product['quantity'] >0 ) { ?>
<div class="cart"><a onclick="return;" class="button"><span><?php echo $this->language->get('button_out_of_stock'); ?></span></a></div>
<?php } else { ?>
<div class="cart"><a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a></div>
<?php } ?>
]]></add>
</operation>
</file>
<!-- END BLOCK -->
-------------------------------------------------------------------------------------------------------------------
Моих скудных познаний в PHP хватает, чтобы понять, что в силу различия кодов модулей "Последние" и "Рекомендуемые" нельзя делать так, как я сделал, но зато явно не хватает, чтобы понять - КАК НАДО СДЕЛАТЬ, ЧТОБЫ РАБОТАЛО!
Прошу помощи!!!
Опытным путем определил, что все безобразие происходит при внесении изменений в файле latest.php
И еще относительно файла .xml: в его начале необходимо убрать ниспользуемые языковые блоки, или соответственно изменить для своих используемых языков. Там все элементарно.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
???
Тридцать пять просмотров - и никакого даже мало-мальского диалога!
hide_of_stock.xml