Сортировка: По дате По просмотрам ↓
Знакомство с xPDO ч. 2 или xPDO для «гиков»
15 мая 2014, 18:57
После написания первой вводной статьи по xPDO, где я разобрал только базовые понятия и простейшие запросы/операции, обещался я вам (и себе), что обязательно копну глубже. Потребовало это достаточное кол-во времени, ибо «почва через чур каменистая», и похоже кроме самого Jason`а Coward`а никто не знает точно как сделать с xPDO все «правильно и красиво». Надеюсь недостаток документации восполнится после выхода Революшн (а на данный момент добрая половина функционала xPDO не задокументированна вобще :( ).
Посему за сеансом «просветления в Дао» я обратился лично у вышеупомянутому Джэйсону, и получил ответы на некоторые вопросы. (Хотя один из у меня разрешить так и не удалось, но об этом чуть позже).
Данная статья покрывает такие функции xPDO:
→ $xpdo->newQuery();
→ new xPDOCriteria();
→ $xpdo->getOne;
→ $xpdo->getMany;
→ $xpdo->getObjectGraph;
→ $xpdo->getCollectionGraph;
→ $xpdo->getCount;
→ незадокументированные методы создания и отладки запросов.
→ а также не упомянутые ранее вопросы «облегченного» удаления записей в БД.
Читать дальше
Посему за сеансом «просветления в Дао» я обратился лично у вышеупомянутому Джэйсону, и получил ответы на некоторые вопросы. (Хотя один из у меня разрешить так и не удалось, но об этом чуть позже).
Данная статья покрывает такие функции xPDO:
→ $xpdo->newQuery();
→ new xPDOCriteria();
→ $xpdo->getOne;
→ $xpdo->getMany;
→ $xpdo->getObjectGraph;
→ $xpdo->getCollectionGraph;
→ $xpdo->getCount;
→ незадокументированные методы создания и отладки запросов.
→ а также не упомянутые ранее вопросы «облегченного» удаления записей в БД.
Читать дальше
Создаем раздел управления виджетами в MODX
01 апреля 2015, 14:12
MODX отличается от других систем абсолютной гибкостью. С одной стороны это плюс, с другой стороны это приводит к отсутствию в MODX такого понятия как «виджет». Сегодня я научу вас как с помощью MIGX сделать панель управления виджетами.
Читать дальше
Читать дальше
Пара фокусов с xPDO
18 мая 2014, 16:01
В ходе одного исследования выяснил несколько интересных вещей про xPDO, о которых раньше не задумывался или некогда было проверить. Решил немедленно поделиться.
Выборка 1000 ресурсов
В чем же разница?
Читать дальше
Выборка 1000 ресурсов
$q = $modx->newQuery('modResource', array('id:>' => 0)); $q->limit(1000); $q->prepare(); $q->stmt->execute(); $res = $q->stmt->fetchAll(PDO::FETCH_ASSOC); foreach ($res as $v) { //echo $v['modResource_pagetitle']; }Этот код работает за 0.042197227478 и занимает 33.3 Mb памяти.
$q = $modx->newQuery('modResource', array('id:>' => 0)); $q->limit(1000); $res = $modx->getCollection('modResource', $q); foreach ($res as $v) { //echo $v->get('pagetitle'); }А этот уже за 2.15289998055 и занимает 78.3 Mb памяти.
В чем же разница?
Читать дальше
Новый раздел на сайте — Шаблоны для MODX Revolution
26 сентября 2013, 18:08
Периодически возникает необходимость сделать прототип сайта, чтобы посмотреть на структуру и понять, какие дизайнерские решения необходимы для разработки сайта. Постоянно приходится искать HTML шаблоны и интегрировать эти шаблоны в MODX. Вследствие этого появилась идея сделать коллекцию шаблонов, которые будет просто установить — буквально в один клик.
Представляю вам, что получилось: Шаблоны MODX
Пока шаблонов мало, но коллекция будет постепенно пополнятся. В новом разделе можно примерить шаблон и посмотреть, как выглядят главная и внутренние страницы, списки статей и пр. Понравившийся шаблон можно скачать в виде обычного пакета и установить к себе на сайт.Кроме того раздел будет полезен и новичкам — ведь всегда проще разбираться с уже настроенным сайтом.
Читать дальше
Новая версия Sendex
27 марта 2014, 13:29
На своем сайте для рассылки новых статей я использую компонент Sendex. На данный момент у меня всего 59 подписчиков, но так как хостинг у меня простенький, за один запрос все письма не отправляются. Раньше в кроне стояло задание, по которому раз в 5 минут отправлялись 20 писем. Но мне такая система не очень нравится — я люблю все контролировать сам. Хочу, чтобы можно было сначала отправить письмо себе, потом, если письмо отправилось некорректное, удалить все письма и сгенерировать новую версию.
Поэтому я форкнул Sendex и добавил в табличку писем массовые операции. Василий принял мой Pull Request и теперь в Sendex можно зажать клавишу Shift и выделить сразу несколько писем. Выделенные письма можно удалить или отправить.
Читать дальше
Поэтому я форкнул Sendex и добавил в табличку писем массовые операции. Василий принял мой Pull Request и теперь в Sendex можно зажать клавишу Shift и выделить сразу несколько писем. Выделенные письма можно удалить или отправить.
Читать дальше
Подписка на новости для вашего сайта
12 апреля 2013, 15:55
Сделал я себе блог и решил, что каждый день на него никто заходить все равно не будет, но почитать новые статьи многие бы не отказались. И решил я сделать подписку на новые статьи для любого посетителя.
Так как на начальном этапе подписчиков будет немного, то отправку писем я реализовал с помощью простого плагина на событие OnDocFormSave
Читать дальше
Так как на начальном этапе подписчиков будет немного, то отправку писем я реализовал с помощью простого плагина на событие OnDocFormSave
Читать дальше
autoRedirector — Автоматический редирект при изменении адреса страницы
25 февраля 2014, 17:00
Представляю на суд публики дополнение autoRedirector, которое позволит вам не беспокоиться о том, что иногда адреса страниц меняются.
После установки плагин будет отслеживать изменение адресов страниц и записывать старые адреса в отдельную табличку. Если пользователь перейдет по одной из старых ссылок, плагин перенаправит его на актуальный адрес. В результате пользователь увидит искомую страничку, а не ошибку 404.
Читать дальше
После установки плагин будет отслеживать изменение адресов страниц и записывать старые адреса в отдельную табличку. Если пользователь перейдет по одной из старых ссылок, плагин перенаправит его на актуальный адрес. В результате пользователь увидит искомую страничку, а не ошибку 404.
Читать дальше
Автоматизация перелинковки сайта в MODX REVO
06 апреля 2013, 02:16
Попросил меня один знакомый SEO-шник помочь ему в перелинковке сайта. Представляю вашему вниманию, что у меня получилось и как это сделать у себя.
Читать дальше
Задача. Оптимизатор должен иметь возможность ходить по сайту и вставлять в текст ссылки. Сделать это нужно как можно проще для оптимизатора, чтобы его работа проходила как можно быстрее.
Читать дальше
Плагин для транслитерации русских имен файлов загружаемых в ModX Revolution
15 мая 2014, 19:09
В процессе работы с ModX Revolution возникла необходимость сделать плагин для транслитерации имен файлов загружаемых пользователем на хостинг через встроенный менеджер файлов. Использованную функцию UrlTranslit нарыл где то здесь.
Как использовать:
Создаем новый плагин с именем TransliterateFileNames
копируем в плагин код с Github
назначаем на событие OnFileManagerUpload.
Читать дальше
Как использовать:
Создаем новый плагин с именем TransliterateFileNames
копируем в плагин код с Github
назначаем на событие OnFileManagerUpload.
Читать дальше
SiteHeart — онлайн чат для сайта
27 августа 2014, 19:14
В последнее время в сфере электронной коммерции распространены различные плагины онлайн-помощи для посетителей сайта. Одним из таких плагинов является SiteHeart. Этот чат совершенно бесплатный, имеет много возможностей как функциональных (например, прием платежей прямо в чате, отправка файлов и пр.), так и для кастомизации.
Для установки его на сайт можно воспользоваться дополнением SiteHeart. Вам нужно лишь зарегистрироваться в системе и указать в системных настройках ID вашего чата.
Читать дальше
Для установки его на сайт можно воспользоваться дополнением SiteHeart. Вам нужно лишь зарегистрироваться в системе и указать в системных настройках ID вашего чата.
Читать дальше