Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Во что превращаются маленькие красные пятна — квест про здоровье
Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
alelunegov

Александр Лунегов

Фрилансер. Разработка сайтов на MODX, верстка
  • 39
    вклад
  • 2
    вопроса
  • 42
    ответа
  • 69%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • GetObject в MODX EVO возвращает null как решить?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    В Evo API отличается от API MODX Revo.
    Здесь для получения информации о веб-пользователе надо использовать getWebUserInfo.
    Ответ написан вчера
    Комментировать
    Нравится Комментировать
  • Как в Modx Revo вывести всех пользователей определенной группы?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Если известно, что пользователи состоят только в этой группе или это их главная группа, то тут всё легко.
    $groupName = 'boys';
    //Получаем ID группы
    $groupId = $modx->getObject('modUserGroup', array('name' => $groupName))->get('id');
    
    //Получаем коллекцию объектов пользователей с выборкой по группе
    $users = $modx->getCollection('modUser', array('primary_group' => $groupId));
    
    foreach ($users as $user) {
        
    }

    А вот если пользователи могут состоять в нескольких группах и список нужен не по главной группе, то тут немного сложнее...
    $groupName = 'boys';
    //Получаем ID группы
    $groupId = $modx->getObject('modUserGroup', array('name' => $groupName))->get('id');
    
    //Получаем коллекцию объектов групп пользователей с выборкой по группе
    $userGroupMembers = $modx->getCollection('modUserGroupMember', array('user_group' => $groupId));
    
    //прогоняем коллекцию через цикл
    foreach ($userGroupMembers as $userGroupMember) {
    
    //Получаем объект пользователя через объект группы
        $user = $userGroupMember->getOne('User');
    
    //Делаем с объектом пользователя, что пожелаем...
    }
    Ответ написан 11 янв.
    1 комментарий
    Нравится 1 комментарий
  • Как сделать условие активации и деактивации кнопки?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Попробуйте лучше такой вариант, он правильный и очень лаконичный:
    <a href="[[+tv.file-download]]" class="btn btn-success btn-sm[[+tv.file-download:empty=` disabled" tabindex="-1" aria-disabled="true`]]"><i class="fas fa-download"></i> Скачать</a>
    Ответ написан 04 янв.
    Комментировать
    Нравится Комментировать
  • Почему не выводит getimagelist из редактора ресурса?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Сделайте вызов сниппета некэшируемым:
    [[!getImageList? 
            &tvname=`gallery`
            &docid=`[[+id]]`
            &tpl=`@CODE:
            <div class="item">
              <img src="[[+image]]" alt="" width="844" height="531">
            </div>`
            &tvname=`img-slide`
            ]]
    Ответ написан 25 дек. 2020
    Комментировать
    Нравится Комментировать
  • Как в ModX посмотреть исходный код всей страницы?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Можно попробовать посмотреть в кэше:
    /core/cache/resource/web/resources/[id ресурса страницы].cache.php
    Ответ написан 25 дек. 2020
    Комментировать
    Нравится 1 Комментировать
  • Как по id в чанке проверить не удален ли ресурс?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Можно попробовать таким образом.
    Сначала сниппетом getImageList создаем список id ресурсов через запятую:
    [[!getImageList?
        &tvname=`migx_recommended_brands`
        &tpl=`@CODE: [[+brand]]`
        &toPlaceholder=`kakoytoplaceholder`
        &outputSeparator=`,`
    ]]

    Инструкция по параметрам getImageList.

    А потом используем для вывода сниппет pdoResources, который отфильтрует неопубликованные и удаленные.
    [[!pdoResources?
        &parents=`0`
        &depth=`0`
        &resources=`[[+kakoytoplaceholder]]`
        &tpl=`recommended_service`
        &includeTVs=`preview_image`
    ]]


    Чанк recommended_service:
    <div class="col-md-6 mb-base col-xl-3" style="">
        <a class="brand" href="[[~[[+id]]]]">
            <span class="brandtext">[[+pagetitle]]</span>
            <img class="img-fluid" src="[[+tv.preview_image:pThumb=`&w=250&h=200&zc=0`]]" alt="">
        </a>
    </div>


    Но, если бы это был мой проект, то я бы прежде попробовал написать свой сниппет, который сначала проверял TV migx_recommended_brands: удалял бы там id несуществующих ресурсов, отфильтровывал неопубликованные и самостоятельно делал бы вывод.
    Ответ написан 02 дек. 2020
    2 комментария
    Нравится 1 2 комментария
  • Как вывести MIGX внутри MIGX в MODX?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Возможно проблема в фильтре вывода.
    Попробуйте эту конструкцию
    [[+tiles:isnot=``:then=`
      <div class="tiles-block">
        [[getImageList?
          &value=`[[+tiles]]`
          &tpl=`tiles-tpl`
        ]]
      </div>
    `]]

    поменять на
    [[getImageList?
        &value=`[[+tiles]]`
        &tpl=`tiles-tpl`
        &wrapperTpl=`@CODE:<div class="tiles-block">[[+output]]</div>`
    ]]
    Ответ написан 10 нояб. 2020
    1 комментарий
    Нравится 1 комментарий
  • Modx. Как заставить GetImageList работать с параметом where?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Попробуйте использовать двойные кавычки вместо одинарных:
    &where=`{"idx":"1"}`
    Ответ написан 19 окт. 2020
    8 комментариев
    Нравится 1 8 комментариев
  • Виртуальная страница ModX?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Виртуальные страницы можно сделать при помощи дополнения MODX Fast Router.
    Адреса можно сделать например так:
    site.dm/users/{name}
    где {name} будет именем пользователя (username);
    или
    site.dm/users/{id:[0-9]+}
    тут id пользователя.
    Для получения id или имени пользователя надо будет написать свой сниппет по инструкции.
    А информацию проще всего будет выводить сниппетом Profile из дополнения Login.
    Ответ написан 05 окт. 2020
    Комментировать
    Нравится Комментировать
  • Как написать условие на ModX?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    <img src="[[!+modx.user.id:userinfo=`photo`:empty=`/assets/img/profile.jpg`]]" class="img-fluid rounded-circle border shadow" alt="[[+username]]">
    Ответ написан 02 сент. 2020
    Комментировать
    Нравится Комментировать
  • Почему не работает этот код ModX?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    У ресурса есть поле createdby.

    В MODX есть фильтры ввода-вывода и модификатор UserInfo.

    Следовательно на странице ресурса лучше выводить так:
    [[*createdby:userinfo=`username`]]

    А в списке ресурсов (через pdoResources) — так:
    [[+createdby:userinfo=`username`]]
    Ответ написан 02 сент. 2020
    2 комментария
    Нравится 2 комментария
  • Как вывести URL child элемента в collections?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Тег [[*alias]] (со звездочкой) выводит псевдоним ресурса на котором он вызывается. То есть если вы выводите этот его на главной странице сайта, то там и будет index.
    Если же вы хотите вывести ссылку на ресурс через getPage (getResources), то надо делать так, как написал Руслан <a href="[[~[[+id]]]]" class="d-table-cell">.

    P. S. Collections тут не причем, он служит для организации дочерних ресурсов в админке сайта и на внешнюю часть сайта никак не влияет.
    Ответ написан 07 авг. 2020
    Комментировать
    Нравится Комментировать
  • Как изменить название значений в formit?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Попробуйте как-то так:
    [[!FormIt?
        ...
        &fieldnames=`name==Имя, phone==Номер телефона`
    ]]

    Официальный мануал.
    Ответ написан 07 авг. 2020
    Комментировать
    Нравится 1 Комментировать
  • Почему при авторизации в админку modx evo страница просто обновляется?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Проблема именно в том, что в базе данных нет таблицы modx_session.
    Ответ написан 08 июн. 2020
    10 комментариев
    Нравится 10 комментариев
  • 2 AjaxForm на одной странице MODX Revolution?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    В теге form параметр action указан на домашнюю страницу сайта, а надо, что бы обработка шла на текущей странице:
    <form action="[[~[[*id]]]]" ...>

    Первая форма срабатывает так как сниппет (обработчик) AjaxForm этой формы есть на всех страницах, в том числе и на домашней.
    Ответ написан 30 апр. 2020
    Комментировать
    Нравится 1 Комментировать
  • Не могу найти указанный ключ формы?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    photosho, у кнопок отправки форм также нужен атрибут name равный submitVar в Formit (AjaxForm).
    [[!AjaxForm?
      ......
      &submitVar=`form1`
    ]]
    <form method="post" action="[[~[[*id]]]]" id="form-1">
      .......
      <input type="submit" name="form1" class="btn" value="Отправить" />
       .............
    </form>
    [[!AjaxForm?
      ......
      &submitVar=`form2`
    ]]
    <form method="post" action="[[~[[*id]]]]" id="form-2">
      .......
      <input type="submit" name="form2" class="btn" value="Отправить" />
      .............
    </form>

    Если вместо <input type="submit"> применяете <button type="submit">Отправить</button>, то в форме можно добавить скрытое поле:
    <input type="hidden" name="form3" value="1" />
    Ответ написан 05 мар. 2020
    Комментировать
    Нравится 1 Комментировать
  • Как правильно реализовать влодение файла в formit?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    <form action="[[~[[*id]]]]" method="post" enctype="multipart/form-data">
    Ответ написан 03 мар. 2020
    4 комментария
    Нравится 4 комментария
  • MOdx задать условия вывода изображения. Какие есть варианты?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    <meta itemprop="image" content="[[*cat_img:empty=`[[*prod_img:empty=`https://quadmaster.ru/assets/gallery/1/podklyuchenie-dho-na-kvadrocikl.jpg`]]`]]" />

    cat_img и prod_img можете поменять местами в зависимости от того, что важнее.
    Ответ написан более года назад
    1 комментарий
    Нравится 1 комментарий
  • Свой html шаблон для админки?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Многие MODX-разработчики оставляют админку для админов (это делать полезнее, что бы новый админ не заблудился), а для контент-менеджеров делают что-то другое, заточенное под конкретный сайт. API MODX это вполне позволяет.
    Ответ написан более года назад
    Комментировать
    Нравится Комментировать
  • Как искать по свойствам товара mFilter2?

    alelunegov
    Александр Лунегов @alelunegov
    Фрилансер. Разработка сайтов на MODX, верстка
    Возможно, что поля не проиндексированы поисковой системой. Почитайте про индексацию.
    Ответ написан более года назад
    Комментировать
    Нравится 1 Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • Следующие →
Самые активные сегодня
  • Василий Банников
    • 16 ответов
    • 0 вопросов
  • hello_my_name_is_dany
    • 10 ответов
    • 0 вопросов
  • hottabxp
    Сергей Карбивничий
    • 8 ответов
    • 0 вопросов
  • Sanes
    Sanes
    • 7 ответов
    • 0 вопросов
  • GRO24
    • 6 ответов
    • 1 вопрос
  • shebanits
    • 6 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации