Передаємо параметри в чанкі або вичавлюємо все з modx

У MODX Revolution є така прикольна штука, як параметри у чанкі. Тобто ви можете створити чанк з якимись плейсхолдерамі. І при виклику чанка передати в потрібний плейсхолдер значення. Тобто виглядає це приблизно так

У чанка ChunkName замінюються плейсхолдери name і mail на chunk і [email protected] відповідно.

У MODX Evolution такої можливості немає. Тому дуже часто доводиться винаходити велосипеди у вигляді фрагментів які виконують функцію parseChunk замінюючи потрібні значення у чанка. Через це у деяких розробників на сайті з'являються тонни таких спеціалізованих фрагментів. WTF? Навіщо?

Створюємо сниппет parseChunk

Усе. Тепер якщо нам знадобиться підставити в якийсь плейсхолдер чанка значення, то не потрібно плодити 1000 сніпетів. Просто передаємо цьому сніпетів через параметр ChunkName назву чанка. А всі інші параметри у нас будуть будуть плейсхолдерамі які потрібно замінити. геніально :-)

Передаємо параметри в чанкі або вичавлюємо все з modx

Як же я люблю MODX EVO і все більше переконуюся що правильно зупинив свій вибір саме на ньому

Передаємо параметри в чанкі або вичавлюємо все з modx

Тут люди питаю де це реально може стати в нагоді. Давайте досвідом поділимося что-ли? Або трохи пофантазуємо.
Приклад 1 Блоки в сайдбарі оформлені одинакого. Шапка з заголовком і вміст самого блоку. Всього на сторінці 3 таких блоку. Ми можемо звичайно під кожен блок створити окремий чанк. Але тоді оформлення частково буде перетинатися. Ця ж пробелми нас чекає якщо ми зберігати все в шаблоні будемо. Тому є варіант створити чанк щось типу
[+ Pagetitle +] [+ content +]
І викликати цей чанк з потрібними параметрами кілька разів поспіль

Передаємо параметри в чанкі або вичавлюємо все з modx

Ну а якщо чанк простенький, типу як [+ pagetitle +] [+ content +], то може можна взагалі без створення чанка обійтися і передати його в сниппет у вигляді рядка і там вже розпарсити?
Я в php не спец, спробував сам дописати, але не вийшло, поки занадто складно для мене на цьому етапі знань))

Передаємо параметри в чанкі або вичавлюємо все з modx

Copyright © 2024