Странное поведение кастомных полей в админке
Настроил в админке таблицу записей кастомного типа и добавил фильтр по одному из полей. В записи этого типа поля добавлены через ACF.
При открытии таблицы или при сбросе фильтра все поля отображаются нормально, то есть в том виде, котором они заданы в ACF. Например, есть поле типа "Дата" и оно отображается так, как задано в настройках поля (для конкретики отображается так: "12.07.2001").
Но, стоит применить к таблице фильтр, как значения в полях отображаются так, как хранятся в базе (для конкретики, стало отображаться так: "20010712"). Это я специально полез в базу и посмотрел.
Значение полей получаю через функцию get_field.
В своей теме создал кастомный тип записей "accreditations". Для него через плагин ACF добавил несколько мета-полей.
С помощью фильтра manage_posts_columns() для этого типа записей назначил колонки в таблице редактирования записей в админке.
С помощью хука manage_accreditations_posts_custom_column() вывожу значения в ячейках таблицы редактирования записей. Для полей, созданных в ACF использую функцию the_field().
С помощью restrict_manage_posts() добавил фильтр по мета-полю. Обработчик действия фильтра задал через pre_get_posts().
В общем сделал всё как описано на данном сайте, но при применении фильтра происходит странный эффект для мета-полей, сделанных через ACF.
Если надо, то приведу свой, но, есть ли смысл?
Для полей, созданных в ACF использую функцию the_field().
а вы используйте get_post_meta
А потом переводите результат в нужный вид.
То есть, немного НЕудобно, зато научитесь работать с сырыми данными - очень полезно, в дальнейшем пригодится.
Спасибо за совет.
Я уже думал об этом пути - использовать get_post_meta.
Применял the_field, чтобы использовать формат отображения данных, заданный в настройках ACF поля, а не задавать его в коде.
Я так понимаю, что описанная проблема - особенность плагина ACF. Буду в нём копать.
Спасибо еще раз ответы.
что за фильтр, и какая таблица?
это все речь о фронтенде? ваш код выводит таблицу и фильтр-логику?