MODX Meetup Kazakhstan 2017, 29 апреля 2017 года



Всем доброго дня!

Приглашаем всех неравнодушных по отношению к MODX: разработчиков, верстальщиков, пользователей, заказчиков принять участие на ежегодном MODX Meetup. Теперь в Казахстане. Если технические доклады не для вас, то за время митапа у вас будет много времени пообщаться на интересующие вас темы с единомышленниками. Приходите!

Читать дальше →

Добавление статей с сайта на MODx

Блог им. Electrica /
Когда я начал работать с Modx Revolution для меня встала проблема такая. Всегда хотел что бы на моем сайте посетители сами публиковали свои статьи, новости, какие то фотки ну и так далее.
Немного порывшись в гугле, наткнулся на интересную реализацию этого способа. Создаем 2 снипета.
1-й(добавляет ресурс в дерево документов) например addtree:

<?php
$doc = $modx->getObject('modResource',array('id'=>$hook->getValue('resource_id')));
 
if (empty($doc)){
    $doc = $modx->newObject('modResource');
    $doc->set('createdby', $modx->user->get('id'));
}
else{
    $doc->set('editedby', $modx->user->get('id'));
}
 
$allFormFields = $hook->getValues();
foreach ($allFormFields as $field=>$value)
{
 
   if ($field !== 'spam' && $field !== 'resource_id'){
         $doc->set($field, $value);
    }
}
$alias = $doc->cleanAlias($fields['pagetitle']);
if($modx->getCount(modResource, array('alias'=>$alias))!= 0) {
$count = 1;
$newAlias = $alias;
while($modx->getCount(modResource, array('alias'=>$newAlias))!= 0) {
$newAlias = $alias;
$newAlias .= '-' . $count;
$count++;
}
$alias = $newAlias;
}
$doc->set('alias',$alias);
$doc->set('template', $template);
$doc->save();
 
foreach ($allFormFields as $field=>$value)
{
    if (!empty($value) && $tv = $modx->getObject('modTemplateVar', array ('name'=>$field)))
    {
        /* handles checkboxes & multiple selects elements */
        if (is_array($value)) {
            $featureInsert = array();
            while (list($featureValue, $featureItem) = each($value)) {
                $featureInsert[count($featureInsert)] = $featureItem;
            }
            $value = implode('||',$featureInsert);
        }  
        $tv->setValue($doc->get('id'), $value);
        $tv->save();
    }
}
$modx->cacheManager->refresh();
 
return true;


Читать дальше →

Как написать сниппет для MODX, часть 2

Блог им. kschingiz /
Всем привет, я представляю вам вторую часть статьи из цикла “Как написать сниппет для MODX”, и сегодня мы познакомимся с чанк процессингом, операциями над ресурсами, программного подключения внешних файлов и тд.
Очень надеюсь, что статья будет полезной для Вас.

Читать дальше →

Что такое MODX

Блог им. kschingiz /
Добрый день.
Меня зовут, Чингиз. В этой статье хотел бы рассказать, что такое MODX, основные элементы движка и ответить на вопрос «Почему MODX не популярен среди нас?».

Что такое MODX?
MODX – это бесплатная CMS, как независимый движок начал развиваться в 2005 году. Написан на РНР, использует базу MySQL. MODX развивается в двух ветках, именуемых: Evolution и Revolution, в простонародье Ево и Рево, в функционале принципиальной разницы нет.
Читать дальше →