-
Публикаций
217 -
Зарегистрирован
-
Посещение
Тип публикации
Профили
Форум
Дополнения
Статьи
FAQ
Наши новости
Наши услуги
Блоги
module__dplus_manager
Все публикации пользователя DRONGO
-
[Решено] Вывод иконок в зависимости от значения атрибута
DRONGO ответил в теме пользователя DRONGO в Programming, creating modules, changing functionality
Спасибо! Денег мне не жалко, тем более модули совсем недорогие... + я сам ненавижу халявщиков, однако хочу осуществить это с помощью минимального кол-ва кода, чисто и аккуратно (без модулей). -
[Решено] Вывод иконок в зависимости от значения атрибута
DRONGO ответил в теме пользователя DRONGO в Programming, creating modules, changing functionality
У меня есть небольшие знания в php, хорошо знаю wordpress! А OpenCart похуже... Код у меня тоже есть! <?php if ( $attribute['name'] == 'Сезонность' && $attribute['text'] == 'Зимняя') { echo 'Здесь контент, стикер'; } ?> -
Короче, делаю магаз шин... В атрибутах будут разные параметры, в том числе сезонность: зимние, летние, всесезонки... Как бы в каталог вывести иконки в зависимости от значения атрибутов? В php плохо соображаю =((( <?php if ( $attribute['name'] == 'Сезонность' && $attribute['text'] == 'Зимняя') { echo 'Здесь контент, стикер'; } ?>
-
[Решено] Вывод иконок в зависимости от значения атрибута
DRONGO ответил в теме пользователя DRONGO в Programming, creating modules, changing functionality
Надеюсь, минус в мою репу поднял вам самооценки... В общем извните, я просто ошибся темой, хотел в эту написать https://opencartforum.com/forum/40-помощь-программистам-и-разработчикам/ а так как писал ночью - перепутал. Теперь понятно, почему такие ответы накидали =))) Вот вы мне покажите пример - как это сделать и я научусь! Буду делать так же, по аналогии - на других своих проектах... -
[Решено] Вывод иконок в зависимости от значения атрибута
DRONGO ответил в теме пользователя DRONGO в Programming, creating modules, changing functionality
Корявые, платные модули и предложение услуг - это всё очень здорово! Но нужна помощь в написании кода, который будет проверять наличия значения атрибута, что то типа - <?php if ( $attribute['name'] == 'Сезонность' && $attribute['text'] == 'Зимняя') { echo 'Здесь контент, стикер'; } ?> -
Шаблон "Magazin" для ocStore/Opencart [Поддержка]
DRONGO ответил в теме пользователя themodul в Платные шаблоны
Ну да, я потом увидел, что заработало, так и подумал - временно лагануло... А можно будет получить дамп базы, при покупке шаблона? Просто, там ведь очень много разных настроек (размер картинок, настройки модулей...) боюсь не осилить всё это или же придётся демо админку юзать от и до - чтобы понять что к чему, а это время. -
Шаблон "Magazin" для ocStore/Opencart [Поддержка]
DRONGO ответил в теме пользователя themodul в Платные шаблоны
Классный шаблон! -
быстрый заказ Модуль Простой быстрый заказ (бесплатно, vqmod) [Поддержка]
DRONGO ответил в теме пользователя RGB в Покупки, оформление заказа, корзина
Помогите решить 2 проблемы: Модуль почему то дублирует заказы, присылает сразу 2, всё перерыл - ничего не пойму... Как очищать поля формы после удачно отправки? Ведь если клиент заказал 1 товар, а потом решил заказать ещё один, то поля формы уже заполнены - это хорошо, но кнопки отправить - нету... то-есть нужна альтернатива этому решению - $('#fast_go').html(''); <div id="fast_go"><button class="singleclick_button"><span>Отправить</span></button></div> -
Модуль Автоматическая обработка прайс-листов. [Поддержка]
DRONGO ответил в теме пользователя usergio в Модули обмена данными
У меня более двухсот дублей... выглядят они так (далеко не в xml файле) - http://jpegshare.net/images/7a/d1/7ad1ed16e7e47069f046c3669a3f0f98.png Посмотрел инструменты модуля, почитал инструкцию..., неужели нет возможности просто удалить дубли? Считая за дубль товар с абсолютно одинаковым названием.- 49 512 ответов
-
- поставщики импорт
- наполнение им
- (и ещё 19)
-
Получается, но всё равно выходит какая то хрень, html выводится нормально, но последующая вёрстка сайта ломается (видимо из-за присутствия каких то тегов в описании товара и из-за их нарушения), причём этот же шаблон с таким жеточно описанием товара - на вордпрессе работает нормально, вёрстка не слетает... Поэтому хз в чём тут дело. Как вывести из базы полное описание товара со всем, что там есть? Всё до последнего символа - в девственном, первозданном виде
-
Хотели небось уже спустить на меня собак? Мол, тема уже заюзаная....?! А вот и нет, весь интернет перерыл, ответа не нашёл, нужна ваша помощь! Таким кодом я могу вывести краткое описание товара в категорию - 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 500) . '..', А мне нужно, помимо этого описания - ещё одна функция по выводу описания, но уже полного описания вместе с html разметкой, картинками и всем остальным - что юзер напишет в окне редактировангия к товару.... Смотрите мой макет, сразу всё поймёте -
-
Помогите наладить сropsize изображений в новостном модуле
DRONGO ответил в теме пользователя DRONGO в Помощь программистам и разработчикам
Утром встал, почистил кеш и всё заработало :-D -
Нашёл вот такую статью - как добавить функцию сropsize в опенкарт... но никак не получается сделать её в новости Код добавил в /catalog/model/tool/image.php Изображение вывожу в новостях таким образом: В контроллере - 'image' => $result['image'] В вёрстку - <img src="<?php echo $this->model_tool_image->myResize($news_story['image'], $this->config->get('news_thumb_width'), $this->config->get('news_thumb_height')); ?>"> Если убираю - , $this->config->get('news_thumb_height') перестаёт работать... помогите, пожалуйста!
-
Блин, час от часу не легче... это пздц какой то... Наладил доступ в базу админка работает хорошо! А на главной неведомая хрень - Notice: unserialize() [function.unserialize]: Error at offset 184 of 198 bytes in /home/loginhostinga/website.ru/docs/index.php on line 68 Notice: unserialize() [function.unserialize]: Error at offset 127 of 734 bytes in /home/loginhostinga/website.ru/docs/index.php on line 68 Notice: unserialize() [function.unserialize]: Error at offset 11 of 47 bytes in /home/loginhostinga/website.ru/docs/index.php on line 68 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/loginhostinga/website.ru/docs/index.php:68) in /home/loginhostinga/website.ru/docs/system/library/session.php on line 11 Fatal error: Call to undefined function hash() in /home/loginhostinga/website.ru/docs/system/library/encryption.php on line 7 Хостеру написал - они пишут, что это у меня сайт кривой... я им даю ссылку на рабочую копию (временный домен), а они один хрен... мол там ошибки просто выключены :-D
-
Ребят, у кого есть опыт по установке магаза на это убожество https://www.nic.ru/, что там надо в конфиге писать? Сейчас вот что - <?php // HTTP define('HTTP_SERVER', 'http://website.ru/'); // HTTPS define('HTTPS_SERVER', 'http://website.ru/'); // DIR define('DIR_APPLICATION', '/home/loginhostinga/website.ru/docs/catalog/'); define('DIR_SYSTEM', '/home/loginhostinga/website.ru/docs/system/'); define('DIR_DATABASE', '/home/loginhostinga/website.ru/docs/system/database/'); define('DIR_LANGUAGE', '/home/loginhostinga/website.ru/docs/catalog/language/'); define('DIR_TEMPLATE', '/home/loginhostinga/website.ru/docs/catalog/view/theme/'); define('DIR_CONFIG', '/home/loginhostinga/website.ru/docs/system/config/'); define('DIR_IMAGE', '/home/loginhostinga/website.ru/docs/image/'); define('DIR_CACHE', '/home/loginhostinga/website.ru/docs/system/cache/'); define('DIR_DOWNLOAD', '/home/loginhostinga/website.ru/docs/download/'); define('DIR_LOGS', '/home/loginhostinga/website.ru/docs/system/logs/'); // DB define('DB_DRIVER', 'mysql'); define('DB_HOSTNAME', 'login.mysql'); define('DB_USERNAME', 'login_mysql'); define('DB_PASSWORD', 'jk5j345455g'); define('DB_DATABASE', 'login_baza'); define('DB_PREFIX', ''); ?> Ошибку выдаёт вот такую - Notice: Error: Could not connect to database loginhostinga_air-cond in /home/loginhostinga/website.ru/docs/system/database/mysql.php on line 11 Notice: Error: No database selected Error No: 1046 SELECT * FROM store WHERE REPLACE(`url`, 'www.', '') = 'http://website.ru/' in /home/loginhostinga/website.ru/docs/system/database/mysql.php on line 50 Вывел её с помощью - php_value display_errors 1 А так белый экран был...
-
сбор средств на XDS Coloring Theme для ocStore v1.5.5.1.2
DRONGO ответил в теме пользователя xds в Платные шаблоны
(function($){ var ocfilter = { timers: {}, values: {}, options: {}, offset: null, init: function(options, module) { this.options = $.extend({}, options); this.options.element.ocfilter = $('.box-content', module); this.offset = this.options.element.ocfilter.offset(); this.options.element.fields = $('.option-values input, .option-values select option', this.options.element.ocfilter); this.options.element.target = $('.ocf-target', this.options.element.ocfilter); this.options.element.labels = $('label', this.options.element.ocfilter); this.options.element.values = $('label, select option', this.options.element.ocfilter); this.options.element.desription = $('.option-name b', this.options.element.ocfilter); var $this = this; this.options.element.values.each(function(){ $this.values[$(this).attr('id')] = $(this); }); this.options.element.target.live('change', function() { $this.options.php.params = this.value; var target = $(this), selectbox = target.parents('.ocfilter-selectbox'); /* Marked selected values */ if (target.is('select')) { if ($('option:first', target).attr('selected')) { target.removeClass('selected'); } else if (!target.hasClass('selected')) { target.addClass('selected'); } } else if (target.attr('type') == 'checkbox') { target.parent().toggleClass('selected'); } else if (target.attr('type') == 'radio') { $('label', target.parents('div.ocfilter-option')).removeClass('selected'); target.parent().addClass('selected'); } if (selectbox.length) { var label = target.parent('label'), clone = label.clone(), id = 'sb-' + label.attr('id'), selecteds = target.parents('.ocfilter-selectbox').find('.selecteds'), length = selecteds.find('span').length; if (target.prop('checked')) { selectbox.addClass('selected'); clone.find('small, input').remove(); if (target.attr('type') == 'radio') { selecteds.find('span').remove(); } var text = clone.text(); if (text.length > 20) { text = text.substr(0, 20) + '..'; } selecteds.append('<span id="' + id + '">' + text + '</span>').find('i').remove(); } else { if (length === 1) { selectbox.removeClass('selected'); $('#' + id).replaceWith('<i>' + $this.options.text.any + '</i>'); } else { $('#' + id).remove(); } } target = selectbox.find('.selecteds'); } if ($this.options.php.showButton) { $this.scroll(target); $this.update(); } else { var url = $this.options.php.link; if ($this.options.php.params) url += '&' + $this.options.php.index + '=' + $this.options.php.params; window.location = url; } return false; }); if (this.options.php.showPrice) { this.options.sliders.push({ callback: { option_id: 'p', left: this.options.element.priceFrom, right: this.options.element.priceTo, priceMin: this.options.element.priceMin, priceMax: this.options.element.priceMax, manualPrice: this.options.php.manualPrice }, scale: this.options.element.priceScale, dual: true, min: this.options.php.minPrice, max: this.options.php.maxPrice, minVal: this.options.php.minPriceValue, maxVal: this.options.php.maxPriceValue, onMove: function() { this.callback.left.text(this.minVal); this.callback.right.text(this.maxVal); if (this.callback.manualPrice) { this.callback.priceMin.val(this.minVal); this.callback.priceMax.val(this.maxVal); } }, onLoad: function() { if (this.callback.manualPrice) { var tb = this; tb.callback.priceMin.on('change', function(){ if (this.value == '') return false; if (this.value < parseInt(tb.min) || this.value > parseInt(tb.maxVal)) this.value = tb.min; tb.minVal = this.value; tb.setState().end(); }); tb.callback.priceMax.on('change', function(){ if (this.value == '') return false; if (this.value > parseInt(tb.max) || this.value < parseInt(tb.minVal)) this.value = tb.max; tb.maxVal = this.value; tb.setState().end(); }); } } }); } /* Set other sliders */ for (var i = 0; i < this.options.sliders.length; i++) { var slider = $.extend({ onMove: function() { this.callback.left.text(this.minVal); if (this.dual) { this.callback.right.text(this.maxVal); } }, onChange: function() { this.scale.data('ocfilter').params.remove.call(this.scale.data('ocfilter'), this.callback.option_id); this.scale.data('ocfilter').params.set.call(this.scale.data('ocfilter'), this.callback.option_id, this.minVal + '-' + this.maxVal); this.scale.data('ocfilter').scroll(this.scale); this.scale.data('ocfilter').update(); } }, this.options.sliders); slider.scale.data('ocfilter', this).trackbar(slider); } /* Selectbox switcher values show/hide */ $('.ocfilter-selectbox .selecteds', this.options.element.ocfilter).live('click', function(e) { var $this = $(this).parent('.ocfilter-selectbox'); if (!this.hasClass('active')) { $('.ocfilter-selectbox').removeClass('active'); this.addClass('active'); } else { this.removeClass('active'); } }); /* Options show/hide */ $('.show-hidden-options', this.options.element.ocfilter).live('click', function() { $(this).toggleClass('active').attr('title', ($(this).attr('title') == $this.options.text.hide ? $this.options.text.show_all : $this.options.text.hide)); $('.hidden-options', $this.options.element.ocfilter).toggleClass('visible'); }); /* Values show/hide */ $('.show-hidden-values', this.options.element.ocfilter).live('click', function() { $('.show-hidden-values.active').not(this).click(); $(this).toggleClass('active').text($(this).text() == $this.options.text.hide ? $this.options.text.show_all : $this.options.text.hide); $('.hidden-values', $(this).parent('div')).toggleClass('visible'); }); /* Hide hidden and selectbox values on click them out */ $(document).click(function(e){ if (!$(e.target).parents('.ocfilter-selectbox').length) $('.ocfilter-selectbox.active').removeClass('active'); if (!$(e.target).parents('.hidden-values.visible').length && !$(e.target).hasClass('show-hidden-values')) $('.show-hidden-values.active').click(); }); /* Price inputs show/hide */ if (this.options.php.manualPrice) { this.options.element.priceScale.live({ mouseover: function(){ $this.delayShow($('#fields-price-' + $this.options.php.module), 'fields-price-show-' + $this.options.php.module, 250); $this.clearTimeout('fields-price-hide-' + $this.options.php.module); }, mouseout: function() { $this.delayHide($('#fields-price-' + $this.options.php.module), 'fields-price-hide-' + $this.options.php.module, 1000); $this.clearTimeout('fields-price-show-' + $this.options.php.module); } }); $('#fields-price-' + this.options.php.module).live({ mouseover: function(){ $(this).addClass('hover'); $this.clearTimeout('fields-price-hide-' + $this.options.php.module); }, mouseout: function() { $(this).removeClass('hover'); $this.delayHide($(this), 'fields-price-hide-' + $this.options.php.module, 1000); } }); } /* Float button show/hide */ if (this.options.php.showButton || this.options.php.showPrice) { this.options.element.ocfilter.live({ mouseover: function(){ $this.delayShow($('#button-float-' + $this.options.php.module), 'button-float-show-' + $this.options.php.module, 250); $this.clearTimeout('button-float-hide-' + $this.options.php.module); }, mouseout: function() { $this.delayHide($('#button-float-' + $this.options.php.module), 'button-float-hide-' + $this.options.php.module, 1500); $this.clearTimeout('button-float-show-' + $this.options.php.module); } }); } /* Option description show/hide */ this.options.element.desription.live({ mouseover: function(){ var option = $(this).parents('.ocfilter-option'); $this.delayShow($('.option-description', option), 'option-description-show-' + option.index(), 250); $this.clearTimeout('option-description-hide-' + option.index()); }, mouseout: function() { var option = $(this).parents('.ocfilter-option'); $this.delayHide($('.option-description', option), 'option-description-hide-' + option.index(), 500); $this.clearTimeout('option-description-show-' + option.index()); } }); }, update: function() { var $this = this, data = { path: this.options.php.path, module: this.options.php.module }; if (this.options.php.params) { data[this.options.php.index] = this.options.php.params; } this.preload(); $.get('index.php?route=module/ocfilter/callback', data, function(json){ /* Start update */ for (var i in json.values) { var value = json.values, target = $this.values['v-' + i], total = value.t, selected = value.s, params = value.p; if (target !== undefined) { if (target.is('label')) { if (total === 0 && !selected) { target.addClass('disabled').removeClass('selected').find('input').attr('disabled', true).prop('checked', false); } else { target.removeClass('disabled').find('input').removeAttr('disabled'); } $('input', target).val(params); if ($this.options.php.showCounter) $('small', target).text(total); } else { if (total === 0) { target.attr('disabled', true); } else { target.removeAttr('disabled'); } target.val(params); } } } if (json.total === 0) { $this.options.element.submitButton.removeAttr('href').text($this.options.text.select); $this.options.element.scales.addClass('disabled'); } else { $this.options.element.submitButton.attr('href', $this.options.php.link + ($this.options.php.params ? '&' + $this.options.php.index + '=' + $this.options.php.params : '')).removeClass('disabled').text(json.text_total); $this.options.element.scales.removeClass('disabled'); } $this.options.element.fields.filter('.enabled').removeAttr('disabled'); /* End update */ }, 'json'); }, params: { decode: function() { var params = {}; if (this.options.php.params) { var matches = this.options.php.params.split(';'); for (var i = 0; i < matches.length; i++) { var parts = matches.split(':'); params[parts[0]] = typeof parts[1] != 'undefined' ? parts[1].split(',') : []; } } this.options.php.params = params; }, encode: function() { var params = []; if (this.options.php.params) { for (i in this.options.php.params) { params.push(i + ':' + (typeof this.options.php.params == 'object' ? this.options.php.params.join(',') : this.options.php.params)); } } this.options.php.params = params.join(';'); }, set: function(option_id, value_id) { this.params.decode.call(this); if (typeof this.options.php.params[option_id] != 'undefined') { this.options.php.params[option_id].push(value_id); } else { this.options.php.params[option_id] = [value_id]; } this.params.encode.call(this); }, remove: function(option_id, value_id) { this.params.decode.call(this); if (typeof this.options.php.params[option_id] != 'undefined') { if (this.options.php.params[option_id].length === 1 || !value_id) { delete this.options.php.params[option_id]; } else { this.options.php.params[option_id].splice(ocfilter.options.php.params[option_id].indexOf(value_id), 1); } } this.params.encode.call(this); } }, preload: function() { this.options.element.fields.attr('disabled', true); this.options.element.labels.addClass('disabled').find('small').text('0'); this.options.element.submitButton.addClass('disabled').removeAttr('href').text(this.options.text.load); }, scroll: function(target) { this.options.element.floatButton.css('top', target.offset().top - this.offset.top - (this.options.element.floatButton.outerHeight() - target.outerHeight()) / 2); }, delayShow: function(element, key, delay) { if (!key) return false; this.timers[key] = setTimeout(function(){ if (!element.hasClass('active')) { element.addClass('active'); } }, delay || 350); }, delayHide: function(element, key, delay) { if (!key) return false; this.timers[key] = setTimeout(function(){ if (!element.hasClass('hover')) { element.removeClass('active'); } }, delay || 350); }, clearTimeout: function(key) { if (key && this.timers[key]) return clearTimeout(this.timers[key]); } }; /* IE6+ */ if (Object.create === undefined) { Object.create = function(object) { function f(){}; f.prototype = object; return new f(); }; } $.fn.ocfilter = function(options) { return this.each(function(){ var $this = $(this); if ($this.data('ocfilter')) { return $this.data('ocfilter'); } $this.data('ocfilter', Object.create(ocfilter).init(options, $this)); }); }; })(jQuery); -
сбор средств на XDS Coloring Theme для ocStore v1.5.5.1.2
DRONGO ответил в теме пользователя xds в Платные шаблоны
Спасибо, проблему практически решил - влепил оба (с 1.8.3 не работало), но с 2 скриптами - перестала работать функция увеличения фотографии... Вот скрипт окфильтра - <script type="text/javascript"><!-- var options = { element: { priceScale : $('#scale-price-<?php echo $module; ?>'), // Slide scale element priceMin : $('#min-price-value-<?php echo $module; ?>'), // Price min field priceMax : $('#max-price-value-<?php echo $module; ?>'), // Price max field priceFrom : $('#price-from-<?php echo $module; ?>'),// Price from elemenet priceTo : $('#price-to-<?php echo $module; ?>'), // Price to elemenet submitButton : $('#button-submit-<?php echo $module; ?>'), floatButton : $('#button-float-<?php echo $module; ?>'), scales : $('.scale-<?php echo $module; ?>') }, php: { module : <?php echo $module; ?>, minPrice : <?php echo $min_price; ?>, maxPrice : <?php echo $max_price; ?>, minPriceValue: <?php echo $min_price_get; ?>, maxPriceValue: <?php echo $max_price_get; ?>, showButton : <?php echo $show_button; ?>, showPrice : <?php echo $show_price; ?>, showCounter : <?php echo $show_counter; ?>, manualPrice : <?php echo $manual_price; ?>, total : <?php echo $total; ?>, link : '<?php echo $link; ?>', path : '<?php echo $path; ?>', params : '<?php echo $params; ?>', index : '<?php echo $index; ?>' }, text: { show_all: '<?php echo $text_show_all; ?>', hide : '<?php echo $text_hide; ?>', load : '<?php echo $text_load; ?>', any : '<?php echo $text_any; ?>', select : '<?php echo $button_select; ?>' }, sliders : [] }; <?php foreach ($options as $option_id => $option) { ?> <?php if ($option['type'] == 'slide' || $option['type'] == 'slide_dual') { ?> options.sliders.push({ callback: { option_id : <?php echo $option_id; ?>, left : $('#left-value-<?php echo $option_id . $module; ?>'), right : $('#right-value-<?php echo $option_id . $module; ?>') }, dual : <?php echo $option['type'] == 'slide_dual' ? 'true' : 'false'; ?>, fixed : <?php echo (int)max(strlen(substr(strstr($option['slide_value_min'], '.'), 1)), strlen(substr(strstr($option['slide_value_max'], '.'), 1))); ?>, scale : $('#scale-<?php echo $option_id . $module; ?>'), min : <?php echo $option['slide_value_min']; ?>, minVal : <?php echo $option['slide_value_min_get']; ?>, max : <?php echo $option['slide_value_max']; ?>, maxVal : <?php echo ($option['type'] == 'slide_dual' ? $option['slide_value_max_get'] : $option['slide_value_max']); ?> }); <?php } ?> <?php } ?> $('#ocfilter-<?php echo $module; ?>').ocfilter(options); //--></script> Может вы или ещё кто-то захочет недорого переделать мне его под 2.1.4.js? -
сбор средств на XDS Coloring Theme для ocStore v1.5.5.1.2
DRONGO ответил в теме пользователя xds в Платные шаблоны
Поля я стилизовал... - это ерунда, на ботстрап я ругался потому что вывод блоков редактировать просто нереально - хотел вывести карусель с производителями, как в демо версии.. а из-за этого ботстрапа вся вёрстка летит, геморой жуткий! Но с каруселью я разобрался, всё ок. У меня появилась новая проблема, может, поможете? Готов оплатить! Суть проблемы в том, что установил я модуль ocfilter, а он с Вашим замечательным шаблоном не работает... Мне даже удалось выяснить причину, не работает он с <script type="text/javascript" src="https://code.jquery.com/jquery-2.1.4.min.js"></script> а с <script type="text/javascript" src="catalog/view/javascript/jquery/jquery-1.7.1.min.js"></script> прекрасно работает, но если убираю из хедера jquery-2.1.4.min.js и заменяю его на jquery-1.7.1.min.js - не работает выкидное меню и прочее.. -
Аа, точно, спасибо! Просто я думал, чтосid для пунктов меню будет такая же засада - как и с id для body... Может, ещё и для body научите выводить? =)))
-
Очень люблю и регулярно работаю с вордпрессом и опенкартом, они всегда решают мои задачи! Но в опенкарте в отличии от вордпресс - есть существенный, лично для меня, недочёт - отсутствие id у пунктов меню и у body, это серьёзно ограничивает дизайнерские возможности... чтобы решитеь некоторые задачи приходится пользоваться вот такими убогими костылями - <body <?php if(!isset($_REQUEST['_route_']) && !isset($_REQUEST['route']) || (isset($_REQUEST['route']) && $_REQUEST['route']=="common/home")) echo "id='home'"; ?><?php if($_SERVER['REQUEST_URI'] == '/restorany/' || $_SERVER['QUERY_STRING'] == '/restorany/') echo "id='home'"; ?>> А сегодня мне понадобилось, просто кровь из носа, сделать id пунктам меню; ну, допустим - клиент хочет сделать разноцветные кнопки меню... Помогите решить данный вопрос раз и навсегда! Чистым, правильным кодом.
-
Необходимо перенести продукцию со старого сайта (хрен пойми какая кмс, разношёрстность оформлдения... нужно смотреть) на новый (опенкарт 1541)... Если есть умельцы по этой теме - пишите в личку! Оплата, практически любым, удобным вам способом!
-
сбор средств на XDS Coloring Theme для ocStore v1.5.5.1.2
DRONGO ответил в теме пользователя xds в Платные шаблоны
Те баги, в основном стилистические, которые присутствуют в шаблоне - лично меня огорчили тем, что почти все их надо править в ботстрап... для меня это ужасный гемор! А так, зря вы бросаете этот шаблон и мне кажется, не правильно распределяете приоритеты... Современная версия шаблона прекрасно может существовать и продаваться (на сегодняшний день) без вот этих вот понтов (на которые, как я понимаю, вы тратили последнее время), а версия v1.5.5.1.2 без этих стилей не может. Версия v1.5.5.1.2 вполне перспективная, потому что расчитана на более позднюю=более стабильную версию движка, ту версию движка - под которую затачивалось большинство модулей... -
сбор средств на XDS Coloring Theme для ocStore v1.5.5.1.2
DRONGO ответил в теме пользователя xds в Платные шаблоны
Не советую, для версии 1.5.4.1 сделано на отлепись! Предложил своему клиенту данный шаблон (но по наивности своей, предложил версию 2.2, думал, что автор четно адаптировал её под 1.5.4.1), клиент согласился. А когда я купил шаблоон - оказалось что там куча страниц тупо не стилизована: отзывы, оформление заказа вообще не стилизовано... и ещё какие то косяки, сейчас уже не помню, потому что дело было больше месяца назад. Кстати, больше месяца назад автор обещал исправить все косяки в ближайшем обновлении... Хорошая отмаза =)) Ближайшее обновление шаблона может быть и сегодня, а может быть и через, лет, этак 10!... -
Подскажите, где, в каком файле можно обернуть символ, который обозначает валюту? Модуль не подходит, спасибо. Подключать планирую так - http://tema.livejournal.com/241645.html А в связи с этим нужно сделать обёртку <span>...