felihan Posted October 21, 2012 Share Posted October 21, 2012 В админке в выводе товаров поле нач. цена мне совсем не нужно. А было бы неплохо добавить поле сортировки закупочная цена. Кто подскажет как это сделать в 1.5. престе? Спасибо. Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted October 25, 2012 Share Posted October 25, 2012 Привет! Для этого нужно открыть файл override/controllers/admin/AdminProductsController.php и заменить весь код на следующий: <?php class AdminProductsController extends AdminProductsControllerCore { public function __construct() { parent::__construct(); $this->fields_list['price_final'] = array( 'title' => $this->l('Final price'), 'width' => 90, 'type' => 'price', 'align' => 'right', ); } public function getList($id_lang, $orderBy = null, $orderWay = null, $start = 0, $limit = null, $id_lang_shop = null) { $orderByPriceFinal = (empty($orderBy) ? ($this->context->cookie->__get($this->table.'Orderby') ? $this->context->cookie->__get($this->table.'Orderby') : 'id_'.$this->table) : $orderBy); $orderWayPriceFinal = (empty($orderWay) ? ($this->context->cookie->__get($this->table.'Orderway') ? $this->context->cookie->__get($this->table.'Orderby') : 'ASC') : $orderWay); AdminController::getList($id_lang, $orderBy, $orderWay, $start, $limit, $this->context->shop->id); $nb = count($this->_list); if ($this->_list) { for ($i = 0; $i < $nb; $i++) { $this->_list[$i]['price'] = Tools::convertPrice($this->_list[$i]['price'], $this->context->currency, true, $this->context); $this->_list[$i]['price_tmp'] = Product::getPriceStatic($this->_list[$i]['id_product'], true, null, 2, null, false, true, 1, true); } } if ($orderByPriceFinal == 'price_final') { if (strtolower($orderWayPriceFinal) == 'desc') uasort($this->_list, 'cmpPriceDesc'); else uasort($this->_list, 'cmpPriceAsc'); } for ($i = 0; $this->_list && $i < $nb; $i++) { $this->_list[$i]['price_final'] = $this->_list[$i]['price_tmp']; unset($this->_list[$i]['price_tmp']); } if ($orderByPriceFinal == 'price_final') { $order = (string)Tools::getValue('productOrderway'); usort($this->_list, create_function('$a, $b','return $a["price_final"] ' . (strtolower($order) == 'desc' ? '<' : '>') . ' $b["price_final"];') ); } } } Link to comment Share on other sites More sharing options...
felihan Posted October 25, 2012 Author Share Posted October 25, 2012 Большое спасибо за ответ. Я внес этот код в override/controllers/admin/AdminProductsController.php до этого там был такой код <?php class AdminProductsController extends AdminProductsControllerCore { } но ничего не изменилось. Не подскажешь почему? может еще что-нибудь надо сделать? Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted October 26, 2012 Share Posted October 26, 2012 Возможно установлен кастомный модуль, который реврайтит AdminProductsController.php А можно скрин страницы со списком продуктов? Какая версия престы? я проверял на 1.5.0.17 Link to comment Share on other sites More sharing options...
felihan Posted October 26, 2012 Author Share Posted October 26, 2012 (edited) Я поставил чистую версию 1.5.1.0 не ставил никаких доп. модулей. только тему добавил свою. И еще я включил мультимагазин. и настраиваю два магазина. с оптовыми и розничными ценами. Возможно из-за этого не работает? вот скрин с админки.http://savepic.ru/3224193.png Edited October 26, 2012 by felihan (see edit history) Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted October 26, 2012 Share Posted October 26, 2012 Прошу прощения, но я не так сразу понял вопрос) Вот код для файла override/controllers/admin/AdminProductsController.php: <?php class AdminProductsController extends AdminProductsControllerCore { public function __construct() { parent::__construct(); $this->fields_list['wholesale_price'] = array( 'title' => $this->l('Wholesale price'), 'width' => 90, 'type' => 'price', 'align' => 'right', ); } } Link to comment Share on other sites More sharing options...
felihan Posted October 26, 2012 Author Share Posted October 26, 2012 (edited) А с этим кодом никакие товары совсем не выводятся. пусто. :-) а остальной код не надо разве вставлять? Edited October 26, 2012 by felihan (see edit history) Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted October 26, 2012 Share Posted October 26, 2012 Нет, остальной код не нужен. Возможно вы случайно допустили ошибку в коде. У меня колонка добавилась без проблем: Включите отображение ошибок в файле config/config.inc.php заменив строчку @ini_set('display_errors', 'off'); на эту: @ini_set('display_errors', 'on'); 1 Link to comment Share on other sites More sharing options...
felihan Posted October 26, 2012 Author Share Posted October 26, 2012 код проверил, такой как у вас. включение отображение ошибок, ошибок не выявило. после надписи конфигурация мультимагазина больше ничего нет, пусто. Может это быть из-за того что у меня включен мультимагазин? Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted October 26, 2012 Share Posted October 26, 2012 Нет, мультимагазин не влияет на работу. Могу скинуть исходник престы с этой рабочей фичей) Link to comment Share on other sites More sharing options...
felihan Posted October 26, 2012 Author Share Posted October 26, 2012 Спасибо, буду очень признателен :-) felihan(собака)pisem.net Link to comment Share on other sites More sharing options...
felihan Posted October 27, 2012 Author Share Posted October 27, 2012 Установил чистую престу без русификации без своей темы. работает там ваша фича. :-) Спасибо. Буду теперь разбираться где собака порылась. Link to comment Share on other sites More sharing options...
Dzianis Yurevich Posted October 29, 2012 Share Posted October 29, 2012 А где русификацию брали? Я бы смог глянуть, если чего) Link to comment Share on other sites More sharing options...
felihan Posted October 29, 2012 Author Share Posted October 29, 2012 Русификация то совсем не причем. Как только включаешь мультимагазин и добавляешь второй магазин . фича сразу перестает работать, и вместо каталога товара мы видим пустой экран. Стоит нам удалить второй магазин, все опять работатет нормально. Link to comment Share on other sites More sharing options...
baton94 Posted August 21, 2014 Share Posted August 21, 2014 Для ps 1.6 ваш способ, к сожалению, не подходит. Выдает ошибку "Неверный SQL запрос Column 'wholesale_price' in field list is ambiguous". Кто-нибудь подскажет как сделать для ps 1.6? Заранее спасибо! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now