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

shishifr1

Новичок
  
  • Публикаций

    14
  • Зарегистрирован

  • Посещение

Все публикации пользователя shishifr1

  1. Поставьте модуль Simple (Оформление и регистрация заказа). Там есть возможность связывать между собой поля доставки и оплаты
  2. ну или сделать так if($this->request->get['path']) { $this->document->addLink($this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $this->request->get['product_id']), 'canonical'); } else { $this->document->addLink($this->url->link('product/product', 'product_id=' . $this->request->get['product_id']), 'canonical'); }
  3. Ну вы конечно советуете. Человек попросил совета в конкретной задаче. Зачем прятать сеошный текст под спойлер и потом челове захочет его прочтать и увиди что там ничего интересного, расстроится. Автор, в вашем случае нужно элементу div.category-info в цсс задать element.style { position: absolute; bottom: 0; } для div#content добавить в css position: relative; теперь описание находится внизу блока content, но оно налезает на список товаров. ЧТобы это исправить нужно задать свойство margin-bottom для блока product-list, которое равно высоте блока category-description. Cделать это можно на ходу с помощью javascript. Например <script type="text/javascript"> var infoHeight = document.getElementById('category-info').offsetHeight; var list = document.getElementsByClassName('product-list'); if( list !== null ) { list[0].setAttribute("style", "margin-bottom:" + infoHeight.toString() + "px"); } </script> теперь у вас описание внизу визуально, но в коде оно вверху
  4. <a onclick="yaCounter.reachGoal('TO_CART'); _gaq.push(['_trackPageview', '/to_cart.html']); $('#guest').submit();" class="button"><span><?php echo $button_continue; ?></span></a> так попробуйте
  5. Всем привет. Столкнулся с проблемой, заказчик просит в админке вбивать цены в евро, а на сайте, чтобы они отображались в гривнах. Нашел решение, вот делюсь, вдруг, кто-то то же такое ищет. Все до удивительного просто. Вы должны указать опенкарту главную валюту одну, а пользователю (браузеру пользователя) указать другую. И будет произведен пересчет для него. Меняем всего одну строку в файле /system/library/currency.php В функции public function __construct($registry) { в последней ее строке (строка 33 в OcStore 1.5.4.1) меняем $this->set($this->config->get('config_currency')); на $this->set('UAH'); в данном случае я в админке создал валюту "гривны" с кодом "UAH" У рубля это код "RUB" У доллара "USD" Функция set(); задает пользователю начальную валюту Вот и все, надеюсь, кому-то это поможет
  6. на оксторе 1.5.4.1 ничего не изменилось (( Обязательно надр очистить /image/cache/data
  7. Вставлю свои 5 копеек :) 2 функции - ресайз изображений с зумом (если не пропорционально, то картинка приближается для заполнения окна и белых полос нет) Установка: 1) Открываем файл /catalog/models/tool/image.php и перед public function resize($filename, $width, $height) { вставляем public function myresize($filename, $width, $height) { if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) { return; } $info = pathinfo($filename); $extension = $info['extension']; $old_image = $filename; $new_image = 'cache/' . substr($filename, 0, strrpos($filename, '.')) . '-' . $width . 'x' . $height . '.' . $extension; if (!file_exists(DIR_IMAGE . $new_image) || (filemtime(DIR_IMAGE . $old_image) > filemtime(DIR_IMAGE . $new_image))) { $path = ''; $directories = explode('/', dirname(str_replace('../', '', $new_image))); foreach ($directories as $directory) { $path = $path . '/' . $directory; if (!file_exists(DIR_IMAGE . $path)) { @mkdir(DIR_IMAGE . $path, 0777); } } $image = new Image(DIR_IMAGE . $old_image); $image->myresize($width, $height); $image->save(DIR_IMAGE . $new_image); } if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) { return HTTPS_IMAGE . $new_image; } else { return HTTP_IMAGE . $new_image; } } 2) Файл /system/library/image.php перед public function resize($width = 0, $height = 0) { вставляем public function myresize($width = 0, $height = 0) { if (!$this->info['width'] || !$this->info['height']) { return; } $x = $this->info['width']; $y = $this->info['height']; // old images width will fit if(($x / $y) < ($width/$height)){ $scale = $width/$x; $newX = 0; $newY = - ($scale * $y - $height) / 2; // else old image's height will fit }else{ $scale = $height/$y; $newX = - ($scale * $x - $width) / 2; $newY = 0; } $image_old = $this->image; $this->image = imagecreatetruecolor($width, $height); $new_width = $scale * $x; $new_height = $scale * $y; // now use imagecopyresampled imagecopyresampled($this->image, $image_old, $newX, $newY, 0, 0, $new_width, $new_height, $x, $y); if (isset($this->info['mime']) && $this->info['mime'] == 'image/png') { imagealphablending($this->image, false); imagesavealpha($this->image, true); $background = imagecolorallocatealpha($this->image, 255, 255, 255, 127); imagecolortransparent($this->image, $background); } else { $background = imagecolorallocate($this->image, 255, 255, 255); } imagedestroy($image_old); $this->info['width'] = $width; $this->info['height'] = $height; } 3) теперь везде используется пока стандартная функция ресайза. Если вы хотите использовать новую, например в категории (в списке отображения товаров), то вам нужно открыть файл /catalog/controller/product/category.php, найти там $this->model_tool_image->resize и заменить на $this->model_tool_image->myresize. И так везьде где вам нужно. Не забудьте зайти потом в папку /image/cache/data и удалить кшированые изображения со старым ресайзом
  8. shishifr1

    поменять radio на select

    Интересует такая правка. Кто-то может подсказать?
  9. Та же проблема. Не передана информация для покупки Версия ОсСторе 1.5.3.1 Ввел id и подпись в настройках оплаты и уже на стороне LiqPay выдает ошибку. Кто-то может помочь?
  10. Здравствуйте. Купил модуль, установил на 1.5.3.1, все вроде гуд, но если нажать на кнопку оформить после заполнения всех полей, то ничего не происходит
×
×
  • Создать...

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

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