Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Как сделать необязательной к заполнению "Модель"?


 Поделиться

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

Как сделать необязательной к заполнению "Модель"?

Комментирование нужных tpl не является самым удобным решением, т.к.,

например, в корзине остаётся сама надпись "Модель" и этот column

просто не уберёшь.

Советы в духе "поиск по сайту" категорически не приветствуются. Английский форум не помог.

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


Ага, поделитесь решением!

В "admin/controller/catalog/product.php" (линии 881 - 883) найти и удалить:

if ((strlen(utf8_decode($this->request->post['model'])) < 3) || (strlen(utf8_decode($this->request->post['model'])) > 24)) {
   $this->error['model'] = $this->language->get('error_model');
}

Далее в admin/view/template/catalog/product_form.tpl" (линии 38 - 42) найти:

<td><input type="text" name="model" value="<?php echo $model; ?>" />
  <br />
  <?php if ($error_model) { ?>
  <span class="error"><?php echo $error_model; ?></span>
  <?php } ?></td>

и заменить на:

<td><input type="text" name="model" value="<?php echo $model; ?>" /></td>

И последнее, в "catalog/view/theme/имя шаблона/template/product/product.tpl"(линии 25 - 28) найти и удалить:

<tr>
  <td><b><?php echo $text_model; ?></b></td>
  <td><?php echo $model; ?></td>
</tr>

Взято отсюда

В результате у меня получилось следующее: поле "модель" перестает быть обязательным к заполнению, при просмотре товара вообще нет категории "модель", но в корзине она видна.

Еще у меня возникла проблема с поиском последнего кода в product.tpl в шаблоне greenstore. Этого кода там просто нет. На свой страх скопировал product.tpl из шаблона default, произвел изменения и залил в greenstore заместо родного. Вродь как получилось :) Будут ошибки - отпишу.

  • +1 2
Ссылка на комментарий
Поделиться на других сайтах


  • 4 года спустя...

Всё очень круто, но есть одно "но" - зачем полностью выпиливать модель когда можно сделать чуть круче ;)

 

В моём варианте модель не удаляется полностью, вместо этого мы делаем поле "модель" необязательным, а затем заставляем движок проверять при отображении товара - если есть модель, то мы её показываем, а если нет - скрываем подпись "модель" с глаз долой. :-)

 

Делаем сначала почти так, как описано выше, то есть:

 

В "admin/controller/catalog/product.php" (линии 881 - 883) найти и удалить:

if ((strlen(utf8_decode($this->request->post['model'])) < 3) || (strlen(utf8_decode($this->request->post['model'])) > 24)) {
   $this->error['model'] = $this->language->get('error_model');
}

Далее, в admin/view/template/catalog/product_form.tpl" (у меня в версии 1.5.6.1 это строка 58) найти:

<td><span class="required">*</span> <?php echo $entry_model; ?></td>
     <td><input type="text" name="model" value="<?php echo $model; ?>" />
          <?php if ($error_model) { ?>
     <span class="error"><?php echo $error_model; ?></span>
<?php } ?></td>

и заменить на:

<td><?php echo $entry_model; ?></td>
<td><input type="text" name="model" value="<?php echo $model; ?>" /></td>

А после делаем чуть иначе, пропускаем пункт 3 в product.tpl не удаляем строки, а вместо этого находим (у меня на 29 строке) это:

<span><?php echo $text_model; ?></span> <?php echo $model; ?><br />

И меняем на это:

<?php if ($model) { ?>
        <span><?php echo $text_model; ?></span> <?php echo $model; ?><br />
<?php } ?>

То есть добавили проверку - если есть что показать в поле модель то всё отображается как прежде, а если показывать нечего - прячется.

 

P.s. Буду рад замечаниям/поправкам, но у меня полёт нормальный. :-)

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


  • 9 месяцев спустя...

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

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

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