Rapida Форк на базе simpla 2.3.8

Автор, красавчик! просто нет слов. Если еще не исправлено, предлагаю:
1. разбивку карты сайта на несколько файлов, так как роботы не читают большие файлы(если надо скину мануал)
2. адреса картинок без токенов (видео есть в инете, если надо, найду)
3. В блог добавить категории
 
А вы не хотите перевести ваш скрипт в отдельный новый проект, с собственным сайтом и перспективами развития ?
 
Это основной бич форков - совместимость. Сначала витает идея что что-то улучшим оставив совместимость с шаблонами/модулями и т.д., но проходит время и встает вопрос или прогресс и оптимизация или совместимость. Есть третий способ - брать старые вещи и адаптировать их под форк.

Видимо так и придется делать, но это очень трудозатратный процесс. Если придется именно приспосабливать старые вещи. Дело в том, что уже сейчас изменений столько, что я почти уверен, даже если, я сохраню конструкцию вывода view неизменной, мне все равно не удастся взять какой-то хороший шаблон и завести его на рапиде. Все равно придется напильником работать. Но одно дело поправить пару переменных, а другое дело приспосабливать.


stock IS NULL и stock = 0 - вроде как не одно и тоже

IS NULL - это бесконечный остаток у товара

0 - это 0 остаток, т.е. нет на складе

я тоже сразу на это обратил внимание, но не внимательно посмотрел, в исходном запросе условие "не (is null и >0)" а у автора "=0" - это по сути 2 одинаковых условия

Все правильно, null - кол-во не задано (т.е. есть в наличии)

Строго говоря, мой запрос не соответствует оригинальному. Поправил.



Amarous написал(а):
Добрый день.
Очень обрадовало ваше появление. Опробовал все цмс, полностью согласен с вами про симплу, ее скорость работы и тд.
Я сам не шарю в пхп, поэтому мои вопросы-предложения могут показаться глупыми. Не стал спамить в вашу тему. Еще не тестил вашу сборку, сразу пишу:

1. Работает ли импорт из CSV как и ранее без проблем
2. В базовой сборке при Импорте CSV нужно удалить лог добавленных-измененных товаров, так как при большом количестве страница браузера подвисает
3. Мне в шаблоне products нужно выводить характеристику, например вес, для этого делаю цикл вывода характеристик, в нем делаю фильтр на ту характеристику, которая мне нужна, короче бред.

плюс ко всему, есть характеристики, которые указаны у каждого товара
у меня, к примеру это:
цена закупки, вес, размер.
Так какой смысл их размещать в отдельной таблиц options. проще впихнуть их в products.
было бы круто, просто сделать импорт с возможностью добавления таких характеристик, например характеристику с именем "!Вес" импортировать в products, предварительно создав столбец "Вес".

Если такое делать, так при оформлении заказа нужно добавить функцию копирования этих характеристик в purchases.

4. Вы еще не занимались шаблоном? например переделать базовый шаб с ОкайЦмс под симплу?


п.1. и п.2 Импорт csv работает вообще без каких либо изменений. Т.е. я даже не менял эту хрень, которая забивает логом импорта страницу. Надо сделать, не придумал как сделать красиво. Может сделаю как в импорте YML, там просто показывает в килобайтах сколько залилось и сколько всего.
п.3 Можно сделать оптимальнее в т.ч. в обычной симпле, но там надо под капот лезть сильно. В рапиде метод
products->get_product_options($product_id) выдает не числовой массив, который надо перебирать, чтобы добраться куда нужно, а ассоциативный, ключи - id свойств.

array('fid' => 'id свойства', 'vid' => 'id значения', 'val' => 'значение');

Предположим, что вес это у нас id 3, то будет так:
$options = get_product_options($product->id);

$options[3]['val'] - наше значение опции вес.

4. ОкейЦМС шаблон на мой вкус - фигня. Очень украинская расцветка там :) Шутка. Стандартный шаблон будет без jquery - 100%, поэтому окейный шаблон не подойдет. Требования к кандидату - jquery free, responsive, touchscreen compatible


Помогите - дело пойдет быстрее.

Для удобства желающих принять участие в разработке/тестировании на гитхабе Для просмотра ссылки Войди или Зарегистрируйся по мере выхода новых версий появляются готовые дистрибутивы. Кто дружит с гитом, можно еще проще:
Клонируем себе так:
git clone Для просмотра ссылки Войди или Зарегистрируйся

Теперь надо настроить доступ к БД и импортировать в нее нужные таблицы. Самый простой способ - включить инсталер сразу на этапе настройки БД

Для просмотра ссылки Войди или Зарегистрируйся

Можно работать.

P.S.
В рапиде есть кеш, который обновляется запускаясь из планировщика, поэтому надо добавить в cron задание:
php ~/www/cron/queue_exec.php

Можно не добавлять, но тогда очередь заданий по мере ее накопления придется проталкивать вручную:
Для просмотра ссылки Войди или Зарегистрируйся



Очередная версия Rapida 0.0.7.1
спасибо @PavelGERAsimov за тестирование и дельные советы
=================
v0.0.7.1 24.10.2017
=================
- Исправлена некритическая ошибка в работе функции sys->download_all_images()
- Исправлен simpla/ajax/export.php
- Исправлен simpla/ajax/import.php
- Исправлен variants->add_variant()
- Исправлен variants->get_variant()
- Удален каталог simpla/update Похоже раньше он предназначался для обновления версий.
- Поправил все методы add_ на добавление чего либо в БД Теперь прежде сформировать запрос отсеиваются пустые значения, СУБД сама ставит пропущенные в значения по умолчанию.
- Добавлен фильтр "Без изображений" в разделе "Товары" админ. интерфейса.
- Оптимизированы SQL запросы по фильтрам in_stock "Нет на складе" и discounted "Со скидкой" в методах get_products() count_products()
- Исправил метод db->dump_table() Теперь данные таблиц сохраняются правильно, bin значения преобразуются перед записью в hex, цифровые - без кавычек, прочие символьные - в кавычках с экранированием, все остальное просто в кавычках.
- теперь настройки доступа к БД вынесены в отдельный файл config/db.ini, чтобы можно было обновлять систему через git. Необходимые изменения внесены в класс config
- Удален старый генератор YML фида yandex.php.old
- Устранена куча мелких ошибок в разных местах.
- Исправлен фильтр in_stock в методах get_products count_products

Для просмотра ссылки Войди или Зарегистрируйся
<-------------- добавлено через 986 сек. -------------->
А вы не хотите перевести ваш скрипт в отдельный новый проект, с собственным сайтом и перспективами развития ?
Пока не хочу. Для начала надо заставить его нормально работать.
<-------------- добавлено через 428 сек. -------------->
Автор, красавчик! просто нет слов. Если еще не исправлено, предлагаю:
1. разбивку карты сайта на несколько файлов, так как роботы не читают большие файлы(если надо скину мануал)
2. адреса картинок без токенов (видео есть в инете, если надо, найду)
3. В блог добавить категории

по п.1 и 2. уже сделано, надо только сюда подвесить. sitemap.xml.gz будет делать планировщик, занимает обычно часа 4. Наш сайтмап сейчас состоит из 73 файлов, т.е. примерно 73 * 50000 = 3 650 000 ссылок. Яндекс берет только 80 тыс., но все равно прилично. Так что эту фичу сюда сделаю.

по п. 3 идея хорошая, дошли бы руки. Я это и затеил, чтобы собрать в кучу все идеи последних лет.
<-------------- добавлено через 237 сек. -------------->
импорт характеристик лучше оптимизируйте, они загружаются годами

Надо подумать что там можно сделать. Но вряд ли что-то можно сильно ускорить. Я обратил на это внимание, когда грузил свой yml файл 300мб.
 
Последнее редактирование:
А что на счет API? Будет ли предусмотрен RESTful API.
Сжатие css|js|html из коробки.
Редактор писем.
Статистика: средний чек, продажи, конверсия, забытая корзина.

Слышал, что Давинчи с форума Simplacms.ru договорился с Пикусовым о реализации SAAS Simpla дабы сделать облачный сервис аренды магазинов.
Все помешались на этом SAAS, тот же опенкарт его разрабатывает. Только кому он нужен?
 
А что на счет API? Будет ли предусмотрен RESTful API.
Сжатие css|js|html из коробки.
Редактор писем.
Статистика: средний чек, продажи, конверсия, забытая корзина.

Слышал, что Давинчи с форума Simplacms.ru договорился с Пикусовым о реализации SAAS Simpla дабы сделать облачный сервис аренды магазинов.
<-------------- добавлено через 548 сек. -------------->
Все помешались на этом SAAS, тот же опенкарт его разрабатывает. Только кому он нужен?
Мне лично не нужен, это дает ограничения и определенные рамки. А вот кто и делает, так это для выгоды. Каждый месяц будет падать бабки, а правки нужны только в одном оригинальном файле, который потом будет просто раскидан по всем профилям.
 
Сжатие html уже есть из коробки, просто надо включить это в смарти. Статистические вещи, конечно, нужно будет сделать. Если проект не умрет - будет.

RESTful API - плохо понимаю о чем идет речь. Если ты про доступ к api через xhr - будет обязательно + будет xhr доступ к данным view. Например, нам надо получить перечень товаров со страницы Для просмотра ссылки Войди или Зарегистрируйся, запрос будет таким, Для просмотра ссылки Войди или Зарегистрируйся. А если надо получить товары, свойства фильтров и пагинацию, то так:
Для просмотра ссылки Войди или Зарегистрируйся

На счет сжатия, из коробки работает оно не совсем правильно. Даже если мы поставим сжатие HTML, то все скрипты обернутые в {literal}{/literal} будут в исходном формате и получаем мы на выходе заборы и пустые места вместо убранных отступов. Я промолчу о полном кешировании, если включить, то на страницу заказа (хоть и адрес сменился) попасть можно только после перезагрузке страницы, так как все данные статичны. RESTful API нужен для того, чтобы в следствии перейти на React, Vue и разработку моб. приложения.
 
А что на счет API? Будет ли предусмотрен RESTful API.
Сжатие css|js|html из коробки.
Редактор писем.
Статистика: средний чек, продажи, конверсия, забытая корзина.

Слышал, что Давинчи с форума Simplacms.ru договорился с Пикусовым о реализации SAAS Simpla дабы сделать облачный сервис аренды магазинов.
<-------------- добавлено через 548 сек. -------------->

Мне лично не нужен, это дает ограничения и определенные рамки. А вот кто и делает, так это для выгоды. Каждый месяц будет падать бабки, а правки нужны только в одном оригинальном файле, который потом будет просто раскидан по всем профилям.

Сжатие html уже есть из коробки, просто надо включить это в смарти. Статистические вещи, конечно, нужно будет сделать. Если проект не умрет - будет.

RESTful API - плохо понимаю о чем идет речь. Если ты про доступ к api через xhr - будет обязательно + будет xhr доступ к данным view. Например, нам надо получить перечень товаров со страницы Для просмотра ссылки Войди или Зарегистрируйся, запрос будет таким, Для просмотра ссылки Войди или Зарегистрируйся. А если надо получить товары, свойства фильтров и пагинацию, то так:
Для просмотра ссылки Войди или Зарегистрируйся
<-------------- добавлено через 1176 сек. -------------->
На счет сжатия, из коробки работает оно не совсем правильно. Даже если мы поставим сжатие HTML, то все скрипты обернутые в {literal}{/literal} будут в исходном формате и получаем мы на выходе заборы и пустые места вместо убранных отступов. Я промолчу о полном кешировании, если включить, то на страницу заказа (хоть и адрес сменился) попасть можно только после перезагрузке страницы, так как все данные статичны. RESTful API нужен для того, чтобы в следствии перейти на React, Vue и разработку моб. приложения.

Если все так плохо, то сжималку сделаю - думаю это совсем просто. Лучше, конечно, доработать функцию {strip} в smarty, потому, что как-то совсем несолидно чистить HTML после smarty, там это будет единоразовая операция до сохранения кеша, а если сделать после смарти - то это будет постоянно выполняемая операция.

А насчет SPA - его можно будет реализовать после того, как я сделаю xhr api.
 
Последнее редактирование:
rapida 0.0.7.2

=================
v0.0.7.2 25.10.2017
=================
- Исправлены ошибки в install.php Теперь инсталер может создавать отсутствующий config/db.ini, /simpla/.htaccess и simpla/.passwd
- В связи с ошибками на dev сервере mysql, пострадала таблица начальной БД ./rapida.sql в прошлом релизе 0.0.7.1. Проблема устранена.
- Исправлена ошибка при создании файлов кеша, при создании каталогов кеша неверно устанавливались права доступа, что приводило к ошибке на хостинге, теперь права устанавливаются 755. То есть для хозяина файла: чтение, запуск и выполнение, для остальных - чтение и запуск.


Для просмотра ссылки Войди или Зарегистрируйся
 
Последнее редактирование:
Требования к кандидату - jquery free, responsive, touchscreen compatible

А зачем привязываться к дизайну?

Логичнее сделать просто валидную блочную верстку с минимумом стилей. Остальные стили каждый накатит сам - это намного удобнее для разработки т.к. не будет ничего лишнего.

И из личного опыта - лучше делать отдельно шаб для мобильной версии, чем пытаться запилить универсальный адаптивный дизайн. Разница по скорости работы будет в разы, а юзабилити на порядок выше.

Да и в блоге категории-то как раз не критичны, т.к. это блог = новостная лента, а вот статьи с подкатегориями - это то, без чего CMS не обойтись (банально даже для целей SEO).
 
У меня на части проектов блог юзается как статьи для определенной рубрики. У меня даже у страниц запилены разделы, картинки, релевантные товары и прикрепленные файлы. И местами это упрощает и обогащает функционал!
 
Назад
Сверху