К основному контенту

Сообщения

Добавления "лейбы" бесплатная сборка для ShopOS

Сегодня пришлось подумать, как сделать вывод изображения возле товара в виде бесплатной сборки. При этом задача стояла вывести только на те товары которые отмечаются в админке. Самое интересное что это нужно было сделать на движке ShopOS. Я немного подумал и решил как можно сделать эту возможность без максимального вмешательства в файлы. Правда некоторые нужно поправить. Результат меня порадовал и я решил поделится своей заметкой. Если кому то поможет, то буду только рад. Первый этап: Выводим изображения в карточку товара.   Для выбора отображения данного изображения в админке, при редактировании товара,  я выбрал (заходим в редактирования товара) вкладку "Цена" и в самом низу поле "Показывать единицу упаковки". Отмечаем галочку и сохраняем товар. Для редактирования файла переходим в папку (через фтп) modules -> product_info.php (У вас по умолчанию может быть не один файл, нужно определить какой именно Вам нужен). Находим строку if ( $product -> data [ ...
Недавние сообщения

Запросы SQL

Здесь я буду записывать запросы. которые мне были нужно в процессе работы на проектами. 1. Убрать пробелы в определенной ячейке -   UPDATE   `table`   SET   `field` =   REPLACE ( `field` , ' ' , '' )   WHERE   `field1`   =   'содержимое'

Убрать обязательные поля при редактировании заказа в админке Opencart

Снова пишу для себя заметку, что бы не забыть где искать. Задача: Убрать обязательные поля  при редактировании заказа в админке Opencart. Что бы убрать в контроллере проверку на обязательные поля нужно перейти в catalog/controller/api/customer и найти нужный кусок кода проверки и закомментировать, например нам нужно убрать проверку Фамилии. Это у нас Last Name. Находим код if ((utf8_strlen(trim($this->request->post['lastname'])) < 1) || (utf8_strlen(trim($this->request->post['lastname'])) > 32)) { $json['error']['lastname'] = $this->language->get('error_lastname'); } и комментируем. После чего нужно сохранить и возможно обновить модификацию (если вы ставили какую то модификацию). Что бы убрать красную звездочку, то нужно зайти admin/view/template/sale/order_form.tpl и удалить класс " required " в том месте где не нужно указывать обязательность поля. Что касается 3 вкладки "Оплата"...

Заметка по отправке файла на сервер HTML+Ajax+PHP

Появилась новая задача по загрузке файла на сервер через форму через ajax+PHP. Данную задачу я реализовал, но что бы потом при аналогичной задаче не искать в каком проекте я делал, решил оставить свои наброски здесь. 1. Форма < form id= "upload" enctype= "multipart/form-data" > < div class= "form-group" > < input type= "file" name= "xls" id= "xls" > </ div > < input type= "submit" class= "btn btn-default" > </ form > 2. Ajax < script type= "text/javascript" > $ ( document ). ready ( function () { $ ( '#upload' ). on ( 'submit' , function (e) { e. preventDefault (); var formData = new FormData ( this ); $ . ajax ({ type : 'POST' , // Тип запроса url : '/modules/availability/views/templates/admin/send_file.php' , // Скрипт обработчика ...

Дополнения "История поиска в админке"

Я уже писал статью как можно сделать историю поиска в админке. Но сегодня решил дать ссылку на эту доработку в целях ознакомления и кто захочет доработать под свои нужды. Вот ссылка на скачку файла. Может в будущем сделаю в виде модуля для удобства админа, как установки так и управления. Инструкция: Скачайте и распакуйте архив. Папку admin забросьте в корень сайта. После чего нужно импортировать в MySql файл oc_history_search.sql. Дальше нужно установить файл ocmod. Если файл не установился по каким то причинам, то можете сделать следующее. Найти файл по пути - /catalog/model/catalog/product.php и отредактировать его. После строчки "public function getProducts($data = array())" добавьте следующий код if (isset($this->request->get['search'])) { $search = $this->request->get['search']; $select_history = $this->db->query("SELECT * FROM " . DB_PREFIX . "history_search WHERE name = '$search' "); if...

Модуль вывода товаров с указанных категорий

Сегодня я хочу поделится модулем для Опнекарта (2.0.3.1 русская сборка) который был написан мной для по заданию заказчика. Заказчик захотел получить возможность вывода товаров с определенной категории или несколько категорий в позицию модуля, при этом что бы модуль можно было выводить с различными данными. Например в одной категории товары с одной категории, на главной страницы с другой и так далее. Модуль можете скачать здесь .

Отключения сайта при обновлении модификации

Все кто сидел на Opencar версии выше 2.0.3.0 и ставил модификатор (при этом приходилось его обновлять), то сайт уходил в режим обслуживания. После чего его приходилось включать в ручном режиме. Не помню где я нашел решения проблемы (точно на каком то классном форуме), но столкнулся еще раз, пришлось искать заново. Что бы не искать, я решил запишу в эту маленькую статейку. пусть будет, может кому то еще пригодится. Нужно найти файл admin/controller/extension/modification.php и добавить одну строчку кода. После строки  $this->model_setting_setting->editSettingValue('config', 'config_maintenance', true); добавить следующую строку $this->config->set('config_maintenance', true); Теперь попробуйте обновить модификацию и посмотреть на результаты. Данный метод был использован мной на Опенкарт Version 2.0.3.1 (trs-2.1.0.0)

Создание истории поиска. часть 1 (сайт)

Сегодня хотел бы рассмотреть создания такого функционала как история поиска в админке. Я не дам готово модуля или файлов в данной статье (если кому то, нужно готовое решение пишите на электронику  terel @ list . ru ). Данный функционал может быть полезен для отслеживания поисковых запросов на своем сайте. Не буду Вас томить, приступим. Сейчас мы напишем код для истории поиска со стороны сайта. То есть тот функционал, который будет при поиске писать в базу данные, которые потом нам приходятся для отображения в админ панели сайта. Для этого нам нужно зайти в папку catalog \ model \ catalog \ и отредактировать файл product . php . Открываем файл и ищем строку public function getProducts($data = array())                 { После нее вставляем наш код записи в базу данных с поля поиска if (isset($this->request->get['search'])) {          ...