Пользовательский фильтр времени wp_query на meta_value
Вопрос
Моя цель - показывать посты только с часами работы после рабочего дня, в течение определенного дня. Итак, например, у меня есть (пользовательский) пост с следующей meta_key и meta_value:
meta_key = 'понедельник, meta_value = '14: 00 - 22:00'
Рабочие часы исправлены: '08: 00 - 18:00 '
Я хотел бы добавить фильтр в свой пользовательский wp_query. Только я застрял в определении функции.
Мой логический ввод (определенно не правильно и завершен) для функции:
$from_std = strtotime("08:00");
$to_std = strtotime("18:00");
$open = $my_meta['monday'];
list($from, $hyphen, $to) = explode(' ', $open);
$from_bus = strtotime($from);
$to_bus = strtotime($to);
if ($from_bus < $from_std) { $show = 1; } // before standard starting time - so SHOW
else {if ($to_bus > $to_std) { $show = 1; }} // after standard closing time - so SHOW
if (empty($from_bus)) { show = 0; } // $var is either 0, empty, or not set at all - so do NOT show
Помощь на функции очень ценится.
Решение
Вы можете использовать wp Query_posts для фильтрации о ваших пользовательских значениях; EAN Пример:
query_posts('meta_key=my_type&meta_compare=<=&my_value=20&orderby=my_value');
if (have_posts()) :
while ( have_posts() ) : the_post();
Но я думаю, что вы должны заменить временные значения для читаемой строки, возможно, Woth Strotime, что у вас есть тот же формат для запроса.