Futuris

Futuris

С нами с 09 января 2016; Место в рейтинге пользователей: #268

modNodejs - Интеграция Nodejs в MODx

Всем доброе утро. Сегодня представляю на всеобщее обозрение компонент над которым я потел последние несколько дней.

Заголовок говорит сам за себя, это интеграция Nodejs в MODx.
Так зачем он нужен? Для realtime! Как сказал Николай: «технологии диктуют».

Простейший пример: в minishop2 поступил заказ, а менеджер гуляет по админке\сайту, вот что он увидит:

Без перезагрузки страницы и тд, можно выполнить любой js по наступлению эвента.
but1head
21 января 2017, 03:11
modx.pro
22
12 882
+27

Создание ресурсов + TV, через Modx API

Добрый день.
Необходимо создать 300 ресурсов.
Как заполнять поля из массива pagetitle, alias и т.д я нашел.
$array = array(
 array(
  'title' => 'Ресурс 1',
  'alias' => 'res1',
  'idс' => '1'
 ),
 array(
  'title' => 'Ресурс 2',
  'alias' => 'res2',
  'idс' => '2'
 ),
 array(
  'title' => 'Ресурс 3',
  'alias' => 'res3',
  'idс' => '3'
 ),
);

foreach($array as $v){
    $res = $modx->newObject('modResource');                        
    $res->set('template', 1);             
    $res->set('isfolder', 0);             
    $res->set('published', 0);           
    $res->set('createdon', time());      
    $res->set('pagetitle', $v['title']);   
    $res->set('alias', $v['alias']);  
    $res->set('parent', 2);
    $res->save();
}
Вопрос как проставить значения в ТV из поля idc?
пытался таким образом:
$docId= $res->get('id');
    $tvDoc = $modx->getObject('modResource', $docId);
    $tvDoc->setTVValue(1, $v['idc']);
    $tvDoc->save();
Глеб
16 июня 2016, 10:58
modx.pro
5
11 330
0

Дополнительные поля профиля юзера (не extended)


Разрабатываю проект, в котором необходимо было реализовать более простое редактирование дополнительных полей профиля, чем есть из коробки. К слову, неудобное редактирование — это не единственный минус нативного способа расширения профиля полями. Ни для кого не секрет, что фильтрацию по JSON полям нормально не осуществить, только костылями. Фактически, мне надо было получить решение, которое бы расширяло стандартный код MODX, не трогая исходники, дабы сохранить карму в порядке возможность обновления системы.
Пришёл к выводу, что буду расширять стандартную вкладку профиля «Общая информация». При желании можно чуть переписать код в событии OnUserFormPrerender и создать свою вкладку со своими полями.
Павел Гвоздь
30 мая 2016, 22:36
modx.pro
116
19 865
+19

Подключаем Ecommerce в Яндекс.Метрике

Всем привет. На форуме куча полезной информации по разработке магазинов. Я же в свою очередь хочу рассказать про настройку аналитики.

Итак мы будем передавать информацию из магазина miniShop в Яндекс.Метрику для того, чтобы в полном объёме пользоваться отчётами Электронной коммерции.
mekirile
24 марта 2016, 07:05
modx.pro
39
10 667
+13

Расширение любых таблиц MODX

В очередной раз понадобилось изменить таблицу сайта, менять которую не предусмотрено.

Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.

Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
Василий Наумкин
16 ноября 2015, 07:07
modx.pro
117
10 617
+11

Включаем MemCache

MemCahed — это замечательная технология, которая позволяет кэшировать данные не на жесткий диск, а в оперативную память, которая быстрее во много-много раз. И если раньше MODX нужно было дружить с ней, то с версии 2.1 работа с MemCache уже включена в движок, и это нужно только активировать.

В принципе, операция не сложная, но есть один момент, из-за которого я и пишу этот топик.

Все операции, как обычно, написаны для сервера настроенного по этой инструкции.
Василий Наумкин
26 августа 2015, 04:58
modx.pro
8
12 296
0

Как не хакать сторонние классы

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

Что же делать?
Все просто — нужно расширить сторонний класс своими методами. По сути, это очень похоже на «классные процессоры», только без процессоров и использовать можно везде — это стандартная возможность ООП.
Василий Наумкин
30 июня 2012, 12:21
modx.pro
54
8 049
0

Пара фокусов с xPDO

В ходе одного исследования выяснил несколько интересных вещей про xPDO, о которых раньше не задумывался или некогда было проверить.

Решил немедленно поделиться.
Василий Наумкин
18 июня 2012, 10:12
modx.pro
32
21 918
0