-
Публикаций
169 -
Зарегистрирован
-
Посещение
Весь контент Enhill
-
Мне подсказали вот такое решение: ProductsView $discounted = new stdClass(); if ($this->request->get('discounted', 'integer')) { $discounted->disabled = false; $discounted->count = 0; } else { $temp_filter = $filter; $temp_filter['discounted'] = 1; $discounted->count = $this->products->count_products($temp_filter); if((int)$discounted->count > 0) { $discounted->disabled = false; } else { $discounted->disabled = true; $discounted->count = 0; } unset($temp_filter); } $this->design-
-
Добрый день. Очень нужна ваша помощь. Вывожу акционные товары в шаблоне products.tpl с помощью GET параметра: if (!empty($type) && !$brand) { $query = $this->db->placehold(" SELECT c.name, count(pc.product_id) as products_count, c.parent_id, c.id, c.url FROM __products_categories pc LEFT JOIN __categories c ON c.id=pc.category_id INNER JOIN __products p ON p.id=pc.product_id AND pc.position=(SELECT MIN(pc2.position) FROM __products_categories pc2 WHERE pc.product_id=pc2.product_id) WHERE 1 AND p.visible=1 AND (SELECT 1 FROM __variants p
-
Здравствуйте. Как мы знаем, наступила эра нового Федерального закона. Яндекс для отбития чеков в обязательном порядке запрашивает список товаров в таком формате: <input name="ym_merchant_receipt" value='{"customerContact": "+79001231212","taxSystem": 1, "items":[{"quantity": 1.154, "price": {"amount": 300.23}, "tax": 3,"text": "Зеленый чай \"Юн Ву\", кг","paymentMethodType": "full_prepayment ","paymentSubjectType": "commodity"},{"quantity": 2, "price": {"amount": 200.00}, "tax": 3,"text": "Кружка для чая, шт., скидка 10%","paymentMethodType": "full_prepayment ","paymentSubjectType": "
-
Вы говорите о индексе UNIQUE? Если сделать это поле уникальным, тогда после исправления ошибки в 1с, не будет создан правильный вариант, так как на сайте висит старый, с неправильным ид группы, но с таким же эксернал ид. Ошибки в 1с находим не сразу, к этому времени уже создаются варианты с неправильными данными. Часто бывает так, что вариант создается не в своем товаре и вычислить его потом очень трудно. В итоге второй созданный вариант является правильным, так как создается уже после исправления в 1с. Я вижу вариант с удалением, если найден дубль экстернал ид. АмМожет я вас неправильно по
-
Как доберусь до компьютера обязательно попробую все предложенные варианты. тут загвоздка в том, что external_id это уникальный код из 1с, который присваивается вариантам при первой выгрузке. А еще у нас работает группировка товаров по другому id. Иногда наш закупщик путается и заводит в 1с неправильный id группы. После исправления ошибки, если товар успел выгрузиться на сайт с неправильным id группы, создается дублирующий вариант с тем же уникальным кодом external_id, по которому происходит обновление цен и наличия. Получается что созданный до этого первый вариант перестает обновлять наличи
-
SQL запрос. Зависает на выполнении.
Enhill опубликовал тема в Общие вопросы по функционалу и дизайну
Добрый вечер. Возникла необходимость удалить все варианты у которых задублировано поле "external_id", кроме последнего. Получился запрос: DELETE n1 FROM s_variants n1, s_variants n2 WHERE n1.id < n2.id AND n1.external_id = n2.external_id Удаляет задублированное поле с меньшим id На тестовом магазине с маленьким количеством товара все ок. На магазине в 10000 товаров захлебывается. Помогите пожалуйста упростить запрос. Может есть альтернатива? -
Добрый день. Возникла необходимость вывести сумму остатков товара на складе. То есть посчитать все остатки у вариантов товара и вывести их сумму. Рабочий вариант (сомнительный): {assign var="sumstock" value="0"} {foreach $product->variants as $v} {$sumstock = $sumstock +$product->variant->stock} {/foreach} {if $sumstock >0}На складе: {$sumstock|convert}{/if} Есть сомнения на счет быстроты выполнения в шаблоне products.tpl Насколько это рациональный способ? У нас могут быть товары с 40+ вариантами. Может кто-то реализовывал другим способом?
-
Спасибо большое. Дайте обниму.
-
Осталось придумать, как скрыть категорию бренда, если мы туда уже зашли. - Фотоаппараты --- Ручные (присвоен бренд canon) --- Автозаводные (присвоен бренд canon) Если зайти в "Автозаводные" , все равно показывает ее в списке.
-
Я не очень понятно задачу изложил. Имелся ввиду вывод категорий бренда из доработки: http://forum.simplacms.ru/topic/7909-%D0%BA%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D0%B8-%D0%B2-%D0%BA%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D0%B8-%D0%B8%D0%BB%D0%B8-%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0-%D0%B7%D0%B0%D0%B4%D0%BE%D0%BC-%D0%BD%D0%B0%D0%BF%D0%B5%D1%80%D0%B5%D0%B4/ Спасибо, то что нужно! Вот такой вывод почти идеален: {foreach $brand_cat as $bc} {if in_array($bc->id, $category->children)} <a href="catalog/{$bc->url}/{$brand->url}"> {$bc->name}</a>
-
Зря я создал новую тему. Надо было поднять старую, тогда бы и контекст был понятен. Вывод категорий бренда: {if $brand} {foreach $brand_cat as $bc} <a href="catalog/{$bc->url}/{$brand->url}">{$bc->name}</a> {/foreach} {/if}
-
Это условие "если есть детки у категории". Не сработает с таким вариантом событий: - Фотоаппараты --- Ручные (присвоен бренд canon) --- Автозаводные (присвоен бренд canon) - Пылесосы CANON (присвоен бренд canon) Если мы зайдем в бренд в фотоаппаратах: фотоаппараты/ручные/canon то получим вот такой список категорий: - Ручные - Автозаводные - Пылесосы CANON
-
Добрый день. в симпле есть 2 места, где мы можем посмотреть товары привязанные к бренду: 1) http://demo.simplacms.ru/brands/canon 2) http://demo.simplacms.ru/catalog/fotoapparaty/canon Возникла необходимость во втором случае выводить категории, в которых лежат товары этого бренда. Есть замечательная доработка от ExtraBash и Noxter'a: http://forum.simplacms.ru/topic/7909-%D0%BA%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D0%B8-%D0%B2-%D0%BA%D0%BE%D0%BC%D0%BF%D0%B0%D0%BD%D0%B8%D0%B8-%D0%B8%D0%BB%D0%B8-%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0-%D0%B7%D0%B0%D0%B4%D0%BE%D0%BC-%D0%BD%D0%B0%D0%BF%D0
-
Maksclub, вот это оперативность =) Файл фида, отдающий максимальную информацию в поиск, включая все свойства. Его также можно использовать для выгрузки на яндекс маркет. <name>Наименование товара</name> <vendor>Бренд</vendor> <vendorCode>Артикул</vendorCode> <description>Описание $p->description : $p->annotation<description/> <param name="Свойство">значение свойства</param> <price>цена</price> <oldprice>старая цена</oldprice> yandex-search.php
-
Согласен. Открываются невиданные возможности фильтрации результатов поиска. По поводу бренда. Наверное хорошо и артикул туда закинуть. // Товары $simpla->db->query("SET SQL_BIG_SELECTS=1"); // Товары $simpla->db->query("SELECT v.price, v.id as variant_id, p.name as product_name, v.name as variant_name, p.url, p.annotation, pc.category_id, i.filename as image, b.name as brand, b.url as brand_url FROM __variants v LEFT JOIN __products p ON v.product_id=p.id LEFT JOIN __products_categories pc ON p.id = pc.product_id AND pc.position=(SELECT MIN(position) FROM __products_categorie
-
Maksclub, ого! Даже не знаю как выразить свой восторг. По поводу фида. Стандартный фид в принципе имеет в себе все необходимое, кроме характеристик. Опять же все подряд характеристики туда пихать не очень рационально (их может быть очень много). Как думаете на счет такого варианта: Cразу после описания в <description> или в тег <param> выводим те характеристики, которые отмечены в фильтре (значит самые важные). Например вот так: if (!empty($features[$p->product_id])) { foreach($features[$p->product_id] as $feature) { print " <p
-
Мы все знаем, что одно из самых узких мест в Simpla является ужасный поиск товаров. Но есть решение, которое может все изменить. Недавно команда Яндекса выпустила в бетатестирование новый полноценный поиск для интернет магазинов. https://tech.yandex.ru/sitesearch/shopsearch/ Он понимает запросы в свободной форме, исправит ошибки и опечатки, выводит подсказки, разберается с разными вариантами написания названий. Сам результат можно отфильтровать по категории, по наличию в продаже, по ценовому диапазону. Можно быстро и легко подключить страницу с поиском, но стилизованную яндексом. Для это
-
Абсолютные пути к картинке. Генерация.
Enhill опубликовал тема в Общие вопросы по функционалу и дизайну
Пытаюсь добавить картинки в Excel-прайс с помощью библиотеки PHPExcel. Для добавления картинки нужно указывать адрес типа: /home/web/site.com/www/files/products/kartinka.250x250.jpg dirname (dirname ( __FILE__ ) ) . '/files/products/'.preg_replace('@\.([^\.]+)$@', '.250x250.\1', $p->image); Такая конструкция выдает вроде бы правильный путь, но картинка по факту не существует. То есть не сгенерирована. Генерация происходит уже после того как зайти по этому урлу. http://site.com/files/products/kartinka.250x250.jpg $simpla->design->resize_modifier($p->image, 250, 250) Вот так -
Добрый вечер, форумчане. Движок оброс множеством доработок, приличным трафиком и ~10000 товарами. Приключилось все еще на хостинге, что привело меня к переезду на VDS. Характеристики машины: CPU: 4 Core RAM: 4096 Mb Диск: 20 Gb,SSD А приключилось следующее: При неизвестных мне обстоятельтвах, mysql не хватает памяти выполнить некоторые запросы. Он сбрасывает кеш на диск и сбрасывает его до тех пор, пока не займет все пространство на диске, что приводит к блокировке всех сервисов, как mysql, так и php. В логе ошибок PHP - все кристально чисто. mysqltuner - говорит, что конфиги правильно
-
Яндекс время от времени меняет свою верстку, что убивает наш любимый парсер. Это рабочий на данный момент парсер (надолго ли?) Скачать