Filtre à temps personnalisé wp_query sur meta_value
Question
Mon but est de montrer que les messages avec des heures d'ouverture après les heures d'ouverture, pour un jour donné. Ainsi, par exemple J'ai un poste (personnalisé) avec meta_key suivant et meta_value:
meta_key = 'lundi, meta_value = '14: 00 - 22:00
Les heures d'ouverture sont fixés: 08: 00 - 18:00'
Je voudrais ajouter un filtre à mon wp_query personnalisé. Seulement, je reçois coincé à la définition d'une fonction.
Mon entrée logique (certainement pas correcte et complète) pour la fonction:
$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
Aide sur une fonction est très apprécié.
La solution
Vous pouvez utiliser le WP query_posts pour filtrer vos valeurs personnalisées; exemple ean:
query_posts('meta_key=my_type&meta_compare=<=&my_value=20&orderby=my_value');
if (have_posts()) :
while ( have_posts() ) : the_post();
Mais, je pense que vous devez remplacer les temps des valeurs de chaîne lisible, strotime woth peut-être, que vous avez le même format pour la requête.