Вячеслав Варов

Вячеслав Варов

С нами с 06 сентября 2016; Место в рейтинге пользователей: #228

Modx_session весит 4гб

Добрый день!
Подскажите пожалуйста как не хранить сессии в бд? В системных настройках параметры установлены:
cache_db_session: false
cache_db_session_lifetime: 600

как можно автоматически чистить сессии, так как хостер ругается на большой обьем базы данных
Вячеслав Варов
06 июня 2020, 19:05
modx.pro
958
0

Несколько доменов - один сайт

Приветствую!

Подскажите пожалуйста, можно ли сделать без контекстов мультидоменность сайта?
Необходимо чтобы с 60 разных доменных имен открывался один сайт на modx, шаблон/страница все одинаковое, через контексты придется копировать множество страниц для каждого домена, что усложняет реализацию.
Вячеслав Варов
27 мая 2020, 12:11
modx.pro
878
0

Ошибка "Произошла ошибка при регистрации действий менеджера."

После установки debugParser на сайте начали долго сохраняться ресурсы/шаблоны/чанки/сниппеты и в логах постоянно ошибка:
[2020-05-24 20:28:48] (ERROR @ /var/www/u0429794/data/www/mytopsto.ru/core/xpdo/om/xpdoobject.class.php : 1452) Error 23000 executing statement:
INSERT INTO `modx_manager_log` (`user`, `occurred`, `action`, `classKey`, `item`) VALUES (1, '2020-05-24 20:28:48', 'propertyset_update_from_element', 'modPropertySet', 'modTemplate 4 Default')
Array
(
    [0] => 23000
    [1] => 1062
    [2] => Duplicate entry '0' for key 'PRIMARY'
)

[2020-05-24 20:28:48] (ERROR @ /var/www/u0429794/data/www/mytopsto.ru/core/model/modx/modx.class.php : 1969) Произошла ошибка при регистрации действий менеджера.
Не срабатывает автоинкремент на id с чем это может быть связанно?
Вячеслав Варов
24 мая 2020, 20:29
modx.pro
1 315
0

Группировка выдачи pdoResources по родителю

Всем привет!
Столкнулся с проблемой, вывожу сниппетом pdoResources категории и дочерние элементы указывая &depth = `1`,
выводит сперва все дочерние элементы, а после список категорий, как можно сделать так, чтобы выводился родитель, а следом его дочерние элементы, основным критерием решения является избежать вызов сниппета pdoResources внутри чанка (так задача решается очень просто в ущерб производительности)
Вячеслав Варов
24 мая 2020, 00:43
modx.pro
1
636
0

Медленная работа сайта при большом объеме страниц

Всем привет!
На сайте больше 180тыс страниц, и в связи с этим первая загрузка страницы до появления кэша длится очень долго, а именно ответ от сервера более 3с, подскажите с чем это может быть связанно, и как это можно отследить/исправить? Хостинг REG.RU сайт mytopsto.ru
Все сниппеты запускаю через fenom кэшируемыми, очень часто использую параметр where для выборки страниц.

Еще вопрос быстрее ли будет указывать чанк для формирования выдачи сниппета или указывать 'tpl' => '@INLINE...'?

И еще вопрос, так как много ссылок и их я генерирую с помощью {$_modx->makeURL($id,"",«full»)}, может есть быстрее решение?

Скрин из Google PSI



Одна из причин что цены на услуги хранятся в TV и при выводе таблицы цен на странице все зависает на 40сек, подскажите как лучше реализовать такой функционал, где хранить цену чтобы выводить ее было быстрее, я пока думаю что было бы логично расширить таблицу modx_site_content,  и добавить в нее столбец с ценой, или это плохая идея?
Вячеслав Варов
23 мая 2020, 20:01
modx.pro
713
0

Как использовать $modx в подключаемом php файле?

Приветствую!
Столкнулся с следующей проблемой:
Не получается вывести системную настройку в костюмном классе обработки доставки, код пример брал из документации — все работает пока не пытаюсь получить системную настройку:
<?php
if(!class_exists('msDeliveryInterface')) {
    require_once dirname(dirname(dirname(__FILE__))) . '/model/minishop2/msdeliveryhandler.class.php';
}
class Delivery extends msDeliveryHandler implements msDeliveryInterface{

    public function getCost(msOrderInterface $order, msDelivery $delivery, $cost = 0) {

        $mdcf = 200;
        $cart = $order->ms2->cart->status();
        $cart_cost = $cart['total_cost'];

        if($cart_cost > $mdcf){
            return $cost;
        }else{
            $delivery_cost = parent::getCost($order, $delivery, $cost);
            return $delivery_cost;
        }
    }
}
Суть сводится к тому чтобы сделать бесплатной доставку при стоимости корзины больше 200, и я хочу эти 200 вывести в системных настройках чтобы менять их там для удобства. Но вот столкнулся с тем, что не работает $modx->getOption и сайт просто ложится и выводит пустую белую страницу код использую такой:

<?php
if(!class_exists('msDeliveryInterface')) {
    require_once dirname(dirname(dirname(__FILE__))) . '/model/minishop2/msdeliveryhandler.class.php';
}
require_once $_SERVER['DOCUMENT_ROOT'].'/config.core.php';
require_once MODX_CORE_PATH.'model/modx/modx.class.php';
$modx = new modX();
$modx->initialize('web');
class Delivery extends msDeliveryHandler implements msDeliveryInterface{

    public function getCost(msOrderInterface $order, msDelivery $delivery, $cost = 0) {

        $mdcf = $modx->getOption('md_delivery_cf');
        $cart = $order->ms2->cart->status();
        $cart_cost = $cart['total_cost'];

        if($cart_cost > $mdcf){
            return $cost;
        }else{
            $delivery_cost = parent::getCost($order, $delivery, $cost);
            return $delivery_cost;
        }
    }
}
Вячеслав Варов
28 мая 2019, 10:44
modx.pro
1 033
0

Вопрос по службе оплаты minishop2

Пишу небольшой компонент для оплаты и воткнулся на:

Как правило, вы сами настраиваете, куда обращаться и как передавать. Поэтому, в настройках PayPal я указываю адрес sitename.com/assets/components/minishop2/payment/paypal.php, который запускает MODX в режиме API. По сути — это контроллер приёма оплаты.

при заходе на этот файл у меня выводится Access Dained, права доступа на папки 755 на файлы 644, но пробовал и 755 сути не меняет, что делаю не так?
Вячеслав Варов
21 ноября 2018, 00:22
modx.pro
530
0

Присоединить подчиненный товар к основному

Здравствуйте!
Вячеслав Варов
07 октября 2018, 15:06
modx.pro
1
1 129
0

Ошибка при запуске msproducts

Всем привет!
подскажите в чем проблема, пытаюсь запустить сниппет
bezumkin.ru/sections/tips_and_tricks/2058/
Вячеслав Варов
25 сентября 2018, 17:46
modx.pro
784
0

Как реализовать группировку товаров по значению опции или связи

Доброго времени суток!

Подскажите как можно организовать группировку товаров, создать так называемые коллекции чтобы это работало с mfilter2?

Пример: catalog.onliner.by/heatedfloor?heater_type%5B0%5D=mat&heater_type%5Boperation%5D=union
зайдя на сайт видно первый товар Arnold Rak FH 2130i 3 кв.м. 540 Вт и снизу товары в одной коллекции. это необходимо для того чтобы не заполнять каталог однотипными товарами.

Были разные идеи как это сделать, через связи товаров и через группировку по значению опции, но это все не универсально и не работает с фильтром.

Видел еще вот такое вот решение bezumkin.ru/sections/tips_and_tricks/2058/ но не пойму как его можно применить к моему решению, мне кажется это то что нужно, если создать категорию и в ней сгруппированые товары и в чайке вывод категории выводить несколько товаров

Подскажите или натолкните на мысль как сделать это правильно. Или предложите сумму за которую вы бы это сделали, пробовал Фриланс, там все глухо :(
Вячеслав Варов
25 сентября 2018, 16:55
modx.pro
1
893
0