Jump to content

parampados

Пользователь
  • Content Count

    36
  • Joined

  • Last visited

Everything posted by parampados

  1. В файле /simpla/ajax/stat/stat.php заменить строку: $query = $this->db->placehold('SELECT SUM( o.total_price ) AS total_price, DAY(date) AS day, MONTH(date) as month, YEAR(date) as year FROM __orders o WHERE o.closed GROUP BY YEAR(o.date), MONTH(o.date), DATE(o.date)'); на: $query = $this->db->placehold('SELECT SUM( o.total_price ) AS total_price, DAY(date) AS day, MONTH(date) as month, YEAR(date) as year FROM __orders o WHERE o.status=3 GROUP BY YEAR(o.date), MONTH(o.date), DATE(o.date)');
  2. Есть готовое решение. Можно включать и отключать. Работает учёт веса и габаритов, расчет с учетом страховки и без неё, наценка за наложенный платёж, выбор офисов служб доставки и постоматов PickPoint. Краткий обзор в . Стоимость доработки для стандартной Simpla CMS — 3500 рублей за один магазин (домен).
  3. Всё верно. Я уже писал, что если доп. категории удаляются «стандартно» через админку со страницы товара, то в таблице останутся записи со значениями поля position=0,1,2, т.к. при удалении/добавлении доп. категорий, position связок «товар»+«категории» всегда обновляется и начинается с нуля. Я абсолютно согласен, что при удалении полей из таблицы вручную, проявится описанное вами поведение, но безоглядным удалением полей из БД можно всё что угодно сломать. Таким образом, предлагаемое мной решение будет полностью работоспособным, в случае если доп. категории добавляются/удаляются через а
  4. Kors, весь смысл Вашего сообщения, сводится к тому, что если бы у бабушки были яйца, она была бы дедушкой. Существует правило хорошего тона: «критикуешь – предлагай». Sheeft, дело в том, что count() считает с единицы, а position объявляется с нуля. Таким образом, в случае если доп.категории удаляются «стандартно» со страницы товара или с помощью предлагаемой мной «Удалить все доп.категории», count будет равен следующей position для конкретной связки «товар»+«категория». Обратите внимание, что при удалении/добавлении доп.категорий со страницы товара, position связок «товар»+«категории» всег
  5. А если более развёрнуто, то: Кейс работает для каждой отдельной связки «товар» + «категория» и в данном случае count всегда будет равен текущему количеству категорий у товара. В тоже время, возможности сортировать доп. категории вручную возможности нет, т.е. position добовляемой доп. категории всегда будет равен count. Проверьте.
  6. Вы проверяли работу предлагаемой доработки? Будьте добры, конкретный пример того, что работает неправильно.
  7. Посмотрите внимательно: $query = $this->db->placehold("SELECT count(*) as count FROM __products_categories WHERE product_id=?", $id); $this->db->query($query); $count = $this->db->result('count'); $query = $this->db->query("INSERT IGNORE INTO __products_categories set category_id=?, product_id=?, position=?", $additional_id, $id, $count);
  8. Ответил вам в отдельной теме — Групповое добавление дополнительных категорий к товарам
  9. Данная доработка позволяет производить групповое добавление (или удаление) дополнительных категорий к выбранным товарам, с помощью селекта внизу страницы товаров. 1. В файле /simpla/design/html/products.tpl после строк: {if $categories|count>1} <option value="move_to_category">Переместить в категорию</option> {/if}Добавить: {if $categories|count>1} <option value="move_to_additional">Дополнительные категории</option> {/if} 2. В том же файле, после строк: <span id="move_to_category"> <select name="target_category"> {function name=cate
  10. UPD №2: Чтобы избежать повторной отправки уровня данных (например, при переходе по ссылке из письма), необходимо заменить: {if $order} <!-- Данные о заказанных товарах для GA -->На: {if $order && $smarty.server.HTTP_REFERER|strpos:"/cart/"} <!-- Данные о заказанных товарах для GA --> Смысл в том, что уровень данных будет передан, только если: Это страница «Заказ« — условие $orderПереход осуществлён со страницы «Корзина» — условие $smarty.server.HTTP_REFERER|strpos:"/cart/"
  11. В случае необходимости, можно использовать код отправки данных об Электронной торговле с помощью метода .push(). При этом стоит предварительно объявить массив данных dataLayer. Полный код выглядит следующим образом: {if $order} <!-- Данные о заказанных товарах для GA --> <script> window.dataLayer = window.dataLayer || []; dataLayer.push({ldelim} 'ecommerce': {ldelim} 'purchase': {ldelim} 'actionField': {ldelim} 'id': '{$order->id}', 'affiliation': 'Ваш-магазин.ру', 'revenue': '{$order->total_price|string_format:"%.2f"}', 'tax':'0.00', 'shipping':
  12. UPD: Данные Электронной торговли передаваемые с использованием уровня данных dataLayer, должны объявляться до загрузки контейнера Google Tag Manager. Поэтому вношу изменения в пункт 3.3 и 3.4 инструкции. 3.3 Открыть файл шаблона:ваш-сайт.ru/design/название-шаблона/html/index.tplи сразу после открывающего тега <body> добавить код отправки данных об Электронной торговле: {if $order} <!-- Данные о заказанных товарах для GA --> <script> dataLayer = [{ldelim} 'ecommerce': {ldelim} 'purchase': {ldelim} 'actionField': {ldelim} 'id': '{$order->id}', 'affiliatio
  13. Настройка электронной торговли Google Analytics с помощью Google Tag Manager 1. Зарегистрироваться в Google Analytics — https://analytics.google.com/ 1.1 Нажать кнопку «Регистрация» 1.2 Добавить новый аккаунт:Указать «Название аккаунта», «Название сайта», «URL сайта», в «Отрасль» выбрать «Продажи», выбрать «Отчетный часовой пояс» 1.3 Нажать кнопку «Получить идентификатор отслеживания» и принять «Соглашение об условиях использования Google Analytics» 1.4 Найти на странице и записать свой «Идентификатор отслеживания», вида UA-ХХХХХХХХ-Х 1.5 Нажать «Администратор» в шапке сайта, в колонке «ПРЕД
  14. Вот в этом топике я писал про время жизни корзины — http://forum.simplacms.ru/topic/9352-жалобы-не-добавляет-в-корзину-больше-40-наименова/?p=70107
  15. Вот в этом топике я писал про время жизни корзины — http://forum.simplacms.ru/topic/9352-жалобы-не-добавляет-в-корзину-больше-40-наименова/?p=70107
  16. В шаблоне main.tpl (главная страница) есть строки: {* Рекомендуемые товары *} {get_featured_products var=featured_products} {* Новинки *} {get_new_products var=new_products} {* Акционные товары *} {get_discounted_products var=discounted_products} Для ограничения максимального количества товаров, необходимо указать лимит: {* Рекомендуемые товары *} {get_featured_products var=featured_products limit=4} {* Новинки *} {get_new_products var=new_products limit=4} {* Акционные товары *} {get_discounted_products var=discounted_products limit=4}
  17. Стоимость: 2000 рублей. О каких условиях идёт речь? Для установки потребуется: 1. Загрузить один новый файл; 2. Внести изменения в три существующих файла; 3. Создать одну новую таблицу в базе данных; 4. Вставить одну запись в существующую таблицу базы данных.
  18. Доработка Simpla CMS для хранения корзины покупателей в базе данных. Хранение корзины покупателя в сессии (как реализовано в Simpla CMS по-умолчанию) или в cookies (как не раз предлагалось на данном форуме) имеет ряд ограничений: Стандартно сессия посетителя храниться ~24 минуты (или до закрытия окна браузера), т.е. если посетитель решил сходить пообедать, то вернувшись он может обнаружить пустую корзину. Длина cookie ограничена 4 Кбайт после чего корректность значения cookie страдает - отрезается кусок записи (с начала этой записи) равный превышению объема. Это особенно актуальн
  19. Программирование, верстка шаблонов и доработка Simpla CMS: Разработка модулей любой сложности;Адаптация шаблонов от различных CMS;Вёрстка HTML5+CSS3+JS с соблюдением семантики и применением микроданных и микроформатов;Различные слайдеры, табы, аккордионы, лайтбоксы и др. для Simpla CMS. Имя: Михаил Email: mike.parampados@yandex.ru Skype: mike.parampados
  20. Хранение корзины покупателя в сессии или куках имеет ограничения: Стандартно сессия посетителя храниться ~24 минуты, т.е. если посетитель решил сходить пообедать, то вернувшись он может обнаружить пустую корзину.Длина cookie ограничена 4 Кбайт после чего корректность значения cookie страдает - отрезается кусок записи (с начала этой записи) равный превышению объема. Для оптового магазина это особенно актуально, т.к. оптовые покупатели собирают товары в корзину в рамках нескольких сессий и даже по несколько дней. Для примера, посмотрел статистику на одном из проектов (розничный магазин): Более
  21. Это имеет смысл только для предотвращения попадания дубля страницы в индекс поисковых систем. Для решения данной задачи достаточно прописать в robots.txt директиву: Disallow: /catalog/*?page=1 Или вообще: Disallow: *?page=1 Но если вы хотите именно редирект, то в .htaccess после: AddDefaultCharset UTF-8 ErrorDocument 404 /404 ErrorDocument 401 /password.php RewriteEngine on Пропишите правило: RewriteBase / RewriteCond %{QUERY_STRING} ^page=1$ [NC] RewriteRule (.*) $1? [R=301,L] Работает на страницах вида site.ru/catalog/название_категории?page=1 и site.ru/catalog/назва
  22. Хм. Всё достаточно просто. Шаблоны хранятся в папке domain.ru/design/... . Структура шаблона ясна из названий файлов шаблона. А вообще, вот старая статья — http://habrahabr.ru/post/61265/ . Структура файлов немного изменилась, но общий смысл будет понятен.
×
×
  • Create New...