AV_Jok
С нами с 25 января 2014; Место в рейтинге пользователей: #1217Работа с MODX из IDE без админки
Привет друзья!
Прямо сейчас проходит MODXpo 2017 и я хочу поделиться с вами своим, только что показанным, докладом.
Идея в том, чтобы разрабатывать сайты без логина в админку, прямо из PhpStorm.
Я предлагаю делать это через свой пакет, который установит нужные ресурсы, настройки, шаблоны и вообще что угодно. Это не для разработки дополнений, это для разработки сайтов.
Прямо сейчас проходит MODXpo 2017 и я хочу поделиться с вами своим, только что показанным, докладом.
Идея в том, чтобы разрабатывать сайты без логина в админку, прямо из PhpStorm.
Я предлагаю делать это через свой пакет, который установит нужные ресурсы, настройки, шаблоны и вообще что угодно. Это не для разработки дополнений, это для разработки сайтов.
Удаление старых версий пакетов
Многие пользователи знают, что MODX хранит кучу старых версий дополнений, чтобы вы могли откатиться на них в любое время.
Но, это требуется крайне редко, а место пакеты занимают. Их можно удалять вручную, но это довольно утомительно, поэтому я набросал несложный консольный скрипт для автоматического удаления.
Скрипт нужно положить в корневую директорию и запустить. Он выберет все установленные версии, кроме самой последней, и корректно удалит их через родной процессор.
Судя по коду этого процессора, никак повредить системе он не может, потому что деинсталляцию самого пакета не делает, а только удаляет файлы версии. Но, в любом случае, использовать на свой страх и риск!
Но, это требуется крайне редко, а место пакеты занимают. Их можно удалять вручную, но это довольно утомительно, поэтому я набросал несложный консольный скрипт для автоматического удаления.
Скрипт нужно положить в корневую директорию и запустить. Он выберет все установленные версии, кроме самой последней, и корректно удалит их через родной процессор.
Судя по коду этого процессора, никак повредить системе он не может, потому что деинсталляцию самого пакета не делает, а только удаляет файлы версии. Но, в любом случае, использовать на свой страх и риск!
Импорт в MODX Tickets из Wordpress
В очередной раз понадобилось перенести блог из Вордпресса в MODX. Раньше я для этого пользовался хитрым костылём с Articles. Сейчас он не работает, поэтому пришлось чинить. Доделывать мне его лень, так что это опять костыль. Но у меня он сработал.
Скачиваем файл, создаём новый сниппет, например, wpimport, вставляем в него текст из файла, и настраиваем всё параметры прямо в коде (я предупреждал — костыль!)
Скачиваем файл, создаём новый сниппет, например, wpimport, вставляем в него текст из файла, и настраиваем всё параметры прямо в коде (я предупреждал — костыль!)
- На 20-й строке указываем путь к файлу, экспортированному из WP.
- На 100-й строке появляется функция, которая расставляет теги абзаца, которых в файле WP нет.
- 115-я строка — ID родителя (куда будем импортировать?)
- 119-я — ID шаблона для постов.
- На 126 устанавливается class_key Tickets. Если хотите, можете сделать ModResource.
- Со 132-й строки пробуем скопировать все изображения из WP в папку, указанную на 152-й строке. Попутно меняем css классы у картинок на bootstrap.
- На 180-й строке пытаемся поменять href у ссылок, внутри которых были картинки.
- 199 – Сохраняем в интротекст всё, что перед катом.
- 209,210 — вызываем функции, которые сохраняют description и keywords в соответстующие ТВ, если в WP вы использовали All In One SEO Pack. ТВ для сохранения указаны в самом конце.
- ТВ для тегов на 339-й строке.
Адаптация сайта по методике RESS на MODX
Всем привет, сегодня подумал как можно сделать адаптивный сайт на MODX при помощи RESS, для тех кто не в курсе это когда для разных устройств сервер отдаёт разные HTML и CSS, но по одному URL.
Сама эта схема завязана на проверке userAgent браузера, и да я знаю, что в modstore уже есть компонент для определения мобильных версий — MobileDetect, но он работает по принципу — вся вёрстка в одном шаблоне и при рендере страницы он ненужную разметку вырезает.
Я хочу попробовать другой вариант, но мне нужна помощь сообщества —
В общем всё дело происходит при работе с Fenom в pdoTools, в настройках системы есть параметр, задающий папку от куда нужно тянуть шаблоны для ресурсов, вот её я хочу менять на лету в зависимости от userAgent браузера.
Сама эта схема завязана на проверке userAgent браузера, и да я знаю, что в modstore уже есть компонент для определения мобильных версий — MobileDetect, но он работает по принципу — вся вёрстка в одном шаблоне и при рендере страницы он ненужную разметку вырезает.
Я хочу попробовать другой вариант, но мне нужна помощь сообщества —
В общем всё дело происходит при работе с Fenom в pdoTools, в настройках системы есть параметр, задающий папку от куда нужно тянуть шаблоны для ресурсов, вот её я хочу менять на лету в зависимости от userAgent браузера.
Функции хелперы для MODX
Как удалить все товары и опции
Сделал импорт нескольких тысяч товаров из внешнего файла. Хочу все переделать и перезалить товары. Пытаюсь удалить товары стандартным способом, как ресурсы. Товары и каталоги удаляются (т.е. становятся красными), но очистить их не получается. Модх просто не реагирует.
Оптимальным кажется вариант удаления товаров через phpMyAdmin. Вопрос в том какие таблицы нужно почистить, чтобы потом ничего не поломалось.
Оптимальным кажется вариант удаления товаров через phpMyAdmin. Вопрос в том какие таблицы нужно почистить, чтобы потом ничего не поломалось.
Новая версия готового интернет-магазина ms2Store
Приветствую!
С 23 ноября доступна новая версия сборки на MODX Revo и miniShop2. Кому интересно изучать электронную коммерцию с MODX Revo на готовом решение, прошу ознакомиться к функционалом.
[Решено] includeThumbs с Fenom
Всем привет. Собираю магазин на miniShop2. Нужно превьюшки маленькие вставлять в корзине у добавленных товаров. Я добавил к сниппету msCart параметр &includeThumbs=`150x150`
В распечатке JSON виден плейсхолдер 150x150 и путь пишет на сгенеренную превьюшку, вопрос вот в чём заключается. В шаблоне указано следующее:
В распечатке JSON виден плейсхолдер 150x150 и путь пишет на сгенеренную превьюшку, вопрос вот в чём заключается. В шаблоне указано следующее:
{foreach $products as $product}
<tr id="{$product.key}">
<td class="image">
{if $product.thumb?}
<img width="165" src="{$product.thumb}" alt="{$product.pagetitle}" title="{$product.pagetitle}"/>
{else}
<img width="165" src="{'assets_url' | option}images/noimage.png"
srcset="{'assets_url' | option}images/noimage.png 2x"
alt="{$product.pagetitle}" title="{$product.pagetitle}"/>
{/if}
</td>
...
</tr>
{/foreach}
Тоесть из цикла foreach получаем путь до картинки по умолчанию {$product.thumb}, но если ставить {$product.150x150} то всё ломается. Как в Fenom правильно вставить плейсхолдер сгенерированный через параметр &includeThumbs? Вывод thumb определенного размера на fenom
Здравствуйте, подскажите, как вывести превью в списке товаров с определенным размером через fenom в чанке tpl.msProducts.row, вывод по старинке
[[+360x270]]
работает, но если выводить через fenom вот так <img src="{$thumb}" alt="{$pagetitle}" title="{$pagetitle}"/>
то выводится картинка 120x90, хотя в настройках источников приписано [{"w":210,"h":180,"q":90,"zc":"0","bg":"FFF"},{"w":120,"h":90,"q":90,"zc":"0","bg":"FFF"},
{"w":360,"h":270,"q":90,"zc":"0","bg":"FFF"}
]
Вот и не могу понять синтаксис fenom для вывода определенного размера.Как создать свою сборку для MODX
Как и обещал, выкладываю инструкцию — как на основе сборки siteExtra сделать свою сборку. Скачать исходники можно на гитхабе https://github.com/ilyautkin/siteExtra. Полученный архив загружаем на сайт и распаковываем.