Алексей Смирнов

Алексей Смирнов

С нами с 20 декабря 2014; Место в рейтинге пользователей: #43
Алексей Смирнов
01 июля 2020, 00:35
0
К сожалению из коробки он не будет работать.
Нужно добавить поддержку sqlite таблиц.
Я уже запустил 1 сайт в продакшен и исправил ошибки + сделал для некоторых пакетов возможность работы (migx в том числе) напишите мне в телеге @smialexby — скину вам архив файлов к замене/добавлению.
Опубликовать исправления — пока не доходят руки. версия modx sqlite так же имеет еще исправленые баги…
Алексей Смирнов
20 июня 2020, 22:49
+2
Тут нет смысла говорить, что нельзя, ведь все можно сделать, было бы желание. Мне тоже говорили, например, что MODX не работает на sqlite, а оказалось, что работает, просто это надо СДЕЛАТЬ. :) Так и тут.
Человек предложил вариант. Хороший вариант.
Алексей Смирнов
19 июня 2020, 01:19
+1
Спасибо, Паша, за статью. Очень интересная получилась и есть над чем подумать.
Я помимо WP еще и джумлу щупал и щупал платный шаблон, и то как вообще было все устроено в нем — понравилось. И вот это все натолкнуло на одну мысль по шаблонизации и идею как выработать стандарт. И попробовать сделать кнопку хотя бы make normal. Еще продумаю, отпишусь, если рутина не поглотит меня…
Алексей Смирнов
05 июня 2020, 13:55
+3
Ну, так и не используйте. Я Вас не заставляю.
Алексей Смирнов
05 июня 2020, 11:45
+1
Я не ставил в статье целью обсуждать хостинги и их возможности. Это тема немного другая, если вы не заметили. И в РБ нет таких бесплатных хостингов, например.
Если есть что сказать по теме, увидели ошибки в решении — пожалуйста. А мусолить мускул, думаю, излишне.
Алексей Смирнов
04 июня 2020, 22:25
0
О, добавлю в область применения. Спасибо!
Алексей Смирнов
04 июня 2020, 22:24
0
Стоимость пары недель любого разработчика — это годы для хостинга c MySQL)
Точно. Но не вы же их потратили.
Мало того, что схему нужно добавлять, так ещё в дополнениях бывают подготовленные запросы не через XPDO, и вполне может быть отличный синтаксис запросов. Так что и код править может придётся.
Sqlite3 спокойно понимает PDO и работает через него не хуже чем через xpdo. Конечно, есть свои мелкие нюансы, но когда мы их встречаем это немого другой уровень проекта. Да и потом, человек который выбрал sqlite явно понимает что делает…
Я бы ещё понял использование SQLite на сайте для какого-то внутреннего локального использования, где будет только 1 человек пользоваться сайтом.
Если бы внимательно читали статью, то увидели что я как бы прямо и говорю о том что данный подход для мелких сайтов. Да, и никто не заставляет вас пользоваться решением. А тест драйв, может когда-нибудь проделаю для интереса.
Так что сейчас даже хорошо, что в MODX все используют MySQL, всё легко перенести, не нужно вникать в другие БД, где их искать, как подключаться и т.д.
Замечу что ничего искать не нужно, достаточно для php расширения sqlite3, которое есть практически везде. Да и подключение у MODX стандартное — просто берешь и используешь.

И вообще, я вижу комментарии только от представителей хостинг компаний. Сообщаю, что в некоторых странах есть еще хостинг без Mysql и он частенько дешевле следующего тарифа в 2 раза. Поэтому область применения данного решения пусть останется на усмотрение программиста, который непосредственно делает сайт.
Алексей Смирнов
03 июня 2020, 21:55
+1
Область применения с ходу:
1. Дешевый хостинг без MYSQL.
2. Лендинги, визитки и простые низконагруженные сайты.
Алексей Смирнов
26 мая 2020, 09:26
0
Запросите в поисковике — первые ссылки… не ошибетесь их много. :)
Алексей Смирнов
25 мая 2020, 18:20
0
Да, у нас в Беларуси. :))))
Алексей Смирнов
25 мая 2020, 17:53
0
Пригодится в мелких проектах — Лендинги, Визитки. Где нагрузка маленькая.
Специфика такова, что SqLite3 это грубо говоря БД в обычном файле и применяется лишь на шаред хостингах без поддержки серверов баз данных, например таких как mysql.
Выгода для клиента, что он будет платить меньше за хостинг.
Конечно же для высоко-нагруженных проектов он не подходит в виду своих ограничений.
Алексей Смирнов
17 мая 2020, 15:05
0
А вы напишите так:
$q = "EXPLAIN SELECT...";
$out = $modx->query($q)->fetchAll(PDO::FETCH_ASSOC);
print_r($out);
Алексей Смирнов
14 марта 2020, 10:38
0
1. В MODX есть автометки, которые подхватывают значения, которые уже были использованы на сайте.
2. Если у вас готовые списки, то у ТВ полей есть поле — Варианты значений — туда можно вписывать значения или руками или специальным сниппетом, ипользуя любой алгоритм.
Алексей Смирнов
13 марта 2020, 23:56
0
попробуйте написать сниппет с прямым запросом в БД для подсчета.
Скорее всего это будет быстрее срабатывать.
Или как вариант — добавить TV поле в которое записывать заранее Значение при обновлении ресурса ну и тянуть это ТВ поле запросом.
Алексей Смирнов
13 марта 2020, 23:06
0
Еще проверьте .htaccess на отсутствие редиректов с http на HttpS.
Пробовали ли:
без S написать ИЛИ:
Еще проверяйте все с браузера в ИНКОГНИТО режиме. тк сам браузер может кешировать редиректы любые.
Долго писал. Вы уже и решили проблему. Успехов!
Алексей Смирнов
13 марта 2020, 22:55
+1
Ну тут нужно следующее учесть:
1. После обновления системы у Ваши вмешательства с БД скорее всего полетят.
2. Если вы хотите в site_content использовать свои, в ручную добавленные поля, то погуглите — есть решения через плагины (только так не надо делать, да и вообще трогать site_content).
3. Лучше сделать расширение таблицы site_content, как это сделано, например в minishop2. А тк вы используете minishop2, то почему вы не используете ОПЦИИ??? они как раз для подобных целей — идеальны.
4. mSync — не знаю точно как работает, но знайте одно, если у вас кол-во товаров начинает превышать 10...20 тыс, то Вам скорее всего необходимо писать свой вариант mSync притом скорее всего на прямых запросах через modx--qwery. Это сложнее, но вы сможете быстро делать то что вам нужно.
4.1. Если товаров планируется более 20… 30 тыс, то имейте в виду, что добавление товара с ростом их общего кол-ва приводит к постепенному снижению производительности операций на чтение и запись этих товаров, особенно это чувствуется после сброса кеша и особенно при импорте-экспорте стандартными средствами. И тут или смотреть в сторону других Систем или Учить mysql + php или обратиться к профильным разработчикам, которые учтут нагрузки и прочие нюансы.
Алексей Смирнов
08 февраля 2020, 21:57
0
Наверное я успел намечтать что должно быть из коробки пока читал… Я просто тоже подумываю о шаблонизации MODX оглядываясь на CMS системы. И даже подготовил для себя личную архивную сборку. 1 раз довелось поработать с платным шаблоном на Джумле и то что я увидел меня впечатлило. И шаблоны Битрикса меня разбаловали, хотя они подороже но и функций море… Сейчас вот пишу строки и понимаю что в общем-то ценник за то, что экономится куча времени на рутинную настройку — это прям плюс. Посему думаю, что цена как раз в порядке… Да и шаблон по Вашим словам будет развиваться — это здорово. Кажется это может повлиять на распространение MODX Revo в положительную сторону в СНГ. Успехов!
Алексей Смирнов
08 февраля 2020, 16:52
0
Посмотрел на тестовом.
Крутое решение, но кажеццо что ценник сильно завышен…
Нашел мелкий баг. в списках товаров отображение в строку нет ссылки на товар… А в по-блочной все ок.
Алексей Смирнов
01 сентября 2019, 20:15
+1
У меня при 100т ресурсов + 2 TV поля в индексе (всего около 8,5 мл строк) поиск с использованием mSearch2 если искать 1 слово распространенное (любовь) находит 30 тыс ресурсов — примерно за 30...40 сек. Если искать менее распространенное слово, например розетка, общее время посика 5 сек… (VPS у меня), но при выводе еще время тратится на сам вывод (там 1 рес + 4 TV).
Думаю, если вы хотите максимальной производительности, то на готовых решениях не будет все комфортно. Советую делать свои таблицы и поиск (а лючше посмотреть поиск в сторону специализированных решений, например Sphinx).
Алексей Смирнов
07 сентября 2018, 11:11
0
К сожалению проект в производстве, поэтому уже удалил 2ю версию компонента.
Ошибок в логе небыло, лишь после нажатия на «Добавить в избранное» ничего не происходило, а в консоли браузера писалась (самим скриптом) error… (2 слова).
Ошибку отправляет класс на сколько я сумел влезть в код: класс (public function processResource($rid = 0)) в файле msfavorites.class.php. Точнее не отправлял а не давал сработать компоненту.
А у меня подчиненные ресурсы отдают редирект таким кодом:
//$sendok  - url главного товара.
 $modx->sendRedirect($sendok,array('responseCode' => 'HTTP/1.1 301 Moved Permanently'));
этот код в снипете на странице конкретного товара.
Если этих данных достаточно, то ок. Иначе чуть позже на тестовом воссоздам ситуацию.