Перейти к содержанию
TrU

проблема с модулем SOLD OUT (нет в наличии)

Рекомендуемые сообщения

Добрый день, хотел бы получить подсказку. (ocStore 1.5.4.1)

Решил использовать данный модуль Sold Out v0.3.4, однако он VQmod, который я не решаюсь использовать, поэтому изменения вносил ручками, и вроде бы даже все заработало, однако, я рано обрадовался, то что у меня не получилось русифицировать текст кнопки, не так страшно, по-любому разберусь, а вот то что начали сыпаться синтаксические ошибки при попытке купить имеющийся товар, меня сильно расстроило. (Parse error: syntax error, unexpected ';' in /www/catalog/controller/product/product.php on line 190)

Может кто нибудь проверит его работоспособность в VQmod? те ошибки что сыпались, жаловались на product.tpl и product.php.

Если я в данном месте допустил ошибку, поправьте:

нужно сделать это

<file name="catalog/controller/product/product.php">
</operation>
<operation>
<search position="before">
<![CDATA[$product_info['quantity'] <= 0]]>
</search>
<add>
<![CDATA[ $this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name']; ]]>
</add>
</operation>

в итоге получилось это:

if ($this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name'];$product_info['quantity'] <= 0) {
   $this->data['stock'] = $product_info['stock_status'];
  } elseif ($this->config->get('config_stock_display')) {
   $this->data['stock'] = $product_info['quantity'];
  } else {
   $this->data['stock'] = $this->language->get('text_instock');

ну и под конец этот кусок, но тут вроде вопросов нет, кроме одного - offset="3", просто отступ или еще что?

<file name="catalog/view/theme/*/template/product/product.tpl">
<operation>
<search position="replace" offset="3">
<![CDATA[<div><?php echo $text_qty; ?>]]>
</search>
<add>
<![CDATA[ <?php if ($prod_quant>0) echo "<div>$text_qty<input type='text' name='quantity' size='2' value='$minimum' /><input type='hidden' name='product_id' size='2' value='$product_id' /> "; else echo "<div>"; ?> ]]>
</add>
</operation>
<operation>
<search position="replace">
<![CDATA[<input type="button" value="<?php echo $button_cart; ?>" id="button-cart" class="button" />]]>
</search>
<add>
<![CDATA[ <?php if ($prod_quant>0) echo "<input type='button' value='$button_cart' id='button-cart' class='button' />"; else echo "<span style='color:red; font-weight:bold;'>$stock</span><a href='index.php?route=information/contact&enquiry=", urlencode("$prod_name ($model)".PHP_EOL), "' target='_blank' class='button' style='color:yellow;'>Inquire Now</a>"; ?> ]]>
</add>
</operation>
<operation>
<search position="replace">
<![CDATA[<a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><?php echo $button_cart; ?></a>]]>
</search>
<add>
<![CDATA[ <?php if ($product['quantity']>0) echo "<input type='button' value='$button_cart' onclick='addToCart($product[product_id]);' class='button' />"; else echo "<span style='color:red; font-weight:bold;'>$product[stock]</span><a href='index.php?route=information/contact&enquiry=", urlencode("$product[name] ($product[model])".PHP_EOL), "' target='_blank' class='button' style='color:yellow;'>Inquire Now</a>"; ?> ]]>
</add>
</operation>
</file>

Поделиться сообщением


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

здесь

if ($this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name'];$product_info['quantity'] <= 0) {
$this->data['stock'] = $product_info['stock_status'];
  } elseif ($this->config->get('config_stock_display')) {
$this->data['stock'] = $product_info['quantity'];
  } else {
$this->data['stock'] = $this->language->get('text_instock');

после $product_info['name']; пробел попробуй поставить

offset="3"

означает что заменяется данная строка и еще 3 строки, идущие за ней, т.е. всего 4.

  • +1 1

Поделиться сообщением


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

здесь

if ($this->data['prod_quant'] = $product_info['quantity']; $this->data['prod_name'] = $product_info['name'];$product_info['quantity'] <= 0) {
$this->data['stock'] = $product_info['stock_status'];
  } elseif ($this->config->get('config_stock_display')) {
$this->data['stock'] = $product_info['quantity'];
  } else {
$this->data['stock'] = $this->language->get('text_instock');

после $product_info['name']; пробел попробуй поставить

означает что заменяется данная строка и еще 3 строки, идущие за ней, т.е. всего 4.

Благодарю за пояснения, вечером попробую

Поделиться сообщением


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

у меня не удалось перименовать

Inquire Now

Поделиться сообщением


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

у меня не удалось перименовать

Inquire Now

почему?

там прямо на кнопке написано. открываешь xml в notepad++, нажимаешь ctrl+H и заменяшь все Inquire Now на Свой_текст

Поделиться сообщением


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

Решено. проблема была в том что нужно сохранять в utf без boom, иначе модуль просто перестает работтаь

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.