Можно ли определить тип данных настраиваемого поля?
Я добавляю новый "Пользовательский тип сообщения" под названием "Семинар". Я определяю три настраиваемых поля
- Местоположение
- Время начала
- Время окончания
Время начала и время окончания будут хранить даты (сюрприз, сюрприз). Мне интересно, есть ли какой-нибудь способ сказать WordPress, чтобы он относился к ним как к датам, чтобы я мог сортировать по ним и прочее.
Я очень новичок в WP, так что простите меня, если это глупый вопрос.
2 answers
Hia.
В принципе, нет. Но вы можете заказать по мета_значению в WP_Query, чтобы вы могли сортировать. Я не уверен, в каком формате вы сохраняете даты, но это должно быть что-то, что MySQL может заказать, простая временная метка Unix подойдет, вы бы сделали:
$query = new WP_Query( 'post_type=seminar&meta_key=start_time&meta_value=' . time() . '&meta_compare=>' );
Получил бы все семинары с датой начала после "сейчас"
Значение настраиваемого поля сохраняется как есть - и я думаю, что вы можете использовать ответ Джо для получения сообщений, однако для "сортировки" с использованием времени начала вам может потребоваться использовать что-то вроде этого:
$posts = query_posts($query_string. '&orderby=meta_value&meta_key=start_time&order=DESC' );
Существует плагин под названием more fields, который, я думаю, позволит вам сделать это без написания кода. Вы можете добавить новое поле ввода только к своему пользовательскому типу записи, а затем выбрать дату в разделе Дополнительные параметры.