Всего 125 956 комментариев

Евгений
20 апреля 2022, 11:45
0
Судя по стэктрейсу

string(810) "#0 /usr/share/nginx/www/core/components/pdotools/model/pdotools/pdotools.class.php(45): pdoTools->setConfig(Array) #1 /usr/share/nginx/www/core/components/pdotools/model/pdotools/pdoparser.class.php(24): pdoTools->__construct(Object(modX)) #2 /usr/share/nginx/www/core/xpdo/xpdo.class.php(1236): pdoParser->__construct(Object(modX), Array) #3 /usr/share/nginx/www/core/model/modx/modx.class.php(719): xPDO->getService('parser', 'pdoParser', '/usr/share/ngin...') #4 /usr/share/nginx/www/core/model/modx/modelement.class.php(566): modX->getParser() #5 /usr/share/nginx/www/core/model/modx/modx.class.php(1673): modElement->getProperties() #6 /usr/share/nginx/www/core/model/modx/modx.class.php(568): modX->invokeEvent('OnMODXInit', Array) #7 /usr/share/nginx/www/index.php(50): modX->initialize('web') #8 {main}"

после события OnMODXInit
Артур Шевченко
20 апреля 2022, 10:49
0
Вот это, кстати, некорректная строка
site.ru/poisk-po-saytu?query=фильтр&parent=29
Вот такая должна быть
site.ru/poisk-po-saytu?query=фильтр&resource|parent=29
Артур Шевченко
20 апреля 2022, 10:46
0
Нет, не правильно, нужно самостоятельно с помощью js формировать ссылку с get параметрами.
Сергей Карпович
20 апреля 2022, 09:54
+1
Разобрался, в /core/components/icontv/elements/config/ добавляем свою конфигурацию со своим набором.
Сергей Карпович
20 апреля 2022, 09:30
0
А можно подключить свою iconFonts библиотеку (указать свою папку с шрифтом и стилями)?
Например на флатикон я создаю для конкретного сайта набор, выгружаю в виде иконочного шрита и иннтегрирую в сайт
Евгений
20 апреля 2022, 08:57
0
Неработает, тк в классе pdoTools в setConfig устанавливается
$this->config['useFenomCache'] = $this->modx->getOption('pdotools_fenom_cache', null, false);

До вызова OnHandleRequest

и уже проверка идет в методе fenom
if (!empty($this->config['useFenomCache'])) {

Поэтому установка этого свойства конечно меняет конфиг, но fenom его читает раньше
Константин
20 апреля 2022, 07:50
0
В параметр &filters и в параметр &parents пробовал
Константин
20 апреля 2022, 07:32
0
Спасибо, правильно понимаю, что в самой форме msearch2 необходимо поместить сниппет mfilter2 — фильтр, который будет добавлять в get-параметры нужные опции и затем как-то перекидывать, по клику поиск, на каталог уже с подборкой товаров по этому фильтру?
Артур Шевченко
19 апреля 2022, 21:36
+1
Сегодня работает, завтра — нет. Мы же не можем знать, когда и кого переклинит в угоду повесточки что-нибудь заблокировать, поэтому считаю разумным, всё что можно подключить локально — подключить локально.
nikolrazumov
19 апреля 2022, 21:23
0
Вроде все работает!
nikolrazumov
19 апреля 2022, 21:20
0
тут решение проблемы
У самого такая проблема была.
открываем файл /core/src/Revolution/Mail/modPHPMailer.php
ищем строку 225 и вот это:
if (strpos($this->mailer->ContentType, 'html') !== false) {
                if (!empty($this->mailer->Body)) {
                    $html = new InlineStyle($this->mailer->Body);
                    /** @noinspection PhpParamsInspection */
                    $html->applyStylesheet($html->extractStylesheets());
                    $this->mailer->Body = $html->getHTML();
                }
            }
Заменить этим
if (strpos($this->mailer->ContentType, 'html') !== false) {
                if (!empty($this->mailer->Body)) {
                    $body = $this->mailer->Body;
                    // Turn UTF-8 characters into entities
                    $body = mb_convert_encoding($body, 'HTML-ENTITIES', "UTF-8");
                    $html = new InlineStyle($body);
                    /** @noinspection PhpParamsInspection */
                    $html->applyStylesheet($html->extractStylesheets());
                    $this->mailer->Body = $html->getHTML();
                }
            }
Письма будут в нормальной кодировке.
Артур Шевченко
19 апреля 2022, 21:02
0
Пробовал?
parent:categories
Артур Шевченко
19 апреля 2022, 20:53
0
Да, с тех пор как начали вводить санкции, надо переносить.
Артур Шевченко
19 апреля 2022, 20:52
0
Фильтры работают через get-параметры, соответственно нужно сформировать ссылку на страницу каталога с нужными параметрами.
Сергей Шлоков
19 апреля 2022, 20:00
0
Это обычная системная настройка. Ей можно манипулировать в процессе загрузки. Создайте плагин на событие OnHandleRequest и в нем прописывайте нужное значение согласно вашей логике
if ($modx->resource->id == 100) {
    $modx->setOption('pdotools_fenom_cache', false);  // отключить кэширование чанков для ресурса 100
}
Семён Кудрявцев
19 апреля 2022, 16:40
0
Только это не имеет большого смысла, так как с ресурсами можно работать в админке и без захода в сам ресурс, например через контекстное меню снять его с публикации, и тогда плагин не сработает, а даже если бы сработал, то в процессорах публикации/депубликации один фиг жестко прописан снос всего кэша.
Та же история с публикацией по расписанию.
Единственный вариант — это полностью переписывать реализацию класса кэш-менеджера и всех его методов.
Евгений
19 апреля 2022, 15:59
0
вопрос был в отключении кэша отдельного ресурса
vectorserver
19 апреля 2022, 15:26
0
Вы просили параметры отключения, я скинул! Что не так!?
Прочитайте нормально документацию по Pdotools!
Евгений
19 апреля 2022, 14:25
0
не совсем понял что у вас написано
Евгений
19 апреля 2022, 14:24
0
Это очень круто, почитал, думаю стоит изучить и внедрить, но быстро мигрировать тем более на бетта версию не выйдет :(

вообще то что получил сейчас это очень большой кэш в папке default/pdotools, на одну страницу приходится по 2 файла кэша, а с учетом того что у меня много ресурсов, + много виртуальных страниц, весь объем диск съедаю за раз. кэшировать все необходимости нет, только посещаемые страницы. но отключить кэш или принудительно включить не могу. в настройках есть только общая настройка pdotools_fenom_cache, отключив которую кэш не формируется, но и основные страницы работают медленно. Как вариант переписать xpdocachemanager.class.php, но там объект modx не содержит ресурса, и управлять кэшированием например через стандартную настройку ресурса возможности нет.