Удалить данные migx поля

Подскажите как лучше реализовать удаление данных migx поля по заданной дате. Логика такая, что одно из полей migx — поле типа дата и оно сравнивается с текущей датой, как только дата удаления равна текущей, данные migx поля удаляются. Наверное тут нужен небольшой плагин и если да то на какое событие его лучше вешать?
dokreg
09 декабря 2020, 15:54
modx.pro
349
0

Комментарии: 7

Артур
10 декабря 2020, 17:48
0
Опишите задачу, а не ваше решение, если хотите развернутый ответ. А так удалить значение TV можно просто его затерев
$resource->setTVValue('tvname', '');
$resource->save();
    dokreg
    10 декабря 2020, 18:47
    0
    Нет, этот код затерет же все элементы MIGX, просто у меня есть migx-тв в котором находятся отзывы, одним из полей является поле с датой, например я выкладываю сразу 20 отзывов и заполняю дату их удаления, и они в запланированную дату удаляются из админки, соответственно и из фронтенда.
      Артур
      10 декабря 2020, 19:06
      +1
      Если охота прям заморочиться, тогда
      $tv = json_decode($resource->getTVValue('migxtvname'),1);
      $tv['date'] = '';
      $resource->setTVValue('migxtvname', json_encode($tv, JSON_UNESCAPED_UNICODE));
      $resource->save();
      Я написал на один элемент, вообще надо конечно в цикле, т.е. $tv это массив и по нему надо пройти в цикле и сравнивать даты и дальше по вашей логике, НО я бы просто сделал отдельный раздел с ресурсами и и использовал возможность автоматического снятия с публикации, на вкладке Настройки любого ресурса есть поле Дата отмены публикации.
        dokreg
        10 декабря 2020, 19:24
        0
        Спасибо, буду пробовать, отдельный раздел просто будет неудобен, поэтому буду пробовать удалять из migx-массива
          Артур
          10 декабря 2020, 19:39
          0
          А чем именно он будет неудобен? Место в админке будет занимать)))
            dokreg
            19 декабря 2020, 20:49
            0
            Тут дело не в этом, у меня главная страница состоит из секций, и например нужно выводить несколько блоков, наверное логичнее и правильнее их делать через доп.поля и migx, а ресурс для меня в первую очередь ассоциируется как страница сайта или это не так)?
              Артур
              19 декабря 2020, 23:50
              0
              Ресурс это, как верно подмечают переводчики, источник, а уж источником чего будет тот или иной документ решать вам. Если вам нужно одно поле, делайте одно поле, если нужен небольшой набор данных 2-4 поля, которые не требуют пагинации, фильтрации, сортировки используйте migx, а если всё сложнее используйте документ со всеми его полями. Это конечно только мое мнение.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    7