it-swarm-ru.tech

Можно ли определить тип данных пользовательского поля?

Я добавляю новый "Пользовательский тип сообщения" под названием "Семинар". Я определяю три пользовательских поля

  1. Место нахождения
  2. Начальное время
  3. Время окончания

StartTime и EndTime собираются хранить даты (сюрприз, сюрприз). Мне интересно, есть ли способ сказать WordPress обрабатывать эти даты, чтобы я мог сортировать их и прочее.

Я очень новичок в WP, так что простите, если это глупый вопрос.

3
jessegavin

ОВЗ.

В основном нет. Но вы можете заказать по meta_value в WP_Query, так что вы можете сортировать. Я не уверен, в каком формате вы сохраняете даты, но это должно быть чем-то, что MySQL может упорядочить, простая метка времени Unix подойдет, вы бы сделали:

$query = new WP_Query( 'post_type=seminar&meta_key=start_time&meta_value=' . time() .  '&meta_compare=>' );

Получил бы все семинары с датой начала после "сейчас"

2
Joe Hoyle

Значение настраиваемого поля сохраняется как есть - и я думаю, что вы можете использовать ответ Джо, чтобы получить сообщения, однако для "сортировки" по времени начала вам может понадобиться что-то вроде этого:

$posts = query_posts($query_string. '&orderby=meta_value&meta_key=start_time&order=DESC' ); 

Есть плагин под названием more fields, который, я думаю, позволит вам сделать это без написания кода. Вы можете добавить новое поле ввода только в свой тип сообщения, а затем выбрать дату в разделе дополнительных параметров.

1
rfair404