Опция флажок выбрана по умолчанию!

Тема в разделе "Общие вопросы", создана пользователем MaxcMods, 5 янв 2016.

  1. Эдди

    Эдди Активный пользователь

    Сообщения:
    291
    Симпатии:
    3
    Код:
    <?php if ($option['type'] == 'select') { ?>
                <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
                  <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label>
                  <select name="option[<?php echo $option['product_option_id']; ?>]" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control">
                    <option value=""><?php echo $text_select; ?></option>
                    <?php foreach ($option['product_option_value'] as $key=>$option_value) { ?>
                    <option <?php if ($key == 0) echo ('selected');?> value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?>
                    <?php if ($option_value['price']) { ?>
                    (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
                    <?php } ?>
                    </option>
                    <?php } ?>
                  </select>
                </div>
                <?php } ?>
     
  2. Allaur

    Allaur Пользователь

    Сообщения:
    65
    Симпатии:
    2
    Не работает на 15512
    Опции все пропадают и остаётся только надпись ВЫБЕРИТЕ
     
  3. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    Что именно не работает? Что делали? Решение же описано для 2х
     
  4. Allaur

    Allaur Пользователь

    Сообщения:
    65
    Симпатии:
    2
    Извините, был не внимателен.
    Наверно по этому и не работает))
    Решение на 15х нашёл
     
  5. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    Здравствуйте.
    Подскажите как правильно сделать.
    Мне очень важно что бы в поиске клиент находил что ищет в описании товара, т.к. Подскажите как поставить галочку по умолчанию.
    Скажем у меня 1 товарная единица, совместима с многими моделями, в полном описание я указываю эти модели , но поиск их не находит.
    Мне нужно что бы всегда стояла галочка "искать в описании товара"
    Где что исправить?
     
  6. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    Здравствуйте! Подскажите пожалуйста, где тут поменять, что бы поиск был в тексте товара по умолчанию.

    CKEDITOR.dialog.add("checkbox",function(d){return{title:d.lang.forms.checkboxAndRadio.checkboxTitle,minWidth:350,minHeight:140,onShow:function(){delete this.checkbox;var a=this.getParentEditor().getSelection().getSelectedElement();a&&"checkbox"==a.getAttribute("type")&&(this.checkbox=a,this.setupContent(a))},onOk:function(){var a,b=this.checkbox;b||(a=this.getParentEditor(),b=a.document.createElement("input"),b.setAttribute("type","checkbox"),a.insertElement(b));this.commitContent({element:b})},contents:[{id:"info",
    label:d.lang.forms.checkboxAndRadio.checkboxTitle,title:d.lang.forms.checkboxAndRadio.checkboxTitle,startupFocus:"txtName",elements:[{id:"txtName",type:"text",label:d.lang.common.name,"default":"",accessKey:"N",setup:function(a){this.setValue(a.data("cke-saved-name")||a.getAttribute("name")||"")},commit:function(a){a=a.element;this.getValue()?a.data("cke-saved-name",this.getValue()):(a.data("cke-saved-name",!1),a.removeAttribute("name"))}},{id:"txtValue",type:"text",label:d.lang.forms.checkboxAndRadio.value,
    "default":"",accessKey:"V",setup:function(a){a=a.getAttribute("value");this.setValue(CKEDITOR.env.ie&&"on"==a?"":a)},commit:function(a){var b=a.element,c=this.getValue();!c||CKEDITOR.env.ie&&"on"==c?CKEDITOR.env.ie?(c=new CKEDITOR.dom.element("input",b.getDocument()),b.copyAttributes(c,{value:1}),c.replace(b),d.getSelection().selectElement(c),a.element=c):b.removeAttribute("value"):b.setAttribute("value",c)}},{id:"cmbSelected",type:"checkbox",label:d.lang.forms.checkboxAndRadio.selected,"default":"",
    accessKey:"S",value:"checked",setup:function(a){this.setValue(a.getAttribute("checked"))},commit:function(a){var b=a.element;if(CKEDITOR.env.ie){var c=!!b.getAttribute("checked"),e=!!this.getValue();c!=e&&(c=CKEDITOR.dom.element.createFromHtml('\x3cinput type\x3d"checkbox"'+(e?' checked\x3d"checked"':"")+"/\x3e",d.document),b.copyAttributes(c,{type:1,checked:1}),c.replace(b),d.getSelection().selectElement(c),a.element=c)}else this.getValue()?b.setAttribute("checked","checked"):b.removeAttribute("checked")}},
    {id:"required",type:"checkbox",label:d.lang.forms.checkboxAndRadio.required,"default":"",accessKey:"Q",value:"required",setup:function(a){this.setValue(a.getAttribute("required"))},commit:function(a){a=a.element;this.getValue()?a.setAttribute("required","required"):a.removeAttribute("required")}}]}]}});
     
  7. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    То что вы выше прислали код, никто даже разбираться не будет и причем тут редактор СKEDITOR???
    Ну и во вторых, JS тут не причем. Тут банально нужно зайти в product/search.tpl или .twig и поставить там где input атрибут checked, вот и все.
     
    Roma0893312 нравится это.
  8. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    solunski.d - благодарю вас за ответ.
    На счёт скрипта, понял по аналогичным текстам, что никто не будет вникать.

    Я пробовал изменить, но там (Редактирование файла /ki-ac.com/public_html//catalog/view/theme/newstore/template/product/search.twig) более 20 раз встречается это слово input. В большинстве изменил, но изменения не произошли, так же не стоит галочка в поиске. Скорей всего ,что то не так делаю. Буду вам признателен, если подскажите.

    Да, и есть два похожие catalog/view/theme/default/template/product/search.twig и catalog/view/theme/newstore/template/product/search.twig
    Если правильно понял, в шаблоне и в стандартной форме. Везде изменять?
     
    Последнее редактирование: 28 янв 2018
  9. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    Там же просто и логично, стоит условие:
    PHP:
    <label class="checkbox-inline">
                            <?php if ($description) { ?>
                                <input type="checkbox" name="description" value="1" id="description" checked="checked">
                            <?php } else { ?>
                                <input type="checkbox" name="description" value="1" id="description">
                            <?php ?>
                            <?php echo $entry_description?>
                        </label>
    стоит атрибут checked, ставите для нижнего тоже. Обновляете модификаторы в админке, в разделе расширения -> модификаторы, голубая кнопка справа
     
  10. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    <label class="checkbox-inline">
    {% if (description) %}
    <checked type="checkbox" name="description" value="1" id="description" checked="checked" />
    {% else %}
    <checked type="checkbox" name="description" value="1" id="description" />
    {% endif %}
    {{ entry_description }}</label>

    Вроде всё правильно. Обновил в "Модификатроы" - Действие успешно выполнено!

    Но, поиск по описанию в товаре, так и не происходит.

    Что то не так, не пойму что. Вы меня извините solunski.d, но я новичок, вникаю в opencart. Думаю через время, для меня какие то вещи покажутся банальными, но сейчас если не сложно дайте вашу ценную рекомендацию. Буду признателен.
     
  11. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    Как вы осуществляете поиск? Через страницу поиска или через форму в шапке?
     
  12. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    На главной странице поиск. Ввожу ключевое слово или его корень.
     
  13. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    Тогда вам нужно править скрипт в common.js

    Код:
        /* Search */
        $('#search input[name=\'search\']').parent().find('button').on('click', function() {
            var url = $('base').attr('href') + 'index.php?route=product/search';
    
            var value = $('header #search input[name=\'search\']').val();
    
            if (value) {
                url += '&search=' + encodeURIComponent(value) + '&description=true';
            }
    
            location = url;
        });
    Там где value я добавил параметр description = true
     
  14. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    Изменил, так как вы писали в /catalog/view/javascript/common.js
    /* Search */
    $('#search input[name=\'search\']').parent().find('button').on('click', function() {
    var url = $('base').attr('href') + 'index.php?route=product/search';

    var value = $('header #search input[name=\'search\']').val();

    if (value) {
    url += '&search=' + encodeURIComponent(value) + '&description=true';
    }

    location = url;

    Но, нет результата.

    По мимо /catalog/view/javascript/common.js
    Встречается common.js
    так же тут: /catalog/view/theme/newstore/js/common.js (в шаблоне не встречается аналогичный код, есть похожий, но не он)
    /install/view/javascript/common.js
    /admin/view/javascript/common.js
    Может не там изменяю, но
     
  15. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    Кэш чистите. У меня все работает.
     
  16. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    Не зависит, то что я использую не стандартный шаблон. Кеш удалял. Не пойму в чем дело.
    Писал ранее, что у меня два файла похожих
    1. catalog/view/theme/newstore/js/common.js
    2. catalog/view/javascript/common.js
    Делал все во втором варианте, а шаблон то у меня в первом.
     
  17. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    Определитесь какой шаблон стоит и какой из этих файлов подключен у вас в шапке.
    Если дефолтная тема, то скрипт номер 2.
     
  18. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    Использую тему "newstore" на opencart 3. Вы меня этими словами отправили в нокаут. Дефолтная тема - это стандартная, как я поянял. Значит нет. Где проверить что подключено к шапке, затрудняюсь. Видимо он же "Newstore"/ Только там совсем все по другому...

    /* Search */

    $('.btn-search').on('click', function() {
    url = $('base').attr('href') + 'index.php?route=product/search';

    var value = $('header input[name=\'search\']').val();

    if (value) {
    url += '&search=' + encodeURIComponent(value);
    } else {
    url += '&search=';
    }

    var category_id = $('input[name=\'category_id\']').prop('value');
    if (category_id > 0) {
    url += '&category_id=' + encodeURIComponent(category_id);
    }

    }
    location = url;
     
  19. solunski.d

    solunski.d Эксперт

    Сообщения:
    1.569
    Симпатии:
    432
    Очень сложно найти эту строку
    PHP:
    url += '&search=' encodeURIComponent(value);
    и изменить ее на
    PHP:
     url += '&search=' encodeURIComponent(value) + '&description=true';
    Чувствую себя гением))) только не забудьте, обновить кэш CTRL + F5
     
    Roma0893312 нравится это.
  20. Roma0893312

    Roma0893312 Пользователь

    Сообщения:
    44
    Симпатии:
    0
    Изменил, не помогло. Кеш удалил!


    /* Search */

    $('.btn-search').on('click', function() {
    url = $('base').attr('href') + 'index.php?route=product/search';

    var value = $('header input[name=\'search\']').val();

    if (value) {
    url += '&search=' + encodeURIComponent(value) + '&description=true';
    } else {
    url += '&search=';
    }

    var category_id = $('input[name=\'category_id\']').prop('value');
    if (category_id > 0) {
    url += '&category_id=' + encodeURIComponent(category_id) + '&sub_category=true';
    }
    location = url;


    Восстановил вариант 27.01, может думал что не то натворил. Добавил как выше в описании, удалил кеш, но нет результата.
    www.ki-ac.com вот посмотрите, на ввод в поиск слова станкосторитель или станк, ничего не находить, если уже внутри поиска ставлю галочку, то соответственно находит.