Налаштування pdoTools для оптимізації MODX

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Налаштування pdoTools для оптимізації MODX
Проста
~1 робочий день
Часті питання

Наші компетенції:

Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Налаштування pdoTools для оптимізації MODX

pdoTools — набір сніпетів та інструментів для MODX, які замінюють стандартні Wayfinder, getResources, Breadcrumbs більш продуктивними аналогами. Використовує PDO напряму, без ORM-оверхеду xPDO.

Установка

Package Manager → pdoTools → встановити. Включає: pdoResources, pdoMenu, pdoPage, pdoCrumbs, pdoNeighbors, pdoSitemap, pdoField, pdoParser.

pdoResources замість getResources

Стандартний getResources: 30–50 запитів до БД для списку з 20 ресурсів. pdoResources: 1–3 запити.

[[pdoResources?
    &parents=`5`
    &resources=`-10`
    &showHidden=`0`
    &sortby=`menuindex`
    &sortdir=`ASC`
    &limit=`10`
    &includeTVs=`product_price,product_image`
    &prepareTVs=`1`
    &processTVs=`1`
    &tpl=`productCard`
    &tvPrefix=``
]]

&prepareTVs=1 — завантажує TV одним JOIN-запитом замість N окремих запитів.

pdoPage для пагінації

[[!pdoPage?
    &element=`pdoResources`
    &parents=`5`
    &limit=`12`
    &tpl=`productCard`
    &includeTVs=`product_price,product_image`
    &pageNavVar=`page.nav`
]]
[[!+page.nav]]

pdoPage автоматично генерує навігацію за сторінками та обробляє GET-параметр page.

Оптимізація pdoMenu

[[pdoMenu?
    &startId=`0`
    &level=`2`
    &sortby=`menuindex`
    &hideSubMenus=`0`
    &tplOuter=`@INLINE <ul class="nav">[[+wrapper]]</ul>`
    &tpl=`@INLINE <li class="[[+classes]]"><a href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>[[+wrapper]]</li>`
    &tplInner=`@INLINE <ul class="nav__sub">[[+wrapper]]</ul>`
    &hereClass=`active`
    &parentClass=`has-children`
    &cache=`1`
    &cacheTime=`3600`
]]

&cache=1 — кешувати меню на 1 годину. Меню одне з найтяжчих запитів, кеш критичен.

pdoParser: швидкий парсер

pdoParser замінює стандартний парсер MODX. На 20–40% швидше при великій кількості тегів на сторінці.

// Увімкнути в системних налаштуваннях:
// System → Settings → pdotools_parser_enable = 1

Кеш pdoTools

[[pdoResources?
    ...
    &cache=`1`
    &cacheTime=`1800`
    &cacheKey=`catalog_[[+GET.page:default=1]]_[[+GET.sort:default=price]]`
]]

Унікальний ключ кешу включає GET-параметри фільтрації — різні фільтри = різний кеш.

Терміни

Заміна стандартних сніпетів на pdoTools з настройкою кешування — 3–5 годин для середнього сайту.