shishifr1
-
Публікації
14 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем shishifr1
-
-
ну или сделать так
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'); }
-
PS Рекомендую решить проблему другим способом - спрятать текст описания категории под спойлер. И места занимать не будет много и поисковики индексировать будут как надо и гемороя с версткой избежите
Ну вы конечно советуете. Человек попросил совета в конкретной задаче. Зачем прятать сеошный текст под спойлер и потом челове захочет его прочтать и увиди что там ничего интересного, расстроится.
Автор, в вашем случае нужно элементу 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>
теперь у вас описание внизу визуально, но в коде оно вверху
-
подозреваю что у вас в корневой папке лежит файлик Index.html - удалите его ;)
-
<a onclick="yaCounter.reachGoal('TO_CART'); _gaq.push(['_trackPageview', '/to_cart.html']); $('#guest').submit();" class="button"><span><?php echo $button_continue; ?></span></a>
так попробуйте
- 1
-
Всем привет.
Столкнулся с проблемой, заказчик просит в админке вбивать цены в евро, а на сайте, чтобы они отображались в гривнах.
Нашел решение, вот делюсь, вдруг, кто-то то же такое ищет.
Все до удивительного просто. Вы должны указать опенкарту главную валюту одну, а пользователю (браузеру пользователя) указать другую. И будет произведен пересчет для него.
Меняем всего одну строку в файле /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(); задает пользователю начальную валюту
Вот и все, надеюсь, кому-то это поможет
- 1
-
Вставлю свои 5 копеек :)
на оксторе 1.5.4.1 ничего не изменилось ((
Обязательно надр очистить /image/cache/data
-
Вставлю свои 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 и удалить кшированые изображения со старым ресайзом
- 1
-
Интересует такая правка. Кто-то может подсказать?
-
Та же проблема. Не передана информация для покупки
Версия ОсСторе 1.5.3.1
Ввел id и подпись в настройках оплаты и уже на стороне LiqPay выдает ошибку.
Кто-то может помочь?
-
Здравствуйте. Купил модуль, установил на 1.5.3.1, все вроде гуд, но если нажать на кнопку оформить после заполнения всех полей, то ничего не происходит
Изменение порядка шагов оформления заказа
в Допомога програмістам та розробникам
Опубліковано:
Поставьте модуль Simple (Оформление и регистрация заказа).
Там есть возможность связывать между собой поля доставки и оплаты