Разделы

  
 

Отличия Revo от Evo


Решил, наконец, написать эту статью. Обладая опытом работы на Etomite около полугода, на Evolution около двух лет и Revolution чуть больше года я могу немного раскрыть эту тему.

Статья не для холивара, просто факты и примеры. Обе версии я рассматриваю без хаков и допиливаний, то есть, речь о стандартных версиях от modx.com.


( Читать дальше )

Отключаем сообщения об ошибках

Многие наверное видели сообщения вида MODx Parse Error bla-bla-bla
на сайтах сделаных на modx evolution. Как правило подобные ошибки несут в себе чисто информативный харрактер. Но эта информация может дать очень ценную информацию для скрипткидиса.


( Читать дальше )

Модуль массового редактирования параметров документа [evo]

Требуется модуль для EVO позволяющий массового управлять документами: редактирование заголовков и значений TV параметров. Список tv параметров задается в настройках модуля (tv параметры типа: input, radiobox, checkbox. В других нет необходимости). Так же в настройках задается ID родителя от куда брать ресурсы (выборка ресурсов только 1 УВ: SELECT * FROM site_content WHERE parent=`XX`).


( Читать дальше )

UnisenderConnector[EVO] snippet by Alooze

Собственно как и обещал выкладываю в паблик решение заказаное мной ранее на сообществе. На данный момент сниппет протестирован и успешно работает на сайте Обучение аэродизайну.

Собственно сам сниппет: UnisenderConnector by Alooze.

Вызов простой
[!unisenderConnector? &listId=`ID рассылки куда подписываем` &apiKey=`ApiKeyUnisender` &tags=`список меток через запятую. передаются вместе с подписчиком чтобы идентифицировать где он подписался` &tplForm=`unisender`!]

На самом деле есть еще 1 скрипт который мониторит рассылку на unisender и синхронизирует контакты с сайтом. Сделано это с той целью, что если вдруг, на нескольких сайтах будет стоять форма подписки на одну и ту же рассылку, то чтобы контакты были везде одинаковые.

Задача авторизации пользователей не стояла, поэтому скрипт работает по принципу: получили мыло и имя -> создали заблокированную учетку со случайным паролем -> сгенерировали ссылку для подтверждения подписки (для валидации мыла) -> импортировали и активировали контакт на унисендер.

В этой цепочке есть еще одна недоработка. Если пользователь когда-то пробовал подписаться, но не подтвердил подписку, то этот человек навсегда теряет возможность подписаться, т.к. сниппет ему скажет, что такой юзер уже есть. Ну это все мелочи, которые на данном этапе меня не напрягают.

Понадобится — доработаю. Либо буду признателен, если кто-то допилит.

P.S. На данный момент в моих планах портировать этот сниппет на smartresponder и работать с ним, т.к. уже давно работаем с этим сервисом и на unisender посмотрели только из-за наличия API. Но, как выяснилось и у smartresponder'a оно есть:-)

MODx Evolution - хранитель Модекса!

MODx Evolution является причиной существования компании MODX, но основная команда разработчиков сосредоточена на MODx Revolution…
Команда MODx продолжает развитие Evo!!!!.
Для оживления эволюционного прогресса, команда MODx, хотела бы пригласить всех тех, кто заинтересован в развитии Evolution.

( Читать дальше )

Пресс-релиз, MOD Chip

MODX Японии заявила, что 1 апреля 2012 года выпускает разработанный для MODX Evolution «MOD Chip» (Moddochippu).
Переписанный на языке C и PHP, MODX теперь работать быстрее и с меньшими ресурсами чем раньше, он стал ещё легче. Эта версия — Ainari.
Особенности MOD Chip
-> Размер стал меньше по сравнению с предыдущей разработкой (ранее разработанный OpenBlockSS).
-> Всего 6 проводов для подключения (из них два — питание).
-> Увеличина производительность
-> Всю информацию и управление Модексом можно контролировать в автомобиле (отвечает условиям подключения FOMA, подключаться может как через USB так и через интернет)
-> Всегда с вам рядом. Остаётся подключить к чипу цветной ЖК-дисплей, и Модекс с вами всё время

Информация взята из открытого источника MODX Японии

За дополнительной информацией обращайтесь по этому адресу aprilfool@modxcms-jp.com (ответственный за разработку).

Пробная партия MOD Chip завезенна из Японии бесплатно, кто заинтересован в приобретении MOD Chip, нажимаем читать далее

( Читать дальше )

Модуль рекламы

Задача: предложить и настроить или разработать с нуля модуль гео-таргетинговой рекламы на сайте для того, чтобы пользователям с региона (или страны) А выводить одну рекламу, а пользователям с региона (или страны) Б показывать другую.

Сайт работает на движке modx evolution в связке с форумом XenForo 1.1.2 в связи с этим требуется 2 модуля (1 для modx, а другой для XenForo), т.к. реклама будет размещаться и на форуме и на сайте. Связку между этими двумя модулями делать не обязательно (вполне устроит, если 2 модуля будут работать независимо друг от друга).

Решение для modx может быть допиленый вариант модуля Easy Advertising Возможно уже есть аналогичный модуль для XenForo.

Готов рассмотреть предложения на разработку только модуля для ModX.

P.S. Все еще ищу исполнителя для разработки подписки на рассылку.

Требования к модулю
— Счетчик кликов
— Счетчик показов
— Возможность настраивать гео-таргетинг
— В качестве рекламного блока может выступать не только картинка или флешка, но и html код
— Возможность настраивать число показов
— Возможность настраивать срок размещения баннера

[EVO] Всплывающие подсказки

Всем доброго времени суток.
Интересует следующий момент — есть ли для modx готовое решение всплывающих подсказок? В моем случае для полей ввода.
Или же только реализовывать сторонними Jquery и прочие?

Информация о родителе [Evo]

Порой необходимо быстро получить информацию о родителе, например вывести заголовок, id и т.п. Для этого есть getPageInfo, но в чистом виде нужную информацию мы не получим. А уж если нам понадобилось значение tv параметра, то придется вызывать getTemplateVar. Чтобы не плодить несколько снппетов набросал один. Ничего такого заумного в нем нет, но все же решил поделиться.

Называем getParentInfo
<?php
$parent=$modx->getParent($modx->documentIdentifier);
$value='';
if(isset($tv) && $tv==1){
   $parent=$modx->getTemplateVar($info,'*',$parent['id'],1);
   if($parent['value']!=''){
      $value=$parent['value'];
   }else{
      $value=$parent['defaultText'];
   }
}else{
   $parent=$modx->getPageInfo($parent['id'],'1',$info);
   $value=$parent[$info];
}
return $value;
?>


Возьмем заголовок страницы родителя
[[getParentInfo? &info=`pagetitle`]]

Узнаем значение tv параметра MyParametr
[[getParentInfo? &info=`MyParametr` &tv=`1`]]